https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98384
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> --- printf("%L.1000f\n", 1.0L); The length modifier needs to come after precision, not before it, so you should be using printf("%.1000Lf\n", 1.0L); instead. But the test nor libstdc++ itself doesn't do that, does it?