diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-08-04 19:55:31 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-08-04 19:55:31 +0000 |
commit | 10816a22348fc473e784413a50b244c8a8e15de2 (patch) | |
tree | 0b909457c993dd96ebfd9fdf0ee4b221030ae739 /gcc/c-parse.in | |
parent | b8484be836172d1d1d26f2aeaa79f2b6df995c4d (diff) | |
download | gcc-10816a22348fc473e784413a50b244c8a8e15de2.tar.gz |
* c-lex.c: Sync with C++ frontend.
(linemode): New variable.
(parse_float): imag, conversion_errno, and type are output only.
(yylex): Adjust. Move initial '.' case into main switch.
Use linemode.
(handle_generic_pragma): Just deal with tokens.
(readescape): Use ISXDIGIT and ISGRAPH.
* c-parse.in: Add END_OF_LINE token.
* c-lex.c (lang_init): Generalize.
(nextchar): Remove. Replace uses with UNGETC.
(skip_white_space): Handle linemode here. Optimize for cpplib.
(skip_white_space_on_line): Remove.
(extend_token_buffer_to): New fn.
(extend_token_buffer): Use it.
(read_line_number, check_newline): Just deal with tokens.
(token_getch, token_put_back): New fns.
(yylex): Use them. More cpplib optimizations. Simplify.
* c-lex.c (init_parse): Set cpp_token to CPP_DIRECTIVE.
(consume_string): Make this smart about USE_CPPLIB.
(check_newline): Rewrite to be intelligent about USE_CPPLIB.
(yylex): Rewrite to be intelligent about USE_CPPLIB.
Also, clean up cases where we redundantly set token_buffer[0].
(read_line_number): New fn.
(ignore_escape_flag): New variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28507 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-parse.in')
-rw-r--r-- | gcc/c-parse.in | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/c-parse.in b/gcc/c-parse.in index 45e93758f84..dc8df7827d8 100644 --- a/gcc/c-parse.in +++ b/gcc/c-parse.in @@ -138,6 +138,9 @@ end ifc %token ATTRIBUTE EXTENSION LABEL %token REALPART IMAGPART VA_ARG +/* Used in c-lex.c for parsing pragmas. */ +%token END_OF_LINE + /* Add precedence rules to solve dangling else s/r conflict */ %nonassoc IF %nonassoc ELSE |