[preprocessor/91639] #includes at EOF
authorNathan Sidwell <nathan@acm.org>
Thu, 5 Sep 2019 11:23:48 +0000 (11:23 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Thu, 5 Sep 2019 11:23:48 +0000 (11:23 +0000)
commit056f95ec951178a110b57e58a2ee434907de2e38
treea8e6ad6be4a477e263294cb8c34feef8df71253e
parente7414688f16c4c9db2dacbc31da683887b4ba1bd
[preprocessor/91639] #includes at EOF

https://gcc.gnu.org/ml/gcc-patches/2019-09/msg00280.html
libcpp/
PR preprocessor/91639
* directives.c (do_include_common): Tell lexer we're a #include.
* files.c (_cpp_stack_file): Lexer will have always incremented.
* internal.h (struct cpp_context): Extend in_directive's
semantics.
* lex.c (_cpp_lex_direct): Increment line for final \n when lexing
for an ISO #include.
* line-map.c (linemap_line_start): Remember if we overflowed.

gcc/testsuite/
PR preprocessor/91639
* c-c++-common/cpp/pr91639.c: New.
* c-c++-common/cpp/pr91639-one.h: New.
* c-c++-common/cpp/pr91639-two.h: New.

From-SVN: r275402
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/cpp/pr91639-one.h [new file with mode: 0644]
gcc/testsuite/c-c++-common/cpp/pr91639-two.h [new file with mode: 0644]
gcc/testsuite/c-c++-common/cpp/pr91639.c [new file with mode: 0644]
libcpp/ChangeLog
libcpp/directives.c
libcpp/files.c
libcpp/internal.h
libcpp/lex.c
libcpp/line-map.c