https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81745
--- Comment #6 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> --- (In reply to Andrew Pinski from comment #5) > Also see http://www.opengroup.org/austin/aardvark/latest/xcubug2.txt > ERN 76 This is not about the missing newline at the end of a file. Moreover, GCC doesn't seem to be consistent: $ printf 'int main(void) { return 0; } \\' | gcc -xc -std=c99 - && echo OK <stdin>:1:30: error: stray ‘\’ in program $ printf 'int main(void) { return 0; } \\\n' | gcc -xc -std=c99 - && echo OK <stdin>:1:30: warning: backslash-newline at end of file OK $