Open FG-TUM opened 1 year ago
Describe the bug FCC 4.8.1 in Clang mode doesn't know std::transform_reduce() which is part of C++17. Seems to be missing in its std lib.
FCC 4.8.1
std::transform_reduce()
C++17
To Reproduce Compile md-flex with FCC.
Compiler Version
FCC (FCC) 4.8.1 20220831 clang: Fujitsu C/C++ Compiler 4.8.1 (Jul 27 2022 13:00:20) (based on LLVM 7.1.0) Target: aarch64-unknown-linux-gnu
Workaround Currently std::transform_reduce() is only used in ArrayUtils::balanceVectors(). There one can simply replace the call with:
ArrayUtils::balanceVectors()
// const size_t numElem = std::transform_reduce(vecvec.begin(), vecvec.end(), 0, std::plus<>(), // [&](auto &vec) { return innerContainerToVec(vec).size(); }); const size_t numElem = [&]() { size_t n = 0; for( auto &vec : vecvec) { n += innerContainerToVec(vec).size(); } return n; }();
@dmartin13 if you test something on the ARM cluster this will affect you.
Describe the bug
FCC 4.8.1
in Clang mode doesn't knowstd::transform_reduce()
which is part ofC++17
. Seems to be missing in its std lib.To Reproduce Compile md-flex with FCC.
Compiler Version
Workaround Currently
std::transform_reduce()
is only used inArrayUtils::balanceVectors()
. There one can simply replace the call with: