aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpplib.h
diff options
context:
space:
mode:
authorNeil Booth <neilb@earthling.net>2000-12-07 23:17:56 +0000
committerNeil Booth <neil@gcc.gnu.org>2000-12-07 23:17:56 +0000
commit642ce434645564d7f02c4acefe90b74a0eca5d09 (patch)
tree7d2a48752253e693dd73859fe4a6329bee0871f1 /gcc/cpplib.h
parent02428c5d54c4280b35d33dfbed45c035ea9b4a06 (diff)
downloadgcc-642ce434645564d7f02c4acefe90b74a0eca5d09.zip
gcc-642ce434645564d7f02c4acefe90b74a0eca5d09.tar.gz
gcc-642ce434645564d7f02c4acefe90b74a0eca5d09.tar.bz2
cppfiles.c (struct include_file): Move from cpphash.h.
* cppfiles.c (struct include_file): Move from cpphash.h. (_cpp_never_reread): New function. (open_file, read_include_file): Use it. (stack_include_file): Set the buffer's sysp according to the path in which the file was found. (find_include_file): Don't set sysp. (cpp_make_system_header, actual_directory): Update. (_cpp_execute_include): Do #include_next lookup handling here, not in cpplib.c. Use _cpp_never_reread. * cpphash.h (struct_include_file): Remove. (struct cpp_buffer): New member sysp. (CPP_IN_SYSTEM_HEADER, _cpp_execute_include): Update. (_cpp_never_reread): New. * cpplib.c (read_line_number): Rename read_flag. Rework slightly. (end_directive): Clear line_extension flag. (_cpp_handle_directive): Set line_extension flag for #number. (do_include_next): Handle path lookup in _cpp_execute_include. (do_line): Cleanup to use read_flag. Don't allow flags in #line. (_cpp_do_file_change): Update. (do_pragma_once): Use cpp_never_reread. Clean up. * cpplib.h (struct lexer_state): New member line_extension. From-SVN: r38120
Diffstat (limited to 'gcc/cpplib.h')
-rw-r--r--gcc/cpplib.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index 325eb0c..e14cbd4 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -455,6 +455,9 @@ struct lexer_state
/* Nonzero when parsing arguments to a function-like macro. */
unsigned char parsing_args;
+
+ /* Nonzero when in a # NUMBER directive. */
+ unsigned char line_extension;
};
/* Special nodes - identifiers with predefined significance. */