X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/12e3584054c16ab255672c07af0ffc7bb220e8bc..9b33de72cd2469bedac2b5f0a48a8782571ea9db:/src/scan-gram.l diff --git a/src/scan-gram.l b/src/scan-gram.l index 5e595cf6..fb22e588 100644 --- a/src/scan-gram.l +++ b/src/scan-gram.l @@ -1,6 +1,7 @@ /* Bison Grammar Scanner -*- C -*- - Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, + Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -58,7 +59,7 @@ static size_t no_cr_read (FILE *, char *, size_t); #define YY_INPUT(buf, result, size) ((result) = no_cr_read (yyin, buf, size)) /* A string representing the most recently saved token. */ -char *last_string; +static char *last_string; void gram_scanner_last_string_free (void) @@ -158,7 +159,6 @@ splice (\\[ \f\t\v]*\n)* { "%binary" return PERCENT_NONASSOC; "%code" return PERCENT_CODE; - "%code-top" return PERCENT_CODE_TOP; "%debug" return PERCENT_DEBUG; "%default"[-_]"prec" return PERCENT_DEFAULT_PREC; "%define" return PERCENT_DEFINE; @@ -172,6 +172,7 @@ splice (\\[ \f\t\v]*\n)* "%fixed"[-_]"output"[-_]"files" return PERCENT_YACC; "%initial-action" return PERCENT_INITIAL_ACTION; "%glr-parser" return PERCENT_GLR_PARSER; + "%language" return PERCENT_LANGUAGE; "%left" return PERCENT_LEFT; "%lex-param" return PERCENT_LEX_PARAM; "%locations" return PERCENT_LOCATIONS; @@ -186,11 +187,10 @@ splice (\\[ \f\t\v]*\n)* "%parse-param" return PERCENT_PARSE_PARAM; "%prec" return PERCENT_PREC; "%printer" return PERCENT_PRINTER; - "%provides" return PERCENT_PROVIDES; "%pure"[-_]"parser" return PERCENT_PURE_PARSER; - "%push"[-_]"parser" return PERCENT_PUSH_PARSER; + "%push-parser" return PERCENT_PUSH_PARSER; + "%push-pull-parser" return PERCENT_PUSH_PULL_PARSER; "%require" return PERCENT_REQUIRE; - "%requires" return PERCENT_REQUIRES; "%right" return PERCENT_RIGHT; "%skeleton" return PERCENT_SKELETON; "%start" return PERCENT_START; @@ -210,7 +210,7 @@ splice (\\[ \f\t\v]*\n)* "|" return PIPE; ";" return SEMICOLON; "<*>" return TYPE_TAG_ANY; - "" return TYPE_TAG_NONE; + "<>" return TYPE_TAG_NONE; {id} { val->uniqstr = uniqstr_new (yytext); @@ -523,7 +523,7 @@ splice (\\[ \f\t\v]*\n)* { STRING_FINISH; loc->start = code_start; - val->chars = last_string; + val->code = last_string; BEGIN INITIAL; return BRACED_CODE; } @@ -537,7 +537,7 @@ splice (\\[ \f\t\v]*\n)* unexpected_eof (code_start, "}"); STRING_FINISH; loc->start = code_start; - val->chars = last_string; + val->code = last_string; BEGIN INITIAL; return BRACED_CODE; } @@ -800,5 +800,5 @@ gram_scanner_free (void) { obstack_free (&obstack_for_string, 0); /* Reclaim Flex's buffers. */ - yy_delete_buffer (YY_CURRENT_BUFFER); + yylex_destroy (); }