------- Comment #17 from manu at gcc dot gnu dot org 2008-01-15 18:51 ------- This will be fixed yesterday if printf("%s\n", s) were equivalent to puts(s) in glibc.
Also there is a way to disable the optimization: "-fno-builtin-printf". People that don't rely on undefined behaviour don't deserve to be punished with suboptimal code. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25609