https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82346
--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> --- In gcc-6 and later the condition is different: #if __cplusplus >= 201103L ... #if _GLIBCXX_USE_C99_STDIO So the <math.h> changes in glibc won't affect std::to_string() (but you will be missing functionality in <cmath> instead). This is a bug in a package you got from Ubuntu, please talk to your vendor.