Skip to content

RichUtils - Force return type from Vc gather operations

Attempts to address errors such as those seen in https://lhcb-nightlies.cern.ch/logs/build/nightly/lhcb-lcg-dev4/815/x86_64-centos7-gcc8-opt/Rec/ when building against an update Vc (1.4.1).

LHCB/LHCB_HEAD/InstallArea/x86_64-centos7-gcc8-opt/include/RichUtils/LookupTableInterpolator.h:159:18: error: no match for 'operator*' (operand types are 'const Vc_1::Common::SubscriptOperation<const float, Vc_1::Vector<int, Vc_1::simd_abi::fixed_size<8> >, std::ratio<2, 1>, true>' and 'const SIMDFP' {aka 'const Vc_1::Vector<float, Vc_1::VectorAbi::Avx>'})	

       return ( m * x ) + c;
              ~~~~^~~~~

Not clear if the failure is due to an API change, or a bug in Vc, but hopefully forcing the type returned from the gather will cure it. Compiles fine locally with Vc 1.3.x as in LCG95, this MR will test it in the lhcb-lcg-dev4 slot.

Edited by Marco Cattaneo

Merge request reports