This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
egcs/gcc ChangeLog cppexp.c cpphash.h cpplex.c ...
- To: gcc-cvs at gcc dot gnu dot org
- Subject: egcs/gcc ChangeLog cppexp.c cpphash.h cpplex.c ...
- From: neil at gcc dot gnu dot org
- Date: 12 Nov 2000 11:46:21 -0000
CVSROOT: /cvs/gcc
Module name: egcs
Changes by: neil@gcc.gnu.org 2000-11-12 03:46:21
Modified files:
gcc : ChangeLog cppexp.c cpphash.h cpplex.c cpplib.c
cpplib.h cppmacro.c
Log message:
* cppexp.c: Don't worry about pfile->skipping.
* cpplib.c (struct if_stack): Make was_skipping unsigned char.
(cpp_handle_directive): Save pfile->skipping in struct cpp_buffer
for handled directives.
(skip_rest_of_line): Use _cpp_lex_token after popping contexts
and releasing lookaheads.
(do_ifdef, do_ifndef, do_if): Use buffer->was_skipping.
(do_else, do_elif, push_conditional): Update logic.
(do_endif): Set buffer->was_skipping rather than pfile->skipping.
(unwind_if_stack): Inline into cpp_pop_buffer.
(cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive.
* cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle
multiple-include optimisation.
* cpplib.h (struct cpp_buffer): New member was_skipping.
* cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This
works because skipping == 0 in directives.
(_cpp_release_lookahead): Renamed from release_lookahead.
(cpp_get_token): No need to check skipping as _cpp_get_token does
this for us. No need to handle MI optimisation.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.8238&r2=1.8239
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cppexp.c.diff?cvsroot=gcc&r1=1.77&r2=1.78
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cpphash.h.diff?cvsroot=gcc&r1=1.78&r2=1.79
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cpplex.c.diff?cvsroot=gcc&r1=1.116&r2=1.117
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cpplib.c.diff?cvsroot=gcc&r1=1.216&r2=1.217
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cpplib.h.diff?cvsroot=gcc&r1=1.133&r2=1.134
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/cppmacro.c.diff?cvsroot=gcc&r1=1.22&r2=1.23