summaryrefslogtreecommitdiff
path: root/gcc/c-parse.in
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1999-08-04 19:55:31 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1999-08-04 19:55:31 +0000
commit10816a22348fc473e784413a50b244c8a8e15de2 (patch)
tree0b909457c993dd96ebfd9fdf0ee4b221030ae739 /gcc/c-parse.in
parentb8484be836172d1d1d26f2aeaa79f2b6df995c4d (diff)
downloadgcc-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.in3
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