Mercurial > ~dholland > hg > tradcpp > index.cgi
changeset 186:9637bf434f8e
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.
author | David A. Holland |
---|---|
date | Fri, 12 Jun 2015 04:13:41 -0400 |
parents | 16b4451e34b8 |
children | 8c7e508da6cc |
files | CHANGES files.c |
diffstat | 2 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- 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 <stdbool.h> existing, as (predictably) it doesn't work on Solaris. - Similarly, don't rely on C11 anonymous unions as the Solaris
--- 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(); }