-
- Downloads
cppexp.c: Don't worry about pfile->skipping.
* 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. From-SVN: r37404
Showing
- gcc/ChangeLog 22 additions, 0 deletionsgcc/ChangeLog
- gcc/cppexp.c 0 additions, 5 deletionsgcc/cppexp.c
- gcc/cpphash.h 1 addition, 0 deletionsgcc/cpphash.h
- gcc/cpplex.c 7 additions, 0 deletionsgcc/cpplex.c
- gcc/cpplib.c 76 additions, 86 deletionsgcc/cpplib.c
- gcc/cpplib.h 3 additions, 0 deletionsgcc/cpplib.h
- gcc/cppmacro.c 9 additions, 31 deletionsgcc/cppmacro.c
Loading
Please register or sign in to comment