# HG changeset patch # User David A. Holland # Date 1434096821 14400 # Node ID 9637bf434f8e8cb3e2474cd2365cb8eae79e9a5c # Parent 16b4451e34b8aad10e9eaaf294dacaaeea0c4043 Don't report unclosed comments as "no newline at end of file". If we get EOF in the "middle" of a line but there's a newline at the end of the buffer we've got, it's because we're in the middle of a comment. So, say so. diff -r 16b4451e34b8 -r 9637bf434f8e CHANGES --- a/CHANGES Fri Jun 12 03:59:36 2015 -0400 +++ b/CHANGES Fri Jun 12 04:13:41 2015 -0400 @@ -1,4 +1,5 @@ pending + - Don't report unclosed comments as "No newline at end of file". - Don't rely on existing, as (predictably) it doesn't work on Solaris. - Similarly, don't rely on C11 anonymous unions as the Solaris diff -r 16b4451e34b8 -r 9637bf434f8e files.c --- a/files.c Fri Jun 12 03:59:36 2015 -0400 +++ b/files.c Fri Jun 12 04:13:41 2015 -0400 @@ -226,7 +226,12 @@ ateof = true; ptmp = places.current; ptmp.column += bufend - linestart; - complain(&ptmp, "No newline at end of file"); + if (buf[bufend - 1] == '\n') { + complain(&ptmp, "Unclosed comment"); + } else { + complain(&ptmp, + "No newline at end of file"); + } if (mode.werror) { complain_fail(); }