aboutsummaryrefslogtreecommitdiff
path: root/gcc/cppmacro.c
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2002-04-22 17:48:02 +0000
committerNeil Booth <neil@gcc.gnu.org>2002-04-22 17:48:02 +0000
commitaf0d16cdec59d270a017f82ac209c44dfa748ea3 (patch)
tree0fc130b06a7d9e6cdc2502aaa5f671bb726c8773 /gcc/cppmacro.c
parent74b273d68f6a479fa9a563ff87ef3e9561408c2c (diff)
downloadgcc-af0d16cdec59d270a017f82ac209c44dfa748ea3.zip
gcc-af0d16cdec59d270a017f82ac209c44dfa748ea3.tar.gz
gcc-af0d16cdec59d270a017f82ac209c44dfa748ea3.tar.bz2
cppfiles.c (_cpp_pop_file_buffer): Return void.
* cppfiles.c (_cpp_pop_file_buffer): Return void. Move file change and include code to _cpp_pop_buffer. * cpphash.h (struct pending_option): Predeclare. (struct cpp_reader): New member next_include_file. (_cpp_pop_file_buffer): Update. (_cpp_push_next_buffer): Update, rename. * cppinit.c (cpp_destroy): Free include chain and pending here. (cpp_finish_options): Simplify. (_cpp_push_next_buffer): Rename and clean up. * cpplib.c (cpp_pop_buffer): Move code from _cpp_pop_file_buffer. Clarify. * cppmacro.c (cpp_scan_nooutput): Set return_at_eof here. From-SVN: r52621
Diffstat (limited to 'gcc/cppmacro.c')
-rw-r--r--gcc/cppmacro.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/cppmacro.c b/gcc/cppmacro.c
index aa2e58b..876506b 100644
--- a/gcc/cppmacro.c
+++ b/gcc/cppmacro.c
@@ -1074,12 +1074,16 @@ cpp_sys_macro_p (pfile)
return node && node->value.macro && node->value.macro->syshdr;
}
-/* Read each token in, until EOF. Directives are transparently
- processed. */
+/* Read each token in, until end of the current file. Directives are
+ transparently processed. */
void
cpp_scan_nooutput (pfile)
cpp_reader *pfile;
{
+ /* Request a CPP_EOF token at the end of this file, rather than
+ transparently continuing with the including file. */
+ pfile->buffer->return_at_eof = true;
+
while (cpp_get_token (pfile)->type != CPP_EOF)
;
}