]> gcc.gnu.org Git - gcc.git/commit - libcpp/lex.c
cppfiles.c (stack_include_file): Check for stacked contexts here.
authorNeil Booth <neilb@earthling.net>
Mon, 30 Oct 2000 22:29:00 +0000 (22:29 +0000)
committerNeil Booth <neil@gcc.gnu.org>
Mon, 30 Oct 2000 22:29:00 +0000 (22:29 +0000)
commita5c3cccda43ddeaa0e90df75f74c230dea0ad579
treeaea40a1085df8546a232c08b4db9f87353674441
parentdbdaea4110d5c97ba1addef900516eea7846a2c0
cppfiles.c (stack_include_file): Check for stacked contexts here.

* cppfiles.c (stack_include_file): Check for stacked contexts
here.
* cpphash.h (_cpp_do__Pragma): New prototype.
* cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table.

* cpplex.c (skip_escaped_newlines): Only process trigraphs and
escaped newlines if !(buffer->from_stage3).
(_cpp_lex_token): Warn about missing newlines iff
!buffer->from_stage3.

* cpplib.c (get__Pragma_string, destringize,
_cpp_do__Pragma): New functions.
(run_directive): Set output_line for _Pragma to avoid line
markers in output.  Set from_stage3 and prevent macro expansion
for _Pragma and command-line options.  Check buffer exhaustion.
(cpp_push_buffer): Don't check for stacked macro contexts, as
this is perfectly legitimate for _Pragma.  Move the check to
stack_include_file instead. Set from_stage3 iff buffer is
preprocessed input.

* cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments
unsigned. New boolean from_stage3.
(struct spec_nodes): Add n__Pragma.

* cppmacro.c (enter_macro_context): Flip sense of return value.
(_cpp_get_token): Handle _Pragma operator.

From-SVN: r37147
gcc/ChangeLog
gcc/cppfiles.c
gcc/cpphash.h
gcc/cppinit.c
gcc/cpplex.c
gcc/cpplib.c
gcc/cpplib.h
gcc/cppmacro.c
This page took 1.19246 seconds and 5 git commands to generate.