Make sure to never use ::abs et al.
On my system (and probably others), there are severe differences between abs (no namespace) and std::abs
std::abs(-1) == 1; abs(-1) == 0;
This seemes to be the reason for some free flow test failing with g++5 but passing with g++7.
We should make sure to always use std::abs, std::log, std::pow.
Maybe a hiwi could check the code or, better, we might somehow globally prevent the use of ::abs if that is possible.