X-Git-Url: https://oss.titaniummirror.com/gitweb/?p=nesc.git;a=blobdiff_plain;f=src%2Fc-parse.tab.c;fp=src%2Fc-parse.tab.c;h=a02a40caf31b94bc19dfffb78dc44961ed6bf893;hp=5475b3d13c4ada244c51eb031cad0c8abd209bb0;hb=7b54393e237ed8f23c0c74f0a6cbc8de26c5bf98;hpb=57d4530c4d6814fa25338a00cc65b95938c723b6 diff --git a/src/c-parse.tab.c b/src/c-parse.tab.c index 5475b3d..a02a40c 100644 --- a/src/c-parse.tab.c +++ b/src/c-parse.tab.c @@ -1,24 +1,23 @@ -/* A Bison parser, made by GNU Bison 2.3. */ -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* A Bison parser, made by GNU Bison 2.4.1. */ - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +/* Skeleton implementation for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with this program. If not, see . */ /* As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work @@ -29,7 +28,7 @@ special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. - + This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ @@ -47,7 +46,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.3" +#define YYBISON_VERSION "2.4.1" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -55,175 +54,20 @@ /* Pure parsers. */ #define YYPURE 1 -/* Using locations. */ -#define YYLSP_NEEDED 0 - - +/* Push parsers. */ +#define YYPUSH 0 -/* Tokens. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - /* Put the tokens into the symbol table, so that GDB and other debuggers - know about them. */ - enum yytokentype { - IDENTIFIER = 258, - TYPENAME = 259, - COMPONENTREF = 260, - SCSPEC = 261, - TYPESPEC = 262, - TYPE_QUAL = 263, - FN_QUAL = 264, - CONSTANT = 265, - STRING = 266, - MAGIC_STRING = 267, - ELLIPSIS = 268, - SIZEOF = 269, - ENUM = 270, - STRUCT = 271, - UNION = 272, - IF = 273, - ELSE = 274, - WHILE = 275, - DO = 276, - FOR = 277, - SWITCH = 278, - CASE = 279, - DEFAULT = 280, - BREAK = 281, - CONTINUE = 282, - RETURN = 283, - GOTO = 284, - ASM_KEYWORD = 285, - TYPEOF = 286, - ALIGNOF = 287, - ATTRIBUTE = 288, - EXTENSION = 289, - LABEL = 290, - REALPART = 291, - IMAGPART = 292, - VA_ARG = 293, - OFFSETOF = 294, - ASSIGN = 295, - OROR = 296, - ANDAND = 297, - EQCOMPARE = 298, - ARITHCOMPARE = 299, - RSHIFT = 300, - LSHIFT = 301, - MINUSMINUS = 302, - PLUSPLUS = 303, - POINTSAT = 304, - DISPATCH_C = 305, - DISPATCH_NESC = 306, - DISPATCH_PARM = 307, - DISPATCH_TYPE = 308, - ATOMIC = 309, - USES = 310, - INTERFACE = 311, - COMPONENTS = 312, - PROVIDES = 313, - MODULE = 314, - INCLUDES = 315, - CONFIGURATION = 316, - AS = 317, - TASTNIOP = 318, - IMPLEMENTATION = 319, - CALL = 320, - SIGNAL = 321, - POST = 322, - GENERIC = 323, - NEW = 324, - NX_STRUCT = 325, - NX_UNION = 326, - ABSTRACT = 327, - COMPONENT = 328, - EXTENDS = 329, - TARGET_ATTRIBUTE0 = 330, - TARGET_ATTRIBUTE1 = 331, - TARGET_DEF = 332 - }; -#endif -/* Tokens. */ -#define IDENTIFIER 258 -#define TYPENAME 259 -#define COMPONENTREF 260 -#define SCSPEC 261 -#define TYPESPEC 262 -#define TYPE_QUAL 263 -#define FN_QUAL 264 -#define CONSTANT 265 -#define STRING 266 -#define MAGIC_STRING 267 -#define ELLIPSIS 268 -#define SIZEOF 269 -#define ENUM 270 -#define STRUCT 271 -#define UNION 272 -#define IF 273 -#define ELSE 274 -#define WHILE 275 -#define DO 276 -#define FOR 277 -#define SWITCH 278 -#define CASE 279 -#define DEFAULT 280 -#define BREAK 281 -#define CONTINUE 282 -#define RETURN 283 -#define GOTO 284 -#define ASM_KEYWORD 285 -#define TYPEOF 286 -#define ALIGNOF 287 -#define ATTRIBUTE 288 -#define EXTENSION 289 -#define LABEL 290 -#define REALPART 291 -#define IMAGPART 292 -#define VA_ARG 293 -#define OFFSETOF 294 -#define ASSIGN 295 -#define OROR 296 -#define ANDAND 297 -#define EQCOMPARE 298 -#define ARITHCOMPARE 299 -#define RSHIFT 300 -#define LSHIFT 301 -#define MINUSMINUS 302 -#define PLUSPLUS 303 -#define POINTSAT 304 -#define DISPATCH_C 305 -#define DISPATCH_NESC 306 -#define DISPATCH_PARM 307 -#define DISPATCH_TYPE 308 -#define ATOMIC 309 -#define USES 310 -#define INTERFACE 311 -#define COMPONENTS 312 -#define PROVIDES 313 -#define MODULE 314 -#define INCLUDES 315 -#define CONFIGURATION 316 -#define AS 317 -#define TASTNIOP 318 -#define IMPLEMENTATION 319 -#define CALL 320 -#define SIGNAL 321 -#define POST 322 -#define GENERIC 323 -#define NEW 324 -#define NX_STRUCT 325 -#define NX_UNION 326 -#define ABSTRACT 327 -#define COMPONENT 328 -#define EXTENDS 329 -#define TARGET_ATTRIBUTE0 330 -#define TARGET_ATTRIBUTE1 331 -#define TARGET_DEF 332 +/* Pull parsers. */ +#define YYPULL 1 +/* Using locations. */ +#define YYLSP_NEEDED 0 /* Copy the first part of user declarations. */ + +/* Line 189 of yacc.c */ #line 33 "c-parse.y" #include @@ -260,6 +104,8 @@ void yyerror(); /* Cause the `yydebug' variable to be defined. */ #define YYDEBUG 1 + +/* Line 189 of yacc.c */ #line 248 "c-parse.y" /* Region in which to allocate parse structures. Idea: the AST user can set @@ -475,6 +321,9 @@ statement make_error_stmt(void) void yyprint(); +/* Line 189 of yacc.c */ +#line 326 "c-parse.tab.c" + /* Enabling traces. */ #ifndef YYDEBUG # define YYDEBUG 0 @@ -493,20 +342,105 @@ void yyprint(); # define YYTOKEN_TABLE 0 #endif + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + IDENTIFIER = 258, + TYPENAME = 259, + COMPONENTREF = 260, + SCSPEC = 261, + TYPESPEC = 262, + TYPE_QUAL = 263, + FN_QUAL = 264, + CONSTANT = 265, + STRING = 266, + MAGIC_STRING = 267, + ELLIPSIS = 268, + SIZEOF = 269, + ENUM = 270, + STRUCT = 271, + UNION = 272, + IF = 273, + ELSE = 274, + WHILE = 275, + DO = 276, + FOR = 277, + SWITCH = 278, + CASE = 279, + DEFAULT = 280, + BREAK = 281, + CONTINUE = 282, + RETURN = 283, + GOTO = 284, + ASM_KEYWORD = 285, + TYPEOF = 286, + ALIGNOF = 287, + ATTRIBUTE = 288, + EXTENSION = 289, + LABEL = 290, + REALPART = 291, + IMAGPART = 292, + VA_ARG = 293, + OFFSETOF = 294, + ASSIGN = 295, + OROR = 296, + ANDAND = 297, + EQCOMPARE = 298, + ARITHCOMPARE = 299, + RSHIFT = 300, + LSHIFT = 301, + MINUSMINUS = 302, + PLUSPLUS = 303, + POINTSAT = 304, + DISPATCH_C = 305, + DISPATCH_NESC = 306, + DISPATCH_PARM = 307, + DISPATCH_TYPE = 308, + ATOMIC = 309, + USES = 310, + INTERFACE = 311, + COMPONENTS = 312, + PROVIDES = 313, + MODULE = 314, + INCLUDES = 315, + CONFIGURATION = 316, + AS = 317, + TASTNIOP = 318, + IMPLEMENTATION = 319, + CALL = 320, + SIGNAL = 321, + POST = 322, + GENERIC = 323, + NEW = 324, + NX_STRUCT = 325, + NX_UNION = 326, + ABSTRACT = 327, + COMPONENT = 328, + EXTENDS = 329, + TARGET_ATTRIBUTE0 = 330, + TARGET_ATTRIBUTE1 = 331, + TARGET_DEF = 332 + }; +#endif + + + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef int YYSTYPE; + # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 #endif - /* Copy the second part of user declarations. */ -/* Line 216 of yacc.c. */ -#line 510 "c-parse.tab.c" +/* Line 264 of yacc.c */ +#line 444 "c-parse.tab.c" #ifdef short # undef short @@ -581,14 +515,14 @@ typedef short int yytype_int16; #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) static int -YYID (int i) +YYID (int yyi) #else static int -YYID (i) - int i; +YYID (yyi) + int yyi; #endif { - return i; + return yyi; } #endif @@ -669,9 +603,9 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */ /* A type that is properly aligned for any stack member. */ union yyalloc { - yytype_int16 yyss; - YYSTYPE yyvs; - }; + yytype_int16 yyss_alloc; + YYSTYPE yyvs_alloc; +}; /* The size of the maximum gap between one aligned stack and the next. */ # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) @@ -705,12 +639,12 @@ union yyalloc elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack. */ -# define YYSTACK_RELOCATE(Stack) \ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ do \ { \ YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ @@ -1138,26 +1072,26 @@ static const char *const yytname[] = "SIGNAL", "POST", "GENERIC", "NEW", "NX_STRUCT", "NX_UNION", "ABSTRACT", "COMPONENT", "EXTENDS", "TARGET_ATTRIBUTE0", "TARGET_ATTRIBUTE1", "TARGET_DEF", "','", "'}'", "']'", "')'", "'@'", "$accept", "dispatch", - "ncheader", "@1", "includes_list", "includes", "include_list", - "interface", "@2", "@3", "interface_parms", "interface_parm_list", - "interface_parm", "type_parm", "datadef_list", "parameters", "@4", - "parameters1", "component", "module", "@5", "@6", "configuration", "@7", - "@8", "@9", "binary_component", "@10", "@11", "generic", + "ncheader", "$@1", "includes_list", "includes", "include_list", + "interface", "$@2", "$@3", "interface_parms", "interface_parm_list", + "interface_parm", "type_parm", "datadef_list", "parameters", "$@4", + "parameters1", "component", "module", "$@5", "$@6", "configuration", + "$@7", "$@8", "$@9", "binary_component", "$@10", "$@11", "generic", "component_parms", "template_parms", "template_parmlist", "template_parm", "requires_or_provides_list", - "requires_or_provides_list_", "requires_or_provides", "@12", "requires", - "@13", "provides", "@14", "parameterised_interface_list", + "requires_or_provides_list_", "requires_or_provides", "$@12", "requires", + "$@13", "provides", "$@14", "parameterised_interface_list", "parameterised_interfaces", "parameterised_interface", "interface_ref", - "interface_type", "@15", "typelist", "iconfiguration", "@16", "cuses", + "interface_type", "$@15", "typelist", "iconfiguration", "@16", "cuses", "component_list", "component_ref", "component_ref2", "generic_args", "generic_arglist", "generic_arg", "generic_type", "configuration_decls", "configuration_decl", "connection", "endpoint", "parameterised_identifier", "imodule", "@17", "extdefs", "@18", "@19", "extdef", "datadef", "just_datadef", "target_def", "fndef", "fndef2", - "@20", "@21", "identifier", "id_label", "idword", "unop", "expr", + "$@20", "$@21", "identifier", "id_label", "idword", "unop", "expr", "exprlist", "nonnull_exprlist", "nonnull_exprlist_", "callkind", - "unary_expr", "sizeof", "alignof", "cast_expr", "@22", "expr_no_commas", - "@23", "primary", "@24", "fieldlist", "function_call", "string", + "unary_expr", "sizeof", "alignof", "cast_expr", "$@22", "expr_no_commas", + "$@23", "primary", "$@24", "fieldlist", "function_call", "string", "old_style_parm_decls", "datadecls", "datadecl", "decls", "setspecs", "maybe_resetattrs", "decl", "declspecs_nosc_nots_nosa_noea", "declspecs_nosc_nots_nosa_ea", "declspecs_nosc_nots_sa_noea", @@ -1177,27 +1111,27 @@ static const char *const yytname[] = "notype_initdcl", "@26", "maybe_attribute", "eattributes", "nesc_attributes", "attributes", "attribute", "target_attribute", "restricted_expr", "attribute_list", "attrib", "nattrib", "nastart", - "any_word", "init", "@27", "initlist_maybe_comma", "initlist1", - "initelt", "@28", "initval", "@29", "designator_list", "designator", - "nested_function", "@30", "@31", "notype_nested_function", "@32", "@33", - "declarator", "after_type_declarator", "parm_declarator", + "any_word", "init", "$@27", "initlist_maybe_comma", "initlist1", + "initelt", "@28", "initval", "$@29", "designator_list", "designator", + "nested_function", "$@30", "$@31", "notype_nested_function", "$@32", + "$@33", "declarator", "after_type_declarator", "parm_declarator", "notype_declarator", "tag", "structuse", "structdef", "@34", "@35", "@36", "@37", "structkind", "maybecomma", "maybecomma_warn", "component_decl_list", "component_decl_list2", "component_decl", "components", "components_notype", "component_declarator", "component_notype_declarator", "enumlist", "enumerator", "typename", - "@38", "absdcl", "absdcl1", "absdcl1_noea", "absdcl1_ea", + "$@38", "absdcl", "absdcl1", "absdcl1_noea", "absdcl1_ea", "direct_absdcl1", "array_or_fn_declarator", "array_or_absfn_declarator", "fn_declarator", "absfn_declarator", "array_declarator", "stmts", "stmt_or_labels", "xstmts", "errstmt", "pushlevel", "maybe_label_decls", "label_decls", "label_decl", "compstmt_or_error", "compstmt_start", "compstmt", "simple_if", "if_prefix", "do_stmt_start", "@39", - "labeled_stmt", "stmt_or_label", "atomic_stmt", "@40", "stmt_or_error", - "stmt", "@41", "@42", "@43", "@44", "@45", "@46", "@47", "label", + "labeled_stmt", "stmt_or_label", "atomic_stmt", "$@40", "stmt_or_error", + "stmt", "$@41", "$@42", "@43", "$@44", "$@45", "@46", "@47", "label", "maybe_type_qual", "xexpr", "asm_operands", "nonnull_asm_operands", - "asm_operand", "asm_clobbers", "parmlist", "@48", "parmlist_1", "@49", + "asm_operand", "asm_clobbers", "parmlist", "$@48", "parmlist_1", "$@49", "parmlist_2", "parms", "parm", "xreferror", "parmlist_or_identifiers", - "@50", "parmlist_or_identifiers_1", "identifiers", "old_parameter", + "$@50", "parmlist_or_identifiers_1", "identifiers", "old_parameter", "identifiers_or_typenames", "fn_quals", "extension", "scspec", "type_qual", "fn_qual", "type_spec", 0 }; @@ -2793,17 +2727,20 @@ yy_symbol_print (yyoutput, yytype, yyvaluep) #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) static void -yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) +yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) #else static void -yy_stack_print (bottom, top) - yytype_int16 *bottom; - yytype_int16 *top; +yy_stack_print (yybottom, yytop) + yytype_int16 *yybottom; + yytype_int16 *yytop; #endif { YYFPRINTF (stderr, "Stack now"); - for (; bottom <= top; ++bottom) - YYFPRINTF (stderr, " %d", *bottom); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } YYFPRINTF (stderr, "\n"); } @@ -2837,11 +2774,11 @@ yy_reduce_print (yyvsp, yyrule) /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { - fprintf (stderr, " $%d = ", yyi + 1); + YYFPRINTF (stderr, " $%d = ", yyi + 1); yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]) ); - fprintf (stderr, "\n"); + YYFPRINTF (stderr, "\n"); } } @@ -3121,10 +3058,8 @@ yydestruct (yymsg, yytype, yyvaluep) break; } } - /* Prevent warnings from -Wmissing-prototypes. */ - #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); @@ -3143,10 +3078,9 @@ int yyparse (); - -/*----------. -| yyparse. | -`----------*/ +/*-------------------------. +| yyparse or yypush_parse. | +`-------------------------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -3170,74 +3104,75 @@ yyparse () #endif #endif { - /* The look-ahead symbol. */ +/* The lookahead symbol. */ int yychar; -/* The semantic value of the look-ahead symbol. */ +/* The semantic value of the lookahead symbol. */ YYSTYPE yylval; -/* Number of syntax errors so far. */ -int yynerrs; - - int yystate; - int yyn; - int yyresult; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - /* Look-ahead token as an internal (translated) token number. */ - int yytoken = 0; -#if YYERROR_VERBOSE - /* Buffer for error messages, and its allocated size. */ - char yymsgbuf[128]; - char *yymsg = yymsgbuf; - YYSIZE_T yymsg_alloc = sizeof yymsgbuf; -#endif - - /* Three stacks and their tools: - `yyss': related to states, - `yyvs': related to semantic values, - `yyls': related to locations. + /* Number of syntax errors so far. */ + int yynerrs; - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ + int yystate; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; - /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss = yyssa; - yytype_int16 *yyssp; + /* The stacks and their tools: + `yyss': related to states. + `yyvs': related to semantic values. - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs = yyvsa; - YYSTYPE *yyvsp; + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss; + yytype_int16 *yyssp; + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs; + YYSTYPE *yyvsp; -#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) - - YYSIZE_T yystacksize = YYINITDEPTH; + YYSIZE_T yystacksize; + int yyn; + int yyresult; + /* Lookahead token as an internal (translated) token number. */ + int yytoken; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) /* The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped. */ int yylen = 0; + yytoken = 0; + yyss = yyssa; + yyvs = yyvsa; + yystacksize = YYINITDEPTH; + YYDPRINTF ((stderr, "Starting parse\n")); yystate = 0; yyerrstatus = 0; yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ + yychar = YYEMPTY; /* Cause a token to be read. */ /* Initialize stack pointers. Waste one element of value and location stack so that they stay on the same level as the state stack. The wasted elements are never initialized. */ - yyssp = yyss; yyvsp = yyvs; @@ -3267,7 +3202,6 @@ int yynerrs; YYSTYPE *yyvs1 = yyvs; yytype_int16 *yyss1 = yyss; - /* Each stack pointer address is followed by the size of the data in use in that stack, in bytes. This used to be a conditional around just the two extra args, but that might @@ -3275,7 +3209,6 @@ int yynerrs; yyoverflow (YY_("memory exhausted"), &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), - &yystacksize); yyss = yyss1; @@ -3298,9 +3231,8 @@ int yynerrs; (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) goto yyexhaustedlab; - YYSTACK_RELOCATE (yyss); - YYSTACK_RELOCATE (yyvs); - + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); @@ -3311,7 +3243,6 @@ int yynerrs; yyssp = yyss + yysize - 1; yyvsp = yyvs + yysize - 1; - YYDPRINTF ((stderr, "Stack size increased to %lu\n", (unsigned long int) yystacksize)); @@ -3321,6 +3252,9 @@ int yynerrs; YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + if (yystate == YYFINAL) + YYACCEPT; + goto yybackup; /*-----------. @@ -3329,16 +3263,16 @@ int yynerrs; yybackup: /* Do appropriate processing given the current state. Read a - look-ahead token if we need one and don't already have one. */ + lookahead token if we need one and don't already have one. */ - /* First try to decide what to do without reference to look-ahead token. */ + /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; if (yyn == YYPACT_NINF) goto yydefault; - /* Not known => get a look-ahead token if don't already have one. */ + /* Not known => get a lookahead token if don't already have one. */ - /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ + /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); @@ -3370,20 +3304,16 @@ yybackup: goto yyreduce; } - if (yyn == YYFINAL) - YYACCEPT; - /* Count tokens shifted since error; after three, turn off error status. */ if (yyerrstatus) yyerrstatus--; - /* Shift the look-ahead token. */ + /* Shift the lookahead token. */ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - /* Discard the shifted token unless it is eof. */ - if (yychar != YYEOF) - yychar = YYEMPTY; + /* Discard the shifted token. */ + yychar = YYEMPTY; yystate = yyn; *++yyvsp = yylval; @@ -3423,16 +3353,22 @@ yyreduce: switch (yyn) { case 2: + +/* Line 1455 of yacc.c */ #line 465 "c-parse.y" { ;} break; case 3: + +/* Line 1455 of yacc.c */ #line 466 "c-parse.y" { ;} break; case 4: + +/* Line 1455 of yacc.c */ #line 467 "c-parse.y" { declaration cdecls = declaration_reverse((yyvsp[(2) - (2)].u.decl)); @@ -3440,36 +3376,50 @@ yyreduce: break; case 5: + +/* Line 1455 of yacc.c */ #line 470 "c-parse.y" { parse_tree = NULL; ;} break; case 6: + +/* Line 1455 of yacc.c */ #line 471 "c-parse.y" { parse_tree = CAST(node, (yyvsp[(2) - (2)].u.decl)); ;} break; case 7: + +/* Line 1455 of yacc.c */ #line 472 "c-parse.y" { parse_tree = CAST(node, make_error_decl()); ;} break; case 8: + +/* Line 1455 of yacc.c */ #line 473 "c-parse.y" { parse_tree = CAST(node, (yyvsp[(2) - (2)].u.type)); ;} break; case 9: + +/* Line 1455 of yacc.c */ #line 474 "c-parse.y" { parse_tree = NULL; ;} break; case 10: + +/* Line 1455 of yacc.c */ #line 478 "c-parse.y" { end_macro_saving(); ;} break; case 12: + +/* Line 1455 of yacc.c */ #line 480 "c-parse.y" { end_macro_saving(); @@ -3478,21 +3428,29 @@ yyreduce: break; case 15: + +/* Line 1455 of yacc.c */ #line 492 "c-parse.y" { ;} break; case 16: + +/* Line 1455 of yacc.c */ #line 497 "c-parse.y" { require_c((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id.data); ;} break; case 17: + +/* Line 1455 of yacc.c */ #line 499 "c-parse.y" { require_c((yyvsp[(3) - (3)].idtoken).location, (yyvsp[(3) - (3)].idtoken).id.data); ;} break; case 18: + +/* Line 1455 of yacc.c */ #line 505 "c-parse.y" { start_nesc_entity(l_interface, (yyvsp[(3) - (3)].u.word)); @@ -3500,6 +3458,8 @@ yyreduce: break; case 19: + +/* Line 1455 of yacc.c */ #line 509 "c-parse.y" { handle_nescdecl_attributes((yyvsp[(6) - (6)].u.attribute), current.container); @@ -3507,6 +3467,8 @@ yyreduce: break; case 20: + +/* Line 1455 of yacc.c */ #line 513 "c-parse.y" { interface intf = new_interface(pr, (yyvsp[(2) - (10)].u.itoken).location, (yyvsp[(3) - (10)].u.word), (yyvsp[(6) - (10)].u.attribute), declaration_reverse((yyvsp[(9) - (10)].u.decl))); @@ -3519,11 +3481,15 @@ yyreduce: break; case 21: + +/* Line 1455 of yacc.c */ #line 524 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 22: + +/* Line 1455 of yacc.c */ #line 526 "c-parse.y" { nesc_declaration intf = current.container; @@ -3542,36 +3508,50 @@ yyreduce: break; case 24: + +/* Line 1455 of yacc.c */ #line 545 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (3)].u.decl), (yyvsp[(3) - (3)].u.decl)); ;} break; case 25: + +/* Line 1455 of yacc.c */ #line 550 "c-parse.y" { (yyval.u.decl) = declare_type_parameter((yyvsp[(1) - (2)].idtoken).location, (yyvsp[(1) - (2)].idtoken).id, (yyvsp[(2) - (2)].u.attribute), NULL); ;} break; case 26: + +/* Line 1455 of yacc.c */ #line 554 "c-parse.y" { (yyval.idtoken) = (yyvsp[(1) - (1)].idtoken); ;} break; case 27: + +/* Line 1455 of yacc.c */ #line 558 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 29: + +/* Line 1455 of yacc.c */ #line 562 "c-parse.y" { pushlevel(TRUE); ;} break; case 30: + +/* Line 1455 of yacc.c */ #line 563 "c-parse.y" { /* poplevel done in users of parameters */ (yyval.u.decl) = (yyvsp[(3) - (3)].u.decl); ;} break; case 31: + +/* Line 1455 of yacc.c */ #line 567 "c-parse.y" { (yyval.u.decl) = declaration_reverse((yyvsp[(1) - (2)].u.decl)); @@ -3580,11 +3560,15 @@ yyreduce: break; case 32: + +/* Line 1455 of yacc.c */ #line 571 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 36: + +/* Line 1455 of yacc.c */ #line 582 "c-parse.y" { start_nesc_entity(l_component, (yyvsp[(3) - (3)].u.word)); @@ -3593,6 +3577,8 @@ yyreduce: break; case 37: + +/* Line 1455 of yacc.c */ #line 587 "c-parse.y" { handle_nescdecl_attributes((yyvsp[(6) - (6)].u.attribute), current.container); @@ -3600,6 +3586,8 @@ yyreduce: break; case 38: + +/* Line 1455 of yacc.c */ #line 592 "c-parse.y" { declaration intfs = @@ -3609,6 +3597,8 @@ yyreduce: break; case 39: + +/* Line 1455 of yacc.c */ #line 601 "c-parse.y" { start_nesc_entity(l_component, (yyvsp[(3) - (3)].u.word)); @@ -3618,6 +3608,8 @@ yyreduce: break; case 40: + +/* Line 1455 of yacc.c */ #line 607 "c-parse.y" { handle_nescdecl_attributes((yyvsp[(6) - (6)].u.attribute), current.container); @@ -3625,6 +3617,8 @@ yyreduce: break; case 41: + +/* Line 1455 of yacc.c */ #line 611 "c-parse.y" { set_nesc_ast(new_component(pr, (yyvsp[(2) - (10)].u.itoken).location, (yyvsp[(3) - (10)].u.word), (yyvsp[(6) - (10)].u.attribute), (yyvsp[(1) - (10)].abstract), (yyvsp[(5) - (10)].u.decl), declaration_reverse((yyvsp[(9) - (10)].u.decl)), NULL)); @@ -3632,6 +3626,8 @@ yyreduce: break; case 42: + +/* Line 1455 of yacc.c */ #line 615 "c-parse.y" { set_nesc_impl((yyvsp[(12) - (12)].u.impl)); @@ -3639,6 +3635,8 @@ yyreduce: break; case 43: + +/* Line 1455 of yacc.c */ #line 622 "c-parse.y" { start_nesc_entity(l_component, (yyvsp[(2) - (2)].u.word)); @@ -3646,6 +3644,8 @@ yyreduce: break; case 44: + +/* Line 1455 of yacc.c */ #line 626 "c-parse.y" { handle_nescdecl_attributes((yyvsp[(4) - (4)].u.attribute), current.container); @@ -3653,6 +3653,8 @@ yyreduce: break; case 45: + +/* Line 1455 of yacc.c */ #line 630 "c-parse.y" { binary_component dummy = new_binary_component(pr, (yyvsp[(1) - (8)].u.itoken).location, start_implementation()); @@ -3662,16 +3664,22 @@ yyreduce: break; case 46: + +/* Line 1455 of yacc.c */ #line 637 "c-parse.y" { (yyval.abstract) = TRUE; ;} break; case 47: + +/* Line 1455 of yacc.c */ #line 638 "c-parse.y" { (yyval.abstract) = FALSE; ;} break; case 48: + +/* Line 1455 of yacc.c */ #line 643 "c-parse.y" { if (current.container->abstract) @@ -3684,6 +3692,8 @@ yyreduce: break; case 49: + +/* Line 1455 of yacc.c */ #line 652 "c-parse.y" { nesc_declaration comp = current.container; @@ -3703,91 +3713,127 @@ yyreduce: break; case 50: + +/* Line 1455 of yacc.c */ #line 670 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 53: + +/* Line 1455 of yacc.c */ #line 677 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (3)].u.decl), (yyvsp[(3) - (3)].u.decl)); ;} break; case 54: + +/* Line 1455 of yacc.c */ #line 686 "c-parse.y" { (yyval.u.decl) = declare_template_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 55: + +/* Line 1455 of yacc.c */ #line 688 "c-parse.y" { (yyval.u.decl) = declare_template_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 56: + +/* Line 1455 of yacc.c */ #line 690 "c-parse.y" { (yyval.u.decl) = declare_template_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 57: + +/* Line 1455 of yacc.c */ #line 692 "c-parse.y" { (yyval.u.decl) = declare_template_parameter(NULL, (yyvsp[(1) - (2)].u.telement), NULL); ;} break; case 58: + +/* Line 1455 of yacc.c */ #line 697 "c-parse.y" { current.spec_section = spec_normal; ;} break; case 59: + +/* Line 1455 of yacc.c */ #line 702 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 60: + +/* Line 1455 of yacc.c */ #line 703 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 63: + +/* Line 1455 of yacc.c */ #line 709 "c-parse.y" { current.spec_section = spec_normal; ;} break; case 64: + +/* Line 1455 of yacc.c */ #line 709 "c-parse.y" { (yyval.u.decl) = (yyvsp[(2) - (2)].u.decl); ;} break; case 65: + +/* Line 1455 of yacc.c */ #line 713 "c-parse.y" { current.spec_section = spec_uses; ;} break; case 66: + +/* Line 1455 of yacc.c */ #line 715 "c-parse.y" { (yyval.u.decl) = CAST(declaration, new_rp_interface(pr, (yyvsp[(1) - (3)].u.itoken).location, TRUE, declaration_reverse((yyvsp[(3) - (3)].u.decl)))); ;} break; case 67: + +/* Line 1455 of yacc.c */ #line 718 "c-parse.y" { current.spec_section = spec_provides; ;} break; case 68: + +/* Line 1455 of yacc.c */ #line 720 "c-parse.y" { (yyval.u.decl) = CAST(declaration, new_rp_interface(pr, (yyvsp[(1) - (3)].u.itoken).location, FALSE, declaration_reverse((yyvsp[(3) - (3)].u.decl)))); ;} break; case 70: + +/* Line 1455 of yacc.c */ #line 724 "c-parse.y" { (yyval.u.decl) = (yyvsp[(2) - (3)].u.decl); ;} break; case 71: + +/* Line 1455 of yacc.c */ #line 729 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 74: + +/* Line 1455 of yacc.c */ #line 736 "c-parse.y" { declare_interface_ref((yyvsp[(1) - (3)].u.iref), NULL, current.env, (yyvsp[(2) - (3)].u.attribute)); @@ -3796,6 +3842,8 @@ yyreduce: break; case 75: + +/* Line 1455 of yacc.c */ #line 741 "c-parse.y" { (yyvsp[(1) - (4)].u.iref)->gparms = (yyvsp[(2) - (4)].u.decl); @@ -3806,11 +3854,15 @@ yyreduce: break; case 77: + +/* Line 1455 of yacc.c */ #line 751 "c-parse.y" { (yyval.u.iref) = (yyvsp[(1) - (3)].u.iref); (yyval.u.iref)->word2 = (yyvsp[(3) - (3)].u.word); ;} break; case 78: + +/* Line 1455 of yacc.c */ #line 756 "c-parse.y" { preload(l_interface, (yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.word)->cstring.data); @@ -3819,6 +3871,8 @@ yyreduce: break; case 79: + +/* Line 1455 of yacc.c */ #line 761 "c-parse.y" { preload(l_interface, (yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.word)->cstring.data); @@ -3826,114 +3880,158 @@ yyreduce: break; case 80: + +/* Line 1455 of yacc.c */ #line 765 "c-parse.y" { (yyval.u.iref) = new_interface_ref(pr, (yyvsp[(1) - (6)].u.itoken).location, (yyvsp[(2) - (6)].u.word), (yyvsp[(5) - (6)].u.expr), NULL, NULL, NULL, NULL); ;} break; case 82: + +/* Line 1455 of yacc.c */ #line 770 "c-parse.y" { (yyval.u.expr) = expression_chain((yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 83: + +/* Line 1455 of yacc.c */ #line 774 "c-parse.y" { (yyval.u.env) = start_implementation(); ;} break; case 84: + +/* Line 1455 of yacc.c */ #line 778 "c-parse.y" { (yyval.u.impl) = CAST(implementation, new_configuration(pr, (yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(2) - (5)].u.env), declaration_reverse((yyvsp[(4) - (5)].u.decl)))); ;} break; case 85: + +/* Line 1455 of yacc.c */ #line 782 "c-parse.y" { (yyval.u.cref) = (yyvsp[(2) - (3)].u.cref); ;} break; case 86: + +/* Line 1455 of yacc.c */ #line 786 "c-parse.y" { (yyval.u.cref) = component_ref_chain((yyvsp[(3) - (3)].u.cref), (yyvsp[(1) - (3)].u.cref)); ;} break; case 88: + +/* Line 1455 of yacc.c */ #line 791 "c-parse.y" { (yyval.u.cref) = require_component((yyvsp[(1) - (1)].u.cref), NULL); ;} break; case 89: + +/* Line 1455 of yacc.c */ #line 792 "c-parse.y" { (yyval.u.cref) = require_component((yyvsp[(1) - (3)].u.cref), (yyvsp[(3) - (3)].u.word)); ;} break; case 90: + +/* Line 1455 of yacc.c */ #line 796 "c-parse.y" { (yyval.u.cref) = new_component_ref(pr, (yyvsp[(1) - (1)].u.word)->location, (yyvsp[(1) - (1)].u.word), NULL, FALSE, NULL); ;} break; case 91: + +/* Line 1455 of yacc.c */ #line 799 "c-parse.y" { (yyval.u.cref) = new_component_ref(pr, (yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(2) - (5)].u.word), NULL, TRUE, (yyvsp[(4) - (5)].u.expr)); ;} break; case 92: + +/* Line 1455 of yacc.c */ #line 804 "c-parse.y" { (yyval.u.expr) = NULL; ;} break; case 95: + +/* Line 1455 of yacc.c */ #line 810 "c-parse.y" { (yyval.u.expr) = expression_chain((yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 96: + +/* Line 1455 of yacc.c */ #line 815 "c-parse.y" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); (yyval.u.expr)->type = default_conversion_for_assignment((yyval.u.expr)); ;} break; case 98: + +/* Line 1455 of yacc.c */ #line 820 "c-parse.y" { (yyval.u.expr) = make_type_argument((yyvsp[(1) - (1)].u.type)); ;} break; case 99: + +/* Line 1455 of yacc.c */ #line 824 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 100: + +/* Line 1455 of yacc.c */ #line 825 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 101: + +/* Line 1455 of yacc.c */ #line 829 "c-parse.y" { (yyval.u.decl) = CAST(declaration, (yyvsp[(1) - (1)].u.conn)); ;} break; case 103: + +/* Line 1455 of yacc.c */ #line 831 "c-parse.y" { (yyval.u.decl) = CAST(declaration, (yyvsp[(1) - (1)].u.cref)); ;} break; case 104: + +/* Line 1455 of yacc.c */ #line 836 "c-parse.y" { (yyval.u.conn) = CAST(connection, new_eq_connection(pr, (yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.ep), (yyvsp[(3) - (4)].u.ep))); ;} break; case 105: + +/* Line 1455 of yacc.c */ #line 838 "c-parse.y" { (yyval.u.conn) = CAST(connection, new_rp_connection(pr, (yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.ep), (yyvsp[(1) - (4)].u.ep))); ;} break; case 106: + +/* Line 1455 of yacc.c */ #line 840 "c-parse.y" { (yyval.u.conn) = CAST(connection, new_rp_connection(pr, (yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.ep), (yyvsp[(3) - (4)].u.ep))); ;} break; case 107: + +/* Line 1455 of yacc.c */ #line 845 "c-parse.y" { (yyval.u.ep) = (yyvsp[(1) - (3)].u.ep); (yyval.u.ep)->ids = parameterised_identifier_chain((yyval.u.ep)->ids, (yyvsp[(3) - (3)].u.pid)); @@ -3941,26 +4039,36 @@ yyreduce: break; case 108: + +/* Line 1455 of yacc.c */ #line 849 "c-parse.y" { (yyval.u.ep) = new_endpoint(parse_region, (yyvsp[(1) - (1)].u.pid)->location, (yyvsp[(1) - (1)].u.pid)); ;} break; case 109: + +/* Line 1455 of yacc.c */ #line 854 "c-parse.y" { (yyval.u.pid) = new_parameterised_identifier(pr, (yyvsp[(1) - (1)].u.word)->location, (yyvsp[(1) - (1)].u.word), NULL); ;} break; case 110: + +/* Line 1455 of yacc.c */ #line 856 "c-parse.y" { (yyval.u.pid) = new_parameterised_identifier(pr, (yyvsp[(1) - (4)].u.word)->location, (yyvsp[(1) - (4)].u.word), (yyvsp[(3) - (4)].u.expr)); ;} break; case 111: + +/* Line 1455 of yacc.c */ #line 859 "c-parse.y" { (yyval.u.env) = start_implementation(); all_tasks = NULL; ;} break; case 112: + +/* Line 1455 of yacc.c */ #line 860 "c-parse.y" { (yyval.u.impl) = CAST(implementation, new_module(pr, (yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(2) - (5)].u.env), declaration_reverse((yyvsp[(4) - (5)].u.decl)))); @@ -3968,26 +4076,36 @@ yyreduce: break; case 113: + +/* Line 1455 of yacc.c */ #line 869 "c-parse.y" { (yyval.u.telement) = NULL; ;} break; case 114: + +/* Line 1455 of yacc.c */ #line 869 "c-parse.y" { (yyval.u.decl) = (yyvsp[(2) - (2)].u.decl); ;} break; case 115: + +/* Line 1455 of yacc.c */ #line 870 "c-parse.y" { (yyval.u.telement) = NULL; ;} break; case 116: + +/* Line 1455 of yacc.c */ #line 871 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(3) - (3)].u.decl), (yyvsp[(1) - (3)].u.decl)); ;} break; case 119: + +/* Line 1455 of yacc.c */ #line 878 "c-parse.y" { (yyval.u.decl) = CAST(declaration, new_asm_decl @@ -3996,11 +4114,15 @@ yyreduce: break; case 120: + +/* Line 1455 of yacc.c */ #line 883 "c-parse.y" { (yyval.u.decl) = make_extension_decl((yyvsp[(1) - (2)].u.itoken).i, (yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.decl)); ;} break; case 121: + +/* Line 1455 of yacc.c */ #line 888 "c-parse.y" { if (pedantic) error("ANSI C forbids data definition with no type or storage class"); @@ -4011,32 +4133,44 @@ yyreduce: break; case 123: + +/* Line 1455 of yacc.c */ #line 899 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 124: + +/* Line 1455 of yacc.c */ #line 901 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 125: + +/* Line 1455 of yacc.c */ #line 903 "c-parse.y" { shadow_tag((yyvsp[(1) - (3)].u.telement)); (yyval.u.decl) = make_data_decl((yyvsp[(1) - (3)].u.telement), NULL); ;} break; case 126: + +/* Line 1455 of yacc.c */ #line 905 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 127: + +/* Line 1455 of yacc.c */ #line 906 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 128: + +/* Line 1455 of yacc.c */ #line 908 "c-parse.y" { if (pedantic) pedwarn("ANSI C does not allow extra `;' outside of a function"); @@ -4044,26 +4178,36 @@ yyreduce: break; case 130: + +/* Line 1455 of yacc.c */ #line 916 "c-parse.y" { (yyval.u.decl) = target->keilc_definition((yyvsp[(1) - (5)].idtoken).location, (yyvsp[(1) - (5)].idtoken).id, (yyvsp[(2) - (5)].idtoken).id, (yyvsp[(4) - (5)].u.expr)); ;} break; case 131: + +/* Line 1455 of yacc.c */ #line 920 "c-parse.y" { (yyval.u.decl) = (yyvsp[(4) - (4)].u.decl); ;} break; case 132: + +/* Line 1455 of yacc.c */ #line 921 "c-parse.y" { (yyval.u.decl) = (yyvsp[(4) - (4)].u.decl); ;} break; case 133: + +/* Line 1455 of yacc.c */ #line 922 "c-parse.y" { (yyval.u.decl) = (yyvsp[(3) - (3)].u.decl); ;} break; case 134: + +/* Line 1455 of yacc.c */ #line 926 "c-parse.y" { /* maybeasm is only here to avoid a s/r conflict */ @@ -4078,72 +4222,100 @@ yyreduce: break; case 135: + +/* Line 1455 of yacc.c */ #line 937 "c-parse.y" { store_parm_decls(declaration_reverse((yyvsp[(4) - (4)].u.decl))); ;} break; case 136: + +/* Line 1455 of yacc.c */ #line 939 "c-parse.y" { (yyval.u.decl) = finish_function((yyvsp[(6) - (6)].u.stmt)); pop_declspec_stack(); ;} break; case 139: + +/* Line 1455 of yacc.c */ #line 949 "c-parse.y" { (yyval.u.id_label) = new_id_label(pr, (yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 140: + +/* Line 1455 of yacc.c */ #line 953 "c-parse.y" { (yyval.u.word) = new_word(pr, (yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 141: + +/* Line 1455 of yacc.c */ #line 957 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_address_of; ;} break; case 142: + +/* Line 1455 of yacc.c */ #line 959 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_unary_minus; ;} break; case 143: + +/* Line 1455 of yacc.c */ #line 961 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_unary_plus; ;} break; case 144: + +/* Line 1455 of yacc.c */ #line 963 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_preincrement; ;} break; case 145: + +/* Line 1455 of yacc.c */ #line 965 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_predecrement; ;} break; case 146: + +/* Line 1455 of yacc.c */ #line 967 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_bitnot; ;} break; case 147: + +/* Line 1455 of yacc.c */ #line 969 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_not; ;} break; case 148: + +/* Line 1455 of yacc.c */ #line 971 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_realpart; ;} break; case 149: + +/* Line 1455 of yacc.c */ #line 973 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_imagpart; ;} break; case 150: + +/* Line 1455 of yacc.c */ #line 977 "c-parse.y" { if ((yyvsp[(1) - (1)].u.expr)->next) (yyval.u.expr) = make_comma((yyvsp[(1) - (1)].u.expr)->location, (yyvsp[(1) - (1)].u.expr)); @@ -4152,41 +4324,57 @@ yyreduce: break; case 151: + +/* Line 1455 of yacc.c */ #line 985 "c-parse.y" { (yyval.u.expr) = NULL; ;} break; case 153: + +/* Line 1455 of yacc.c */ #line 991 "c-parse.y" { (yyval.u.expr) = expression_reverse((yyvsp[(1) - (1)].u.expr)); ;} break; case 154: + +/* Line 1455 of yacc.c */ #line 996 "c-parse.y" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); ;} break; case 155: + +/* Line 1455 of yacc.c */ #line 998 "c-parse.y" { (yyval.u.expr) = expression_chain((yyvsp[(3) - (3)].u.expr), (yyvsp[(1) - (3)].u.expr)); ;} break; case 156: + +/* Line 1455 of yacc.c */ #line 1002 "c-parse.y" { (yyval.u.itoken).i = command_call; ;} break; case 157: + +/* Line 1455 of yacc.c */ #line 1003 "c-parse.y" { (yyval.u.itoken).i = event_signal; ;} break; case 158: + +/* Line 1455 of yacc.c */ #line 1004 "c-parse.y" { (yyval.u.itoken).i = post_task; ;} break; case 160: + +/* Line 1455 of yacc.c */ #line 1010 "c-parse.y" { function_call fc = CAST(function_call, (yyvsp[(2) - (2)].u.expr)); @@ -4222,17 +4410,23 @@ yyreduce: break; case 161: + +/* Line 1455 of yacc.c */ #line 1042 "c-parse.y" { (yyval.u.expr) = make_dereference((yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.expr)); ;} break; case 162: + +/* Line 1455 of yacc.c */ #line 1045 "c-parse.y" { (yyval.u.expr) = make_extension_expr((yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.expr)); pedantic = (yyvsp[(1) - (2)].u.itoken).i; ;} break; case 163: + +/* Line 1455 of yacc.c */ #line 1048 "c-parse.y" { (yyval.u.expr) = make_unary((yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(1) - (2)].u.itoken).i, (yyvsp[(2) - (2)].u.expr)); #if 0 @@ -4242,6 +4436,8 @@ yyreduce: break; case 164: + +/* Line 1455 of yacc.c */ #line 1055 "c-parse.y" { (yyval.u.expr) = CAST(expression, make_label_address((yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.id_label))); @@ -4250,6 +4446,8 @@ yyreduce: break; case 165: + +/* Line 1455 of yacc.c */ #line 1060 "c-parse.y" { #if 0 @@ -4263,39 +4461,53 @@ yyreduce: break; case 166: + +/* Line 1455 of yacc.c */ #line 1070 "c-parse.y" { (yyval.u.expr) = make_sizeof_type((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.type)); pstate.unevaluated_expression--; ;} break; case 167: + +/* Line 1455 of yacc.c */ #line 1073 "c-parse.y" { (yyval.u.expr) = make_alignof_expr((yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.expr)); pstate.unevaluated_expression--; ;} break; case 168: + +/* Line 1455 of yacc.c */ #line 1076 "c-parse.y" { (yyval.u.expr) = make_alignof_type((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.type)); pstate.unevaluated_expression--; ;} break; case 169: + +/* Line 1455 of yacc.c */ #line 1081 "c-parse.y" { pstate.unevaluated_expression++; (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); ;} break; case 170: + +/* Line 1455 of yacc.c */ #line 1085 "c-parse.y" { pstate.unevaluated_expression++; (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); ;} break; case 172: + +/* Line 1455 of yacc.c */ #line 1091 "c-parse.y" { (yyval.u.expr) = make_cast((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr)); ;} break; case 173: + +/* Line 1455 of yacc.c */ #line 1093 "c-parse.y" { start_init(NULL, NULL); @@ -4304,6 +4516,8 @@ yyreduce: break; case 174: + +/* Line 1455 of yacc.c */ #line 1098 "c-parse.y" { expression constructor = make_init_list((yyvsp[(4) - (7)].u.itoken).location, (yyvsp[(6) - (7)].u.expr)); @@ -4318,91 +4532,127 @@ yyreduce: break; case 176: + +/* Line 1455 of yacc.c */ #line 1113 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_plus, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 177: + +/* Line 1455 of yacc.c */ #line 1115 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_minus, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 178: + +/* Line 1455 of yacc.c */ #line 1117 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_times, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 179: + +/* Line 1455 of yacc.c */ #line 1119 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_divide, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 180: + +/* Line 1455 of yacc.c */ #line 1121 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_modulo, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 181: + +/* Line 1455 of yacc.c */ #line 1123 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_lshift, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 182: + +/* Line 1455 of yacc.c */ #line 1125 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_rshift, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 183: + +/* Line 1455 of yacc.c */ #line 1127 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.itoken).i, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 184: + +/* Line 1455 of yacc.c */ #line 1129 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_lt, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 185: + +/* Line 1455 of yacc.c */ #line 1131 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_gt, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 186: + +/* Line 1455 of yacc.c */ #line 1133 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.itoken).i, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 187: + +/* Line 1455 of yacc.c */ #line 1135 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_bitand, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 188: + +/* Line 1455 of yacc.c */ #line 1137 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_bitor, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 189: + +/* Line 1455 of yacc.c */ #line 1139 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_bitxor, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 190: + +/* Line 1455 of yacc.c */ #line 1141 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_andand, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 191: + +/* Line 1455 of yacc.c */ #line 1143 "c-parse.y" { (yyval.u.expr) = make_binary((yyvsp[(2) - (3)].u.itoken).location, kind_oror, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 192: + +/* Line 1455 of yacc.c */ #line 1145 "c-parse.y" { (yyval.u.expr) = make_conditional((yyvsp[(2) - (5)].u.itoken).location, (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); ;} break; case 193: + +/* Line 1455 of yacc.c */ #line 1147 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids omitting the middle term of a ?: expression"); @@ -4410,21 +4660,29 @@ yyreduce: break; case 194: + +/* Line 1455 of yacc.c */ #line 1151 "c-parse.y" { (yyval.u.expr) = make_conditional((yyvsp[(2) - (5)].u.itoken).location, (yyvsp[(1) - (5)].u.expr), NULL, (yyvsp[(5) - (5)].u.expr)); ;} break; case 195: + +/* Line 1455 of yacc.c */ #line 1153 "c-parse.y" { (yyval.u.expr) = make_assign((yyvsp[(2) - (3)].u.itoken).location, kind_assign, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 196: + +/* Line 1455 of yacc.c */ #line 1155 "c-parse.y" { (yyval.u.expr) = make_assign((yyvsp[(2) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.itoken).i, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); ;} break; case 197: + +/* Line 1455 of yacc.c */ #line 1160 "c-parse.y" { if (yychar == YYEMPTY) @@ -4434,26 +4692,36 @@ yyreduce: break; case 198: + +/* Line 1455 of yacc.c */ #line 1165 "c-parse.y" { (yyval.u.expr) = CAST(expression, (yyvsp[(1) - (1)].u.constant)); ;} break; case 199: + +/* Line 1455 of yacc.c */ #line 1166 "c-parse.y" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); ;} break; case 200: + +/* Line 1455 of yacc.c */ #line 1168 "c-parse.y" { (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); (yyval.u.expr)->parens = TRUE; ;} break; case 201: + +/* Line 1455 of yacc.c */ #line 1170 "c-parse.y" { (yyval.u.expr) = make_error_expr(); ;} break; case 202: + +/* Line 1455 of yacc.c */ #line 1172 "c-parse.y" { if (current.function_decl == 0) { @@ -4465,6 +4733,8 @@ yyreduce: break; case 203: + +/* Line 1455 of yacc.c */ #line 1180 "c-parse.y" { pop_label_level(); @@ -4475,6 +4745,8 @@ yyreduce: break; case 204: + +/* Line 1455 of yacc.c */ #line 1187 "c-parse.y" { /* Magic functions may rewrite this to something else */ @@ -4496,72 +4768,100 @@ yyreduce: break; case 205: + +/* Line 1455 of yacc.c */ #line 1205 "c-parse.y" { (yyval.u.expr) = make_va_arg((yyvsp[(1) - (6)].u.itoken).location, (yyvsp[(3) - (6)].u.expr), (yyvsp[(5) - (6)].u.type)); ;} break; case 206: + +/* Line 1455 of yacc.c */ #line 1207 "c-parse.y" { (yyval.u.expr) = make_offsetof((yyvsp[(1) - (6)].u.itoken).location, (yyvsp[(3) - (6)].u.type), (yyvsp[(5) - (6)].u.fields)); ;} break; case 207: + +/* Line 1455 of yacc.c */ #line 1209 "c-parse.y" { (yyval.u.expr) = make_array_ref((yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); ;} break; case 208: + +/* Line 1455 of yacc.c */ #line 1211 "c-parse.y" { (yyval.u.expr) = make_field_ref((yyvsp[(2) - (3)].u.itoken).location, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].idtoken).id); ;} break; case 209: + +/* Line 1455 of yacc.c */ #line 1213 "c-parse.y" { (yyval.u.expr) = make_field_ref((yyvsp[(2) - (3)].u.itoken).location, make_dereference((yyvsp[(2) - (3)].u.itoken).location, (yyvsp[(1) - (3)].u.expr)), (yyvsp[(3) - (3)].idtoken).id); ;} break; case 210: + +/* Line 1455 of yacc.c */ #line 1216 "c-parse.y" { (yyval.u.expr) = make_postincrement((yyvsp[(2) - (2)].u.itoken).location, (yyvsp[(1) - (2)].u.expr)); ;} break; case 211: + +/* Line 1455 of yacc.c */ #line 1218 "c-parse.y" { (yyval.u.expr) = make_postdecrement((yyvsp[(2) - (2)].u.itoken).location, (yyvsp[(1) - (2)].u.expr)); ;} break; case 212: + +/* Line 1455 of yacc.c */ #line 1222 "c-parse.y" { (yyval.u.fields) = dd_new_list(pr); dd_add_last(pr, (yyval.u.fields), (yyvsp[(1) - (1)].idtoken).id.data); ;} break; case 213: + +/* Line 1455 of yacc.c */ #line 1223 "c-parse.y" { (yyval.u.fields) = (yyvsp[(1) - (3)].u.fields); dd_add_last(pr, (yyval.u.fields), (yyvsp[(3) - (3)].idtoken).id.data); ;} break; case 214: + +/* Line 1455 of yacc.c */ #line 1228 "c-parse.y" { (yyval.u.expr) = make_function_call((yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); ;} break; case 215: + +/* Line 1455 of yacc.c */ #line 1231 "c-parse.y" { (yyval.u.expr) = CAST(expression, (yyvsp[(1) - (1)].u.string)); ;} break; case 216: + +/* Line 1455 of yacc.c */ #line 1232 "c-parse.y" { (yyval.u.expr) = make_identifier((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id, FALSE); ;} break; case 217: + +/* Line 1455 of yacc.c */ #line 1236 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 219: + +/* Line 1455 of yacc.c */ #line 1240 "c-parse.y" { if (pedantic) pedwarn("ANSI C does not permit use of `varargs.h'"); @@ -4570,21 +4870,29 @@ yyreduce: break; case 221: + +/* Line 1455 of yacc.c */ #line 1251 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 222: + +/* Line 1455 of yacc.c */ #line 1260 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 223: + +/* Line 1455 of yacc.c */ #line 1262 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 224: + +/* Line 1455 of yacc.c */ #line 1264 "c-parse.y" { shadow_tag_warned((yyvsp[(1) - (3)].u.telement), 1); (yyval.u.decl) = make_data_decl((yyvsp[(1) - (3)].u.telement), NULL); @@ -4592,27 +4900,37 @@ yyreduce: break; case 225: + +/* Line 1455 of yacc.c */ #line 1268 "c-parse.y" { pedwarn("empty declaration"); (yyval.u.decl) = NULL; ;} break; case 227: + +/* Line 1455 of yacc.c */ #line 1278 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 228: + +/* Line 1455 of yacc.c */ #line 1279 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl)); ;} break; case 229: + +/* Line 1455 of yacc.c */ #line 1280 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 230: + +/* Line 1455 of yacc.c */ #line 1288 "c-parse.y" { push_declspec_stack(); @@ -4623,404 +4941,564 @@ yyreduce: break; case 231: + +/* Line 1455 of yacc.c */ #line 1300 "c-parse.y" { pstate.attributes = (yyvsp[(1) - (1)].u.attribute); ;} break; case 232: + +/* Line 1455 of yacc.c */ #line 1305 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 233: + +/* Line 1455 of yacc.c */ #line 1307 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (4)].u.telement), (yyvsp[(3) - (4)].u.decl)); ;} break; case 234: + +/* Line 1455 of yacc.c */ #line 1309 "c-parse.y" { (yyval.u.decl) = (yyvsp[(3) - (3)].u.decl); pop_declspec_stack(); ;} break; case 235: + +/* Line 1455 of yacc.c */ #line 1312 "c-parse.y" { (yyval.u.decl) = (yyvsp[(3) - (3)].u.decl); pop_declspec_stack(); ;} break; case 236: + +/* Line 1455 of yacc.c */ #line 1315 "c-parse.y" { shadow_tag((yyvsp[(1) - (3)].u.telement)); (yyval.u.decl) = make_data_decl((yyvsp[(1) - (3)].u.telement), NULL); ;} break; case 237: + +/* Line 1455 of yacc.c */ #line 1318 "c-parse.y" { (yyval.u.decl) = make_extension_decl((yyvsp[(1) - (2)].u.itoken).i, (yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.decl)); ;} break; case 239: + +/* Line 1455 of yacc.c */ #line 1375 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 240: + +/* Line 1455 of yacc.c */ #line 1377 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 241: + +/* Line 1455 of yacc.c */ #line 1382 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 242: + +/* Line 1455 of yacc.c */ #line 1387 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 243: + +/* Line 1455 of yacc.c */ #line 1389 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 247: + +/* Line 1455 of yacc.c */ #line 1400 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 248: + +/* Line 1455 of yacc.c */ #line 1402 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 249: + +/* Line 1455 of yacc.c */ #line 1404 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 250: + +/* Line 1455 of yacc.c */ #line 1406 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 251: + +/* Line 1455 of yacc.c */ #line 1408 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 252: + +/* Line 1455 of yacc.c */ #line 1410 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 254: + +/* Line 1455 of yacc.c */ #line 1416 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 255: + +/* Line 1455 of yacc.c */ #line 1418 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 256: + +/* Line 1455 of yacc.c */ #line 1420 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 257: + +/* Line 1455 of yacc.c */ #line 1422 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 258: + +/* Line 1455 of yacc.c */ #line 1424 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 259: + +/* Line 1455 of yacc.c */ #line 1429 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 260: + +/* Line 1455 of yacc.c */ #line 1431 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 261: + +/* Line 1455 of yacc.c */ #line 1433 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 262: + +/* Line 1455 of yacc.c */ #line 1435 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 263: + +/* Line 1455 of yacc.c */ #line 1437 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 264: + +/* Line 1455 of yacc.c */ #line 1439 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 265: + +/* Line 1455 of yacc.c */ #line 1444 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 266: + +/* Line 1455 of yacc.c */ #line 1446 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 267: + +/* Line 1455 of yacc.c */ #line 1448 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 268: + +/* Line 1455 of yacc.c */ #line 1450 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 269: + +/* Line 1455 of yacc.c */ #line 1452 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 271: + +/* Line 1455 of yacc.c */ #line 1458 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 272: + +/* Line 1455 of yacc.c */ #line 1460 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 273: + +/* Line 1455 of yacc.c */ #line 1462 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 274: + +/* Line 1455 of yacc.c */ #line 1464 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 275: + +/* Line 1455 of yacc.c */ #line 1466 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 276: + +/* Line 1455 of yacc.c */ #line 1468 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 277: + +/* Line 1455 of yacc.c */ #line 1473 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 278: + +/* Line 1455 of yacc.c */ #line 1478 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 279: + +/* Line 1455 of yacc.c */ #line 1480 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 280: + +/* Line 1455 of yacc.c */ #line 1482 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 281: + +/* Line 1455 of yacc.c */ #line 1484 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 282: + +/* Line 1455 of yacc.c */ #line 1486 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 283: + +/* Line 1455 of yacc.c */ #line 1488 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 284: + +/* Line 1455 of yacc.c */ #line 1493 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 285: + +/* Line 1455 of yacc.c */ #line 1498 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 286: + +/* Line 1455 of yacc.c */ #line 1500 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 287: + +/* Line 1455 of yacc.c */ #line 1502 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 288: + +/* Line 1455 of yacc.c */ #line 1504 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 289: + +/* Line 1455 of yacc.c */ #line 1506 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 290: + +/* Line 1455 of yacc.c */ #line 1508 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 291: + +/* Line 1455 of yacc.c */ #line 1510 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 292: + +/* Line 1455 of yacc.c */ #line 1512 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 293: + +/* Line 1455 of yacc.c */ #line 1514 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 294: + +/* Line 1455 of yacc.c */ #line 1516 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 295: + +/* Line 1455 of yacc.c */ #line 1521 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 296: + +/* Line 1455 of yacc.c */ #line 1523 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 297: + +/* Line 1455 of yacc.c */ #line 1525 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 298: + +/* Line 1455 of yacc.c */ #line 1527 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 299: + +/* Line 1455 of yacc.c */ #line 1529 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 300: + +/* Line 1455 of yacc.c */ #line 1534 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 301: + +/* Line 1455 of yacc.c */ #line 1536 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 302: + +/* Line 1455 of yacc.c */ #line 1538 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 303: + +/* Line 1455 of yacc.c */ #line 1540 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 304: + +/* Line 1455 of yacc.c */ #line 1542 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 305: + +/* Line 1455 of yacc.c */ #line 1544 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 306: + +/* Line 1455 of yacc.c */ #line 1546 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 307: + +/* Line 1455 of yacc.c */ #line 1548 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 308: + +/* Line 1455 of yacc.c */ #line 1550 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 309: + +/* Line 1455 of yacc.c */ #line 1552 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 310: + +/* Line 1455 of yacc.c */ #line 1557 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 311: + +/* Line 1455 of yacc.c */ #line 1559 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 312: + +/* Line 1455 of yacc.c */ #line 1561 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 313: + +/* Line 1455 of yacc.c */ #line 1563 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 314: + +/* Line 1455 of yacc.c */ #line 1565 "c-parse.y" { (yyval.u.telement) = type_element_chain((yyvsp[(1) - (2)].u.telement), (yyvsp[(2) - (2)].u.telement)); ;} break; case 351: + +/* Line 1455 of yacc.c */ #line 1632 "c-parse.y" { (yyval.u.telement) = NULL; ;} break; case 359: + +/* Line 1455 of yacc.c */ #line 1677 "c-parse.y" { /* For a typedef name, record the meaning, not the name. In case of `foo foo, bar;'. */ @@ -5028,6 +5506,8 @@ yyreduce: break; case 360: + +/* Line 1455 of yacc.c */ #line 1681 "c-parse.y" { /* reference to a typedef from a component. */ @@ -5036,52 +5516,72 @@ yyreduce: break; case 361: + +/* Line 1455 of yacc.c */ #line 1686 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_typeof_expr(pr, (yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.expr))); ;} break; case 362: + +/* Line 1455 of yacc.c */ #line 1688 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_typeof_type(pr, (yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.type))); ;} break; case 363: + +/* Line 1455 of yacc.c */ #line 1693 "c-parse.y" { (yyval.u.decl) = declaration_reverse((yyvsp[(1) - (1)].u.decl)); ;} break; case 364: + +/* Line 1455 of yacc.c */ #line 1697 "c-parse.y" { (yyval.u.decl) = declaration_reverse((yyvsp[(1) - (1)].u.decl)); ;} break; case 366: + +/* Line 1455 of yacc.c */ #line 1703 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(4) - (4)].u.decl), (yyvsp[(1) - (4)].u.decl)); ;} break; case 367: + +/* Line 1455 of yacc.c */ #line 1707 "c-parse.y" { (yyval.u.decl) = (yyvsp[(1) - (1)].u.decl); ;} break; case 368: + +/* Line 1455 of yacc.c */ #line 1709 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(4) - (4)].u.decl), (yyvsp[(1) - (4)].u.decl)); ;} break; case 369: + +/* Line 1455 of yacc.c */ #line 1714 "c-parse.y" { (yyval.u.asm_stmt) = NULL; ;} break; case 370: + +/* Line 1455 of yacc.c */ #line 1716 "c-parse.y" { (yyval.u.asm_stmt) = new_asm_stmt(pr, (yyvsp[(1) - (4)].u.itoken).location, CAST(expression, (yyvsp[(3) - (4)].u.string)), NULL, NULL, NULL, NULL); ;} break; case 371: + +/* Line 1455 of yacc.c */ #line 1722 "c-parse.y" { (yyval.u.decl) = start_decl((yyvsp[(1) - (4)].u.declarator), (yyvsp[(2) - (4)].u.asm_stmt), pstate.declspecs, 1, prefix_attr((yyvsp[(3) - (4)].u.attribute))); @@ -5089,12 +5589,16 @@ yyreduce: break; case 372: + +/* Line 1455 of yacc.c */ #line 1727 "c-parse.y" { finish_init(); (yyval.u.decl) = finish_decl((yyvsp[(5) - (6)].u.decl), (yyvsp[(6) - (6)].u.expr)); ;} break; case 373: + +/* Line 1455 of yacc.c */ #line 1730 "c-parse.y" { declaration d = start_decl((yyvsp[(1) - (3)].u.declarator), (yyvsp[(2) - (3)].u.asm_stmt), pstate.declspecs, 0, prefix_attr((yyvsp[(3) - (3)].u.attribute))); @@ -5102,6 +5606,8 @@ yyreduce: break; case 374: + +/* Line 1455 of yacc.c */ #line 1737 "c-parse.y" { (yyval.u.decl) = start_decl((yyvsp[(1) - (4)].u.declarator), (yyvsp[(2) - (4)].u.asm_stmt), pstate.declspecs, 1, prefix_attr((yyvsp[(3) - (4)].u.attribute))); @@ -5109,12 +5615,16 @@ yyreduce: break; case 375: + +/* Line 1455 of yacc.c */ #line 1742 "c-parse.y" { finish_init(); (yyval.u.decl) = finish_decl((yyvsp[(5) - (6)].u.decl), (yyvsp[(6) - (6)].u.expr)); ;} break; case 376: + +/* Line 1455 of yacc.c */ #line 1745 "c-parse.y" { declaration d = start_decl((yyvsp[(1) - (3)].u.declarator), (yyvsp[(2) - (3)].u.asm_stmt), pstate.declspecs, 0, prefix_attr((yyvsp[(3) - (3)].u.attribute))); @@ -5122,110 +5632,152 @@ yyreduce: break; case 377: + +/* Line 1455 of yacc.c */ #line 1752 "c-parse.y" { (yyval.u.attribute) = NULL; ;} break; case 378: + +/* Line 1455 of yacc.c */ #line 1754 "c-parse.y" { (yyval.u.attribute) = attribute_reverse((yyvsp[(1) - (1)].u.attribute)); ;} break; case 379: + +/* Line 1455 of yacc.c */ #line 1758 "c-parse.y" { (yyval.u.telement) = CAST(type_element, (yyvsp[(1) - (1)].u.attribute)); ;} break; case 380: + +/* Line 1455 of yacc.c */ #line 1762 "c-parse.y" { (yyval.u.attribute) = NULL; ;} break; case 381: + +/* Line 1455 of yacc.c */ #line 1764 "c-parse.y" { (yyval.u.attribute) = attribute_chain((yyvsp[(2) - (2)].u.attribute), (yyvsp[(1) - (2)].u.attribute)); ;} break; case 382: + +/* Line 1455 of yacc.c */ #line 1769 "c-parse.y" { (yyval.u.attribute) = (yyvsp[(1) - (1)].u.attribute); ;} break; case 383: + +/* Line 1455 of yacc.c */ #line 1771 "c-parse.y" { (yyval.u.attribute) = attribute_chain((yyvsp[(2) - (2)].u.attribute), (yyvsp[(1) - (2)].u.attribute)); ;} break; case 384: + +/* Line 1455 of yacc.c */ #line 1776 "c-parse.y" { (yyval.u.attribute) = (yyvsp[(4) - (6)].u.attribute); ;} break; case 385: + +/* Line 1455 of yacc.c */ #line 1777 "c-parse.y" { (yyval.u.attribute) = CAST(attribute, (yyvsp[(1) - (1)].u.gcc_attribute)); ;} break; case 387: + +/* Line 1455 of yacc.c */ #line 1783 "c-parse.y" { word w = new_word(pr, (yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); - (yyval.u.gcc_attribute) = new_gcc_attribute(pr, (yyvsp[(1) - (1)].idtoken).location, w, NULL); ;} + (yyval.u.gcc_attribute) = new_target_attribute(pr, (yyvsp[(1) - (1)].idtoken).location, w, NULL); ;} break; case 388: + +/* Line 1455 of yacc.c */ #line 1786 "c-parse.y" { word w = new_word(pr, (yyvsp[(1) - (2)].idtoken).location, (yyvsp[(1) - (2)].idtoken).id); - (yyval.u.gcc_attribute) = new_gcc_attribute(pr, (yyvsp[(1) - (2)].idtoken).location, w, (yyvsp[(2) - (2)].u.expr)); ;} + (yyval.u.gcc_attribute) = new_target_attribute(pr, (yyvsp[(1) - (2)].idtoken).location, w, (yyvsp[(2) - (2)].u.expr)); ;} break; case 389: + +/* Line 1455 of yacc.c */ #line 1789 "c-parse.y" { word w = new_word(pr, (yyvsp[(2) - (2)].u.expr)->location, str2cstring(pr, "iar_at")); - (yyval.u.gcc_attribute) = new_gcc_attribute(pr, (yyvsp[(2) - (2)].u.expr)->location, w, (yyvsp[(2) - (2)].u.expr)); ;} + (yyval.u.gcc_attribute) = new_target_attribute(pr, (yyvsp[(2) - (2)].u.expr)->location, w, (yyvsp[(2) - (2)].u.expr)); ;} break; case 390: + +/* Line 1455 of yacc.c */ #line 1794 "c-parse.y" { (yyval.u.expr) = CAST(expression, (yyvsp[(1) - (1)].u.constant)); ;} break; case 391: + +/* Line 1455 of yacc.c */ #line 1795 "c-parse.y" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); ;} break; case 392: + +/* Line 1455 of yacc.c */ #line 1796 "c-parse.y" { (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); ;} break; case 393: + +/* Line 1455 of yacc.c */ #line 1801 "c-parse.y" { (yyval.u.attribute) = CAST(attribute, (yyvsp[(1) - (1)].u.gcc_attribute)); ;} break; case 394: + +/* Line 1455 of yacc.c */ #line 1803 "c-parse.y" { (yyval.u.attribute) = attribute_chain((yyvsp[(1) - (3)].u.attribute), CAST(attribute, (yyvsp[(3) - (3)].u.gcc_attribute))); ;} break; case 395: + +/* Line 1455 of yacc.c */ #line 1808 "c-parse.y" { (yyval.u.gcc_attribute) = NULL; ;} break; case 396: + +/* Line 1455 of yacc.c */ #line 1810 "c-parse.y" { (yyval.u.gcc_attribute) = new_gcc_attribute(pr, (yyvsp[(1) - (1)].u.word)->location, (yyvsp[(1) - (1)].u.word), NULL); ;} break; case 397: + +/* Line 1455 of yacc.c */ #line 1812 "c-parse.y" { (yyval.u.gcc_attribute) = new_gcc_attribute (pr, (yyvsp[(1) - (4)].u.word)->location, (yyvsp[(1) - (4)].u.word), make_attr_args((yyvsp[(3) - (4)].idtoken).location, (yyvsp[(3) - (4)].idtoken).id, NULL)); ;} break; case 398: + +/* Line 1455 of yacc.c */ #line 1815 "c-parse.y" { (yyval.u.gcc_attribute) = new_gcc_attribute (pr, (yyvsp[(2) - (6)].u.itoken).location, (yyvsp[(1) - (6)].u.word), make_attr_args((yyvsp[(3) - (6)].idtoken).location, (yyvsp[(3) - (6)].idtoken).id, (yyvsp[(5) - (6)].u.expr))); @@ -5233,67 +5785,93 @@ yyreduce: break; case 399: + +/* Line 1455 of yacc.c */ #line 1819 "c-parse.y" { (yyval.u.gcc_attribute) = new_gcc_attribute(pr, (yyvsp[(2) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.word), (yyvsp[(3) - (4)].u.expr)); ;} break; case 400: + +/* Line 1455 of yacc.c */ #line 1825 "c-parse.y" { (yyval.u.attribute) = finish_attribute_use((yyvsp[(2) - (5)].u.nesc_attribute), (yyvsp[(4) - (5)].u.expr)); ;} break; case 401: + +/* Line 1455 of yacc.c */ #line 1827 "c-parse.y" { (yyval.u.attribute) = finish_attribute_use((yyvsp[(2) - (4)].u.nesc_attribute), make_error_expr()); ;} break; case 402: + +/* Line 1455 of yacc.c */ #line 1832 "c-parse.y" { (yyval.u.nesc_attribute) = start_attribute_use((yyvsp[(1) - (1)].u.word)); ;} break; case 404: + +/* Line 1455 of yacc.c */ #line 1841 "c-parse.y" { (yyval.u.word) = make_cword((yyvsp[(1) - (1)].u.telement)->location, rid_name(CAST(rid, (yyvsp[(1) - (1)].u.telement)))); ;} break; case 405: + +/* Line 1455 of yacc.c */ #line 1843 "c-parse.y" { (yyval.u.word) = make_cword((yyvsp[(1) - (1)].u.telement)->location, rid_name(CAST(rid, (yyvsp[(1) - (1)].u.telement)))); ;} break; case 406: + +/* Line 1455 of yacc.c */ #line 1845 "c-parse.y" { (yyval.u.word) = make_cword((yyvsp[(1) - (1)].u.telement)->location, qualifier_name(CAST(qualifier, (yyvsp[(1) - (1)].u.telement))->id)); ;} break; case 407: + +/* Line 1455 of yacc.c */ #line 1847 "c-parse.y" { (yyval.u.word) = make_cword((yyvsp[(1) - (1)].u.itoken).location, "signal"); ;} break; case 408: + +/* Line 1455 of yacc.c */ #line 1853 "c-parse.y" { (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); simple_init((yyval.u.expr)); ;} break; case 409: + +/* Line 1455 of yacc.c */ #line 1855 "c-parse.y" { really_start_incremental_init(NULL); ;} break; case 410: + +/* Line 1455 of yacc.c */ #line 1857 "c-parse.y" { (yyval.u.expr) = make_init_list((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.expr)); ;} break; case 411: + +/* Line 1455 of yacc.c */ #line 1859 "c-parse.y" { (yyval.u.expr) = make_error_expr(); ;} break; case 412: + +/* Line 1455 of yacc.c */ #line 1865 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids empty initializer braces"); @@ -5301,16 +5879,22 @@ yyreduce: break; case 413: + +/* Line 1455 of yacc.c */ #line 1868 "c-parse.y" { (yyval.u.expr) = expression_reverse((yyvsp[(1) - (2)].u.expr)); ;} break; case 415: + +/* Line 1455 of yacc.c */ #line 1873 "c-parse.y" { (yyval.u.expr) = expression_chain((yyvsp[(3) - (3)].u.expr), (yyvsp[(1) - (3)].u.expr)); ;} break; case 416: + +/* Line 1455 of yacc.c */ #line 1880 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids specifying subobject to initialize"); @@ -5318,6 +5902,8 @@ yyreduce: break; case 417: + +/* Line 1455 of yacc.c */ #line 1884 "c-parse.y" { if (pedantic) pedwarn("obsolete use of designated initializer without `='"); @@ -5325,6 +5911,8 @@ yyreduce: break; case 418: + +/* Line 1455 of yacc.c */ #line 1888 "c-parse.y" { (yyval.u.designator) = set_init_label((yyvsp[(1) - (2)].idtoken).location, (yyvsp[(1) - (2)].idtoken).id); if (pedantic) @@ -5332,42 +5920,58 @@ yyreduce: break; case 419: + +/* Line 1455 of yacc.c */ #line 1892 "c-parse.y" { (yyval.u.expr) = make_init_specific((yyvsp[(3) - (4)].u.designator), (yyvsp[(4) - (4)].u.expr)); ;} break; case 421: + +/* Line 1455 of yacc.c */ #line 1898 "c-parse.y" { push_init_level (0); ;} break; case 422: + +/* Line 1455 of yacc.c */ #line 1900 "c-parse.y" { (yyval.u.expr) = make_init_list((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.expr)); process_init_element(NULL); ;} break; case 423: + +/* Line 1455 of yacc.c */ #line 1903 "c-parse.y" { process_init_element((yyvsp[(1) - (1)].u.expr)); (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); ;} break; case 424: + +/* Line 1455 of yacc.c */ #line 1904 "c-parse.y" { (yyval.u.expr) = make_error_expr(); ;} break; case 426: + +/* Line 1455 of yacc.c */ #line 1909 "c-parse.y" { (yyval.u.designator) = designator_chain((yyvsp[(1) - (2)].u.designator), (yyvsp[(2) - (2)].u.designator)); ;} break; case 427: + +/* Line 1455 of yacc.c */ #line 1914 "c-parse.y" { (yyval.u.designator) = set_init_label((yyvsp[(2) - (2)].idtoken).location, (yyvsp[(2) - (2)].idtoken).id); ;} break; case 428: + +/* Line 1455 of yacc.c */ #line 1919 "c-parse.y" { (yyval.u.designator) = set_init_index((yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(2) - (5)].u.expr), (yyvsp[(4) - (5)].u.expr)); if (pedantic) @@ -5375,11 +5979,15 @@ yyreduce: break; case 429: + +/* Line 1455 of yacc.c */ #line 1923 "c-parse.y" { (yyval.u.designator) = set_init_index((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.expr), NULL); ;} break; case 430: + +/* Line 1455 of yacc.c */ #line 1928 "c-parse.y" { /* maybeasm is only here to avoid a s/r conflict */ @@ -5393,16 +6001,22 @@ yyreduce: break; case 431: + +/* Line 1455 of yacc.c */ #line 1938 "c-parse.y" { store_parm_decls(declaration_reverse((yyvsp[(3) - (5)].u.attribute))); ;} break; case 432: + +/* Line 1455 of yacc.c */ #line 1946 "c-parse.y" { (yyval.u.decl) = finish_function((yyvsp[(7) - (7)].u.stmt)); ;} break; case 433: + +/* Line 1455 of yacc.c */ #line 1951 "c-parse.y" { /* maybeasm is only here to avoid a s/r conflict */ @@ -5416,36 +6030,50 @@ yyreduce: break; case 434: + +/* Line 1455 of yacc.c */ #line 1961 "c-parse.y" { store_parm_decls(declaration_reverse((yyvsp[(3) - (5)].u.attribute))); ;} break; case 435: + +/* Line 1455 of yacc.c */ #line 1969 "c-parse.y" { (yyval.u.decl) = finish_function((yyvsp[(7) - (7)].u.stmt)); ;} break; case 438: + +/* Line 1455 of yacc.c */ #line 1984 "c-parse.y" { (yyval.u.declarator) = finish_array_or_fn_declarator((yyvsp[(1) - (2)].u.declarator), (yyvsp[(2) - (2)].u.nested)); ;} break; case 439: + +/* Line 1455 of yacc.c */ #line 1986 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(3) - (3)].u.declarator), (yyvsp[(2) - (3)].u.telement)); ;} break; case 440: + +/* Line 1455 of yacc.c */ #line 1988 "c-parse.y" { (yyval.u.declarator) = make_qualified_declarator((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.declarator), CAST(type_element, (yyvsp[(2) - (4)].u.attribute))); ;} break; case 441: + +/* Line 1455 of yacc.c */ #line 1989 "c-parse.y" { (yyval.u.declarator) = make_identifier_declarator((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 442: + +/* Line 1455 of yacc.c */ #line 1991 "c-parse.y" { (yyval.u.declarator) = make_interface_ref_declarator((yyvsp[(1) - (3)].idtoken).location, (yyvsp[(1) - (3)].idtoken).id, (yyvsp[(3) - (3)].idtoken).id); @@ -5453,41 +6081,57 @@ yyreduce: break; case 443: + +/* Line 1455 of yacc.c */ #line 2002 "c-parse.y" { (yyval.u.declarator) = finish_array_or_fn_declarator((yyvsp[(1) - (2)].u.declarator), (yyvsp[(2) - (2)].u.nested)); ;} break; case 444: + +/* Line 1455 of yacc.c */ #line 2004 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(3) - (3)].u.declarator), (yyvsp[(2) - (3)].u.telement)); ;} break; case 445: + +/* Line 1455 of yacc.c */ #line 2006 "c-parse.y" { (yyval.u.declarator) = make_identifier_declarator((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 446: + +/* Line 1455 of yacc.c */ #line 2015 "c-parse.y" { (yyval.u.declarator) = finish_array_or_fn_declarator((yyvsp[(1) - (2)].u.declarator), (yyvsp[(2) - (2)].u.nested)); ;} break; case 447: + +/* Line 1455 of yacc.c */ #line 2017 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(3) - (3)].u.declarator), (yyvsp[(2) - (3)].u.telement)); ;} break; case 448: + +/* Line 1455 of yacc.c */ #line 2019 "c-parse.y" { (yyval.u.declarator) = make_qualified_declarator((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.declarator), CAST(type_element, (yyvsp[(2) - (4)].u.attribute))); ;} break; case 449: + +/* Line 1455 of yacc.c */ #line 2021 "c-parse.y" { (yyval.u.declarator) = make_identifier_declarator((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 450: + +/* Line 1455 of yacc.c */ #line 2023 "c-parse.y" { (yyval.u.declarator) = make_interface_ref_declarator((yyvsp[(1) - (3)].idtoken).location, (yyvsp[(1) - (3)].idtoken).id, (yyvsp[(3) - (3)].idtoken).id); @@ -5495,23 +6139,31 @@ yyreduce: break; case 451: + +/* Line 1455 of yacc.c */ #line 2029 "c-parse.y" { (yyval.u.word) = new_word(pr, (yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 452: + +/* Line 1455 of yacc.c */ #line 2034 "c-parse.y" { (yyval.u.telement) = xref_tag((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(1) - (3)].u.itoken).i, (yyvsp[(2) - (3)].u.word)); if ((yyvsp[(3) - (3)].u.attribute)) warning("attributes ignored"); ;} break; case 453: + +/* Line 1455 of yacc.c */ #line 2037 "c-parse.y" { (yyval.u.telement) = xref_tag((yyvsp[(1) - (3)].u.itoken).location, kind_enum_ref, (yyvsp[(2) - (3)].u.word)); if ((yyvsp[(3) - (3)].u.attribute)) warning("attributes ignored"); ;} break; case 454: + +/* Line 1455 of yacc.c */ #line 2043 "c-parse.y" { (yyval.u.telement) = start_struct((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(1) - (4)].u.itoken).i, (yyvsp[(2) - (4)].u.word)); /* Start scope of tag before parsing components. */ @@ -5519,11 +6171,15 @@ yyreduce: break; case 455: + +/* Line 1455 of yacc.c */ #line 2047 "c-parse.y" { (yyval.u.telement) = finish_struct((yyvsp[(5) - (8)].u.telement), (yyvsp[(6) - (8)].u.decl), attribute_chain((yyvsp[(3) - (8)].u.attribute), (yyvsp[(8) - (8)].u.attribute))); ;} break; case 456: + +/* Line 1455 of yacc.c */ #line 2049 "c-parse.y" { (yyval.u.telement) = start_struct((yyvsp[(1) - (5)].u.itoken).location, kind_attribute_ref, (yyvsp[(3) - (5)].u.word)); /* Start scope of tag before parsing components. */ @@ -5531,11 +6187,15 @@ yyreduce: break; case 457: + +/* Line 1455 of yacc.c */ #line 2053 "c-parse.y" { (yyval.u.telement) = finish_struct((yyvsp[(6) - (9)].u.telement), (yyvsp[(7) - (9)].u.decl), attribute_chain((yyvsp[(4) - (9)].u.attribute), (yyvsp[(9) - (9)].u.attribute))); ;} break; case 458: + +/* Line 1455 of yacc.c */ #line 2055 "c-parse.y" { (yyval.u.telement) = finish_struct(start_struct((yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(1) - (5)].u.itoken).i, NULL), (yyvsp[(3) - (5)].u.decl), (yyvsp[(5) - (5)].u.attribute)); @@ -5543,72 +6203,100 @@ yyreduce: break; case 459: + +/* Line 1455 of yacc.c */ #line 2059 "c-parse.y" { (yyval.u.telement) = start_enum((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(2) - (4)].u.word)); ;} break; case 460: + +/* Line 1455 of yacc.c */ #line 2061 "c-parse.y" { (yyval.u.telement) = finish_enum((yyvsp[(5) - (9)].u.telement), declaration_reverse((yyvsp[(6) - (9)].u.decl)), attribute_chain((yyvsp[(3) - (9)].u.attribute), (yyvsp[(9) - (9)].u.attribute))); ;} break; case 461: + +/* Line 1455 of yacc.c */ #line 2063 "c-parse.y" { (yyval.u.telement) = start_enum((yyvsp[(1) - (2)].u.itoken).location, NULL); ;} break; case 462: + +/* Line 1455 of yacc.c */ #line 2065 "c-parse.y" { (yyval.u.telement) = finish_enum((yyvsp[(3) - (7)].u.telement), declaration_reverse((yyvsp[(4) - (7)].u.decl)), (yyvsp[(7) - (7)].u.attribute)); ;} break; case 463: + +/* Line 1455 of yacc.c */ #line 2069 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_struct_ref; ;} break; case 464: + +/* Line 1455 of yacc.c */ #line 2070 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_union_ref; ;} break; case 465: + +/* Line 1455 of yacc.c */ #line 2071 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_nx_struct_ref; ;} break; case 466: + +/* Line 1455 of yacc.c */ #line 2072 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); (yyval.u.itoken).i = kind_nx_union_ref; ;} break; case 470: + +/* Line 1455 of yacc.c */ #line 2083 "c-parse.y" { if (pedantic) pedwarn("comma at end of enumerator list"); ;} break; case 471: + +/* Line 1455 of yacc.c */ #line 2088 "c-parse.y" { (yyval.u.decl) = declaration_reverse((yyvsp[(1) - (1)].u.decl)); ;} break; case 472: + +/* Line 1455 of yacc.c */ #line 2090 "c-parse.y" { (yyval.u.decl) = declaration_reverse(declaration_chain((yyvsp[(2) - (2)].u.decl), (yyvsp[(1) - (2)].u.decl))); pedwarn("no semicolon at end of struct or union"); ;} break; case 473: + +/* Line 1455 of yacc.c */ #line 2096 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 474: + +/* Line 1455 of yacc.c */ #line 2098 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(2) - (3)].u.decl), (yyvsp[(1) - (3)].u.decl)); ;} break; case 475: + +/* Line 1455 of yacc.c */ #line 2100 "c-parse.y" { if (pedantic) pedwarn("extra semicolon in struct or union specified"); @@ -5616,11 +6304,15 @@ yyreduce: break; case 476: + +/* Line 1455 of yacc.c */ #line 2116 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (3)].u.telement), declaration_reverse((yyvsp[(3) - (3)].u.decl))); ;} break; case 477: + +/* Line 1455 of yacc.c */ #line 2118 "c-parse.y" { if (pedantic) pedwarn("ISO C doesn't support unnamed structs/unions"); @@ -5629,11 +6321,15 @@ yyreduce: break; case 478: + +/* Line 1455 of yacc.c */ #line 2123 "c-parse.y" { (yyval.u.decl) = make_data_decl((yyvsp[(1) - (3)].u.telement), declaration_reverse((yyvsp[(3) - (3)].u.decl))); ;} break; case 479: + +/* Line 1455 of yacc.c */ #line 2125 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids member declarations with no members"); @@ -5642,155 +6338,213 @@ yyreduce: break; case 480: + +/* Line 1455 of yacc.c */ #line 2130 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 481: + +/* Line 1455 of yacc.c */ #line 2132 "c-parse.y" { (yyval.u.decl) = make_extension_decl((yyvsp[(1) - (2)].u.itoken).i, (yyvsp[(1) - (2)].u.itoken).location, (yyvsp[(2) - (2)].u.decl)); ;} break; case 483: + +/* Line 1455 of yacc.c */ #line 2138 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(4) - (4)].u.decl), (yyvsp[(1) - (4)].u.decl)); ;} break; case 485: + +/* Line 1455 of yacc.c */ #line 2146 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(4) - (4)].u.decl), (yyvsp[(1) - (4)].u.decl)); ;} break; case 486: + +/* Line 1455 of yacc.c */ #line 2151 "c-parse.y" { (yyval.u.decl) = make_field((yyvsp[(1) - (2)].u.declarator), NULL, pstate.declspecs, prefix_attr((yyvsp[(2) - (2)].u.attribute))); ;} break; case 487: + +/* Line 1455 of yacc.c */ #line 2154 "c-parse.y" { (yyval.u.decl) = make_field((yyvsp[(1) - (4)].u.declarator), (yyvsp[(3) - (4)].u.expr), pstate.declspecs, prefix_attr((yyvsp[(4) - (4)].u.attribute))); ;} break; case 488: + +/* Line 1455 of yacc.c */ #line 2157 "c-parse.y" { (yyval.u.decl) = make_field(NULL, (yyvsp[(2) - (3)].u.expr), pstate.declspecs, prefix_attr((yyvsp[(3) - (3)].u.attribute))); ;} break; case 489: + +/* Line 1455 of yacc.c */ #line 2163 "c-parse.y" { (yyval.u.decl) = make_field((yyvsp[(1) - (2)].u.declarator), NULL, pstate.declspecs, prefix_attr((yyvsp[(2) - (2)].u.attribute))); ;} break; case 490: + +/* Line 1455 of yacc.c */ #line 2166 "c-parse.y" { (yyval.u.decl) = make_field((yyvsp[(1) - (4)].u.declarator), (yyvsp[(3) - (4)].u.expr), pstate.declspecs, prefix_attr((yyvsp[(4) - (4)].u.attribute))); ;} break; case 491: + +/* Line 1455 of yacc.c */ #line 2169 "c-parse.y" { (yyval.u.decl) = make_field(NULL, (yyvsp[(2) - (3)].u.expr), pstate.declspecs, prefix_attr((yyvsp[(3) - (3)].u.attribute))); ;} break; case 493: + +/* Line 1455 of yacc.c */ #line 2176 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(3) - (3)].u.decl), (yyvsp[(1) - (3)].u.decl)); ;} break; case 494: + +/* Line 1455 of yacc.c */ #line 2178 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 495: + +/* Line 1455 of yacc.c */ #line 2184 "c-parse.y" { (yyval.u.decl) = make_enumerator((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id, NULL); ;} break; case 496: + +/* Line 1455 of yacc.c */ #line 2186 "c-parse.y" { (yyval.u.decl) = make_enumerator((yyvsp[(1) - (3)].idtoken).location, (yyvsp[(1) - (3)].idtoken).id, (yyvsp[(3) - (3)].u.expr)); ;} break; case 497: + +/* Line 1455 of yacc.c */ #line 2191 "c-parse.y" { pending_xref_error(); ;} break; case 498: + +/* Line 1455 of yacc.c */ #line 2193 "c-parse.y" { (yyval.u.type) = make_type((yyvsp[(1) - (3)].u.telement), (yyvsp[(3) - (3)].u.declarator)); ;} break; case 499: + +/* Line 1455 of yacc.c */ #line 2198 "c-parse.y" { (yyval.u.declarator) = NULL; ;} break; case 504: + +/* Line 1455 of yacc.c */ #line 2210 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(3) - (3)].u.declarator), (yyvsp[(2) - (3)].u.telement)); ;} break; case 505: + +/* Line 1455 of yacc.c */ #line 2215 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (2)].u.itoken).location, NULL, (yyvsp[(2) - (2)].u.telement)); ;} break; case 506: + +/* Line 1455 of yacc.c */ #line 2217 "c-parse.y" { (yyval.u.declarator) = make_pointer_declarator((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(3) - (3)].u.declarator), (yyvsp[(2) - (3)].u.telement)); ;} break; case 507: + +/* Line 1455 of yacc.c */ #line 2222 "c-parse.y" { (yyval.u.declarator) = make_qualified_declarator((yyvsp[(1) - (4)].u.itoken).location, (yyvsp[(3) - (4)].u.declarator), CAST(type_element, (yyvsp[(2) - (4)].u.attribute))); ;} break; case 508: + +/* Line 1455 of yacc.c */ #line 2224 "c-parse.y" { (yyval.u.declarator) = finish_array_or_fn_declarator((yyvsp[(1) - (2)].u.declarator), (yyvsp[(2) - (2)].u.nested)); ;} break; case 509: + +/* Line 1455 of yacc.c */ #line 2226 "c-parse.y" { (yyval.u.declarator) = finish_array_or_fn_declarator(NULL, (yyvsp[(1) - (1)].u.nested)); ;} break; case 514: + +/* Line 1455 of yacc.c */ #line 2241 "c-parse.y" { (yyval.u.nested) = CAST(nested_declarator, new_function_declarator(pr, (yyvsp[(2) - (4)].u.itoken).location, NULL, (yyvsp[(3) - (4)].u.decl), (yyvsp[(1) - (4)].u.decl), (yyvsp[(4) - (4)].u.telement), NULL)); ;} break; case 515: + +/* Line 1455 of yacc.c */ #line 2244 "c-parse.y" { (yyval.u.nested) = CAST(nested_declarator, new_function_declarator(pr, (yyvsp[(1) - (3)].u.itoken).location, NULL, (yyvsp[(2) - (3)].u.decl), NULL, (yyvsp[(3) - (3)].u.telement), NULL)); ;} break; case 516: + +/* Line 1455 of yacc.c */ #line 2250 "c-parse.y" { (yyval.u.nested) = CAST(nested_declarator, new_function_declarator(pr, (yyvsp[(1) - (3)].u.itoken).location, NULL, (yyvsp[(2) - (3)].u.decl), NULL, (yyvsp[(3) - (3)].u.telement), NULL)); ;} break; case 517: + +/* Line 1455 of yacc.c */ #line 2256 "c-parse.y" { (yyval.u.nested) = CAST(nested_declarator, new_array_declarator(pr, (yyvsp[(1) - (3)].u.itoken).location, NULL, (yyvsp[(2) - (3)].u.expr))); ;} break; case 518: + +/* Line 1455 of yacc.c */ #line 2258 "c-parse.y" { (yyval.u.nested) = CAST(nested_declarator, new_array_declarator(pr, (yyvsp[(1) - (2)].u.itoken).location, NULL, NULL)); ;} break; case 519: + +/* Line 1455 of yacc.c */ #line 2267 "c-parse.y" { if (pedantic && (yyvsp[(1) - (1)].u.istmt).i) @@ -5807,31 +6561,43 @@ yyreduce: break; case 521: + +/* Line 1455 of yacc.c */ #line 2284 "c-parse.y" { (yyval.u.istmt).i = (yyvsp[(2) - (2)].u.istmt).i; (yyval.u.istmt).stmt = chain_with_labels((yyvsp[(1) - (2)].u.istmt).stmt, (yyvsp[(2) - (2)].u.istmt).stmt); ;} break; case 522: + +/* Line 1455 of yacc.c */ #line 2286 "c-parse.y" { (yyval.u.istmt).i = 0; (yyval.u.istmt).stmt = make_error_stmt(); ;} break; case 523: + +/* Line 1455 of yacc.c */ #line 2290 "c-parse.y" { (yyval.u.stmt) = NULL; ;} break; case 526: + +/* Line 1455 of yacc.c */ #line 2299 "c-parse.y" { pushlevel(FALSE); ;} break; case 527: + +/* Line 1455 of yacc.c */ #line 2305 "c-parse.y" { (yyval.u.id_label) = NULL; ;} break; case 528: + +/* Line 1455 of yacc.c */ #line 2307 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids label declarations"); @@ -5839,59 +6605,81 @@ yyreduce: break; case 530: + +/* Line 1455 of yacc.c */ #line 2314 "c-parse.y" { (yyval.u.id_label) = id_label_chain((yyvsp[(2) - (2)].u.id_label), (yyvsp[(1) - (2)].u.id_label)); ;} break; case 531: + +/* Line 1455 of yacc.c */ #line 2319 "c-parse.y" { (yyval.u.id_label) = (yyvsp[(2) - (3)].u.id_label); ;} break; case 533: + +/* Line 1455 of yacc.c */ #line 2326 "c-parse.y" { (yyval.u.stmt) = (yyvsp[(2) - (2)].u.stmt); ;} break; case 534: + +/* Line 1455 of yacc.c */ #line 2330 "c-parse.y" { (yyval.u.itoken) = (yyvsp[(1) - (1)].u.itoken); compstmt_count++; ;} break; case 535: + +/* Line 1455 of yacc.c */ #line 2335 "c-parse.y" { (yyval.u.stmt) = CAST(statement, new_compound_stmt(pr, (yyvsp[(1) - (3)].u.itoken).location, NULL, NULL, NULL, poplevel())); ;} break; case 536: + +/* Line 1455 of yacc.c */ #line 2337 "c-parse.y" { (yyval.u.stmt) = CAST(statement, new_compound_stmt(pr, (yyvsp[(1) - (6)].u.itoken).location, (yyvsp[(3) - (6)].u.id_label), declaration_reverse((yyvsp[(4) - (6)].u.decl)), (yyvsp[(5) - (6)].u.stmt), poplevel())); ;} break; case 537: + +/* Line 1455 of yacc.c */ #line 2340 "c-parse.y" { poplevel(); (yyval.u.stmt) = make_error_stmt(); ;} break; case 538: + +/* Line 1455 of yacc.c */ #line 2343 "c-parse.y" { (yyval.u.stmt) = CAST(statement, new_compound_stmt(pr, (yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(3) - (5)].u.id_label), NULL, (yyvsp[(4) - (5)].u.stmt), poplevel())); ;} break; case 539: + +/* Line 1455 of yacc.c */ #line 2349 "c-parse.y" { (yyval.u.istmt).stmt = CAST(statement, new_if_stmt(pr, (yyvsp[(1) - (2)].u.iexpr).expr->location, (yyvsp[(1) - (2)].u.iexpr).expr, (yyvsp[(2) - (2)].u.stmt), NULL)); (yyval.u.istmt).i = (yyvsp[(1) - (2)].u.iexpr).i; ;} break; case 540: + +/* Line 1455 of yacc.c */ #line 2351 "c-parse.y" { (yyval.u.istmt).i = (yyvsp[(1) - (2)].u.iexpr).i; (yyval.u.istmt).stmt = make_error_stmt(); ;} break; case 541: + +/* Line 1455 of yacc.c */ #line 2356 "c-parse.y" { (yyval.u.iexpr).i = stmt_count; (yyval.u.iexpr).expr = (yyvsp[(3) - (4)].u.expr); @@ -5899,6 +6687,8 @@ yyreduce: break; case 542: + +/* Line 1455 of yacc.c */ #line 2366 "c-parse.y" { stmt_count++; compstmt_count++; @@ -5908,32 +6698,44 @@ yyreduce: break; case 543: + +/* Line 1455 of yacc.c */ #line 2372 "c-parse.y" { (yyval.u.cstmt) = (yyvsp[(2) - (4)].u.cstmt); (yyval.u.cstmt)->stmt = (yyvsp[(3) - (4)].u.stmt); ;} break; case 544: + +/* Line 1455 of yacc.c */ #line 2378 "c-parse.y" { (yyval.u.stmt) = (yyvsp[(1) - (1)].u.stmt); ;} break; case 545: + +/* Line 1455 of yacc.c */ #line 2380 "c-parse.y" { (yyval.u.stmt) = CAST(statement, new_labeled_stmt(pr, (yyvsp[(1) - (2)].u.label)->location, (yyvsp[(1) - (2)].u.label), (yyvsp[(2) - (2)].u.stmt))); ;} break; case 546: + +/* Line 1455 of yacc.c */ #line 2385 "c-parse.y" { (yyval.u.istmt).i = 0; (yyval.u.istmt).stmt = (yyvsp[(1) - (1)].u.stmt); ;} break; case 547: + +/* Line 1455 of yacc.c */ #line 2387 "c-parse.y" { (yyval.u.istmt).i = 1; (yyval.u.istmt).stmt = CAST(statement, new_labeled_stmt(pr, (yyvsp[(1) - (1)].u.label)->location, (yyvsp[(1) - (1)].u.label), NULL)); ;} break; case 548: + +/* Line 1455 of yacc.c */ #line 2391 "c-parse.y" { atomic_stmt last_atomic = current.in_atomic; @@ -5944,6 +6746,8 @@ yyreduce: break; case 549: + +/* Line 1455 of yacc.c */ #line 2398 "c-parse.y" { atomic_stmt this_atomic = current.in_atomic; @@ -5958,27 +6762,37 @@ yyreduce: break; case 551: + +/* Line 1455 of yacc.c */ #line 2412 "c-parse.y" { (yyval.u.stmt) = make_error_stmt(); ;} break; case 552: + +/* Line 1455 of yacc.c */ #line 2418 "c-parse.y" { stmt_count++; (yyval.u.stmt) = (yyvsp[(1) - (1)].u.stmt); ;} break; case 553: + +/* Line 1455 of yacc.c */ #line 2420 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_expression_stmt(pr, (yyvsp[(1) - (2)].u.expr)->location, (yyvsp[(1) - (2)].u.expr))); ;} break; case 554: + +/* Line 1455 of yacc.c */ #line 2423 "c-parse.y" { (yyvsp[(1) - (2)].u.istmt).i = stmt_count; ;} break; case 555: + +/* Line 1455 of yacc.c */ #line 2425 "c-parse.y" { if (extra_warnings && stmt_count == (yyvsp[(1) - (4)].u.istmt).i) warning("empty body in an else-statement"); @@ -5989,6 +6803,8 @@ yyreduce: break; case 556: + +/* Line 1455 of yacc.c */ #line 2432 "c-parse.y" { /* This warning is here instead of in simple_if, because we do not want a warning if an empty if is followed by an @@ -6001,16 +6817,22 @@ yyreduce: break; case 557: + +/* Line 1455 of yacc.c */ #line 2441 "c-parse.y" { (yyval.u.stmt) = make_error_stmt(); ;} break; case 558: + +/* Line 1455 of yacc.c */ #line 2443 "c-parse.y" { stmt_count++; ;} break; case 559: + +/* Line 1455 of yacc.c */ #line 2445 "c-parse.y" { check_condition("while", (yyvsp[(4) - (5)].u.expr)); (yyval.u.cstmt) = CAST(conditional_stmt, @@ -6020,6 +6842,8 @@ yyreduce: break; case 560: + +/* Line 1455 of yacc.c */ #line 2451 "c-parse.y" { (yyval.u.stmt) = CAST(statement, (yyvsp[(6) - (7)].u.cstmt)); (yyvsp[(6) - (7)].u.cstmt)->stmt = (yyvsp[(7) - (7)].u.stmt); @@ -6027,6 +6851,8 @@ yyreduce: break; case 561: + +/* Line 1455 of yacc.c */ #line 2455 "c-parse.y" { (yyval.u.stmt) = CAST(statement, (yyvsp[(1) - (5)].u.cstmt)); (yyvsp[(1) - (5)].u.cstmt)->condition = (yyvsp[(3) - (5)].u.expr); @@ -6037,28 +6863,38 @@ yyreduce: break; case 562: + +/* Line 1455 of yacc.c */ #line 2462 "c-parse.y" { (yyval.u.stmt) = make_error_stmt(); pop_loop(); ;} break; case 563: + +/* Line 1455 of yacc.c */ #line 2464 "c-parse.y" { stmt_count++; ;} break; case 564: + +/* Line 1455 of yacc.c */ #line 2465 "c-parse.y" { if ((yyvsp[(6) - (7)].u.expr)) check_condition("for", (yyvsp[(6) - (7)].u.expr)); ;} break; case 565: + +/* Line 1455 of yacc.c */ #line 2467 "c-parse.y" { (yyval.u.for_stmt) = new_for_stmt(pr, (yyvsp[(1) - (10)].u.itoken).location, (yyvsp[(3) - (10)].u.expr), (yyvsp[(6) - (10)].u.expr), (yyvsp[(9) - (10)].u.expr), NULL); push_loop(CAST(statement, (yyval.u.for_stmt))); ;} break; case 566: + +/* Line 1455 of yacc.c */ #line 2470 "c-parse.y" { (yyval.u.stmt) = CAST(statement, (yyvsp[(11) - (12)].u.for_stmt)); (yyvsp[(11) - (12)].u.for_stmt)->stmt = (yyvsp[(12) - (12)].u.stmt); @@ -6066,6 +6902,8 @@ yyreduce: break; case 567: + +/* Line 1455 of yacc.c */ #line 2474 "c-parse.y" { stmt_count++; check_switch((yyvsp[(3) - (4)].u.expr)); (yyval.u.cstmt) = CAST(conditional_stmt, @@ -6074,6 +6912,8 @@ yyreduce: break; case 568: + +/* Line 1455 of yacc.c */ #line 2479 "c-parse.y" { (yyval.u.stmt) = CAST(statement, (yyvsp[(5) - (6)].u.cstmt)); (yyvsp[(5) - (6)].u.cstmt)->stmt = (yyvsp[(6) - (6)].u.stmt); @@ -6081,6 +6921,8 @@ yyreduce: break; case 569: + +/* Line 1455 of yacc.c */ #line 2483 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_break_stmt(pr, (yyvsp[(1) - (2)].u.itoken).location)); @@ -6089,6 +6931,8 @@ yyreduce: break; case 570: + +/* Line 1455 of yacc.c */ #line 2488 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_continue_stmt(pr, (yyvsp[(1) - (2)].u.itoken).location)); @@ -6097,18 +6941,24 @@ yyreduce: break; case 571: + +/* Line 1455 of yacc.c */ #line 2493 "c-parse.y" { stmt_count++; (yyval.u.stmt) = make_void_return((yyvsp[(1) - (2)].u.itoken).location); ;} break; case 572: + +/* Line 1455 of yacc.c */ #line 2496 "c-parse.y" { stmt_count++; (yyval.u.stmt) = make_return((yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.expr)); ;} break; case 573: + +/* Line 1455 of yacc.c */ #line 2499 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_asm_stmt(pr, (yyvsp[(1) - (6)].u.itoken).location, (yyvsp[(4) - (6)].u.expr), NULL, @@ -6116,6 +6966,8 @@ yyreduce: break; case 574: + +/* Line 1455 of yacc.c */ #line 2504 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_asm_stmt(pr, (yyvsp[(1) - (8)].u.itoken).location, (yyvsp[(4) - (8)].u.expr), (yyvsp[(6) - (8)].u.asm_operand), NULL, @@ -6123,18 +6975,24 @@ yyreduce: break; case 575: + +/* Line 1455 of yacc.c */ #line 2509 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_asm_stmt(pr, (yyvsp[(1) - (10)].u.itoken).location, (yyvsp[(4) - (10)].u.expr), (yyvsp[(6) - (10)].u.asm_operand), (yyvsp[(8) - (10)].u.asm_operand), NULL, (yyvsp[(2) - (10)].u.telement))); ;} break; case 576: + +/* Line 1455 of yacc.c */ #line 2514 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_asm_stmt(pr, (yyvsp[(1) - (12)].u.itoken).location, (yyvsp[(4) - (12)].u.expr), (yyvsp[(6) - (12)].u.asm_operand), (yyvsp[(8) - (12)].u.asm_operand), (yyvsp[(10) - (12)].u.string), (yyvsp[(2) - (12)].u.telement))); ;} break; case 577: + +/* Line 1455 of yacc.c */ #line 2517 "c-parse.y" { stmt_count++; (yyval.u.stmt) = CAST(statement, new_goto_stmt(pr, (yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.id_label))); @@ -6143,6 +7001,8 @@ yyreduce: break; case 578: + +/* Line 1455 of yacc.c */ #line 2522 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids `goto *expr;'"); @@ -6153,80 +7013,110 @@ yyreduce: break; case 580: + +/* Line 1455 of yacc.c */ #line 2529 "c-parse.y" { (yyval.u.stmt) = CAST(statement, new_empty_stmt(pr, (yyvsp[(1) - (1)].u.itoken).location)); ;} break; case 581: + +/* Line 1455 of yacc.c */ #line 2537 "c-parse.y" { (yyval.u.label) = CAST(label, new_case_label(pr, (yyvsp[(1) - (3)].u.itoken).location, (yyvsp[(2) - (3)].u.expr), NULL)); check_case((yyval.u.label)); ;} break; case 582: + +/* Line 1455 of yacc.c */ #line 2540 "c-parse.y" { (yyval.u.label) = CAST(label, new_case_label(pr, (yyvsp[(1) - (5)].u.itoken).location, (yyvsp[(2) - (5)].u.expr), (yyvsp[(4) - (5)].u.expr))); check_case((yyval.u.label)); ;} break; case 583: + +/* Line 1455 of yacc.c */ #line 2543 "c-parse.y" { (yyval.u.label) = CAST(label, new_default_label(pr, (yyvsp[(1) - (2)].u.itoken).location)); check_default((yyval.u.label)); ;} break; case 584: + +/* Line 1455 of yacc.c */ #line 2546 "c-parse.y" { (yyval.u.label) = CAST(label, (yyvsp[(1) - (2)].u.id_label)); define_label((yyvsp[(1) - (2)].u.id_label)); ;} break; case 585: + +/* Line 1455 of yacc.c */ #line 2554 "c-parse.y" { (yyval.u.telement) = NULL; ;} break; case 587: + +/* Line 1455 of yacc.c */ #line 2560 "c-parse.y" { (yyval.u.expr) = NULL; ;} break; case 589: + +/* Line 1455 of yacc.c */ #line 2568 "c-parse.y" { (yyval.u.asm_operand) = NULL; ;} break; case 592: + +/* Line 1455 of yacc.c */ #line 2575 "c-parse.y" { (yyval.u.asm_operand) = asm_operand_chain((yyvsp[(1) - (3)].u.asm_operand), (yyvsp[(3) - (3)].u.asm_operand)); ;} break; case 593: + +/* Line 1455 of yacc.c */ #line 2580 "c-parse.y" { (yyval.u.asm_operand) = new_asm_operand(pr, (yyvsp[(1) - (4)].u.string)->location, NULL, (yyvsp[(1) - (4)].u.string), (yyvsp[(3) - (4)].u.expr)); ;} break; case 594: + +/* Line 1455 of yacc.c */ #line 2582 "c-parse.y" { (yyval.u.asm_operand) = new_asm_operand(pr, (yyvsp[(1) - (7)].u.itoken).location, (yyvsp[(2) - (7)].u.word), (yyvsp[(4) - (7)].u.string), (yyvsp[(6) - (7)].u.expr)); ;} break; case 595: + +/* Line 1455 of yacc.c */ #line 2587 "c-parse.y" { (yyval.u.string) = (yyvsp[(1) - (1)].u.string); ;} break; case 596: + +/* Line 1455 of yacc.c */ #line 2589 "c-parse.y" { (yyval.u.string) = string_chain((yyvsp[(1) - (3)].u.string), (yyvsp[(3) - (3)].u.string)); ;} break; case 597: + +/* Line 1455 of yacc.c */ #line 2595 "c-parse.y" { pushlevel(TRUE); ;} break; case 598: + +/* Line 1455 of yacc.c */ #line 2597 "c-parse.y" { (yyval.u.decl) = (yyvsp[(2) - (2)].u.decl); /* poplevel() is done when building the declarator */ @@ -6234,11 +7124,15 @@ yyreduce: break; case 599: + +/* Line 1455 of yacc.c */ #line 2603 "c-parse.y" { (yyval.u.decl) = (yyvsp[(1) - (2)].u.decl); ;} break; case 600: + +/* Line 1455 of yacc.c */ #line 2605 "c-parse.y" { if (pedantic) pedwarn("ANSI C forbids forward parameter declarations"); @@ -6247,21 +7141,29 @@ yyreduce: break; case 601: + +/* Line 1455 of yacc.c */ #line 2610 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (4)].u.decl), (yyvsp[(4) - (4)].u.decl)); ;} break; case 602: + +/* Line 1455 of yacc.c */ #line 2612 "c-parse.y" { (yyval.u.decl) = make_error_decl(); ;} break; case 603: + +/* Line 1455 of yacc.c */ #line 2618 "c-parse.y" { (yyval.u.decl) = NULL; ;} break; case 604: + +/* Line 1455 of yacc.c */ #line 2620 "c-parse.y" { (yyval.u.decl) = make_error_decl(); /* Gcc used to allow this as an extension. However, it does @@ -6275,113 +7177,157 @@ yyreduce: break; case 605: + +/* Line 1455 of yacc.c */ #line 2630 "c-parse.y" { (yyval.u.decl) = (yyvsp[(1) - (1)].u.decl); ;} break; case 606: + +/* Line 1455 of yacc.c */ #line 2632 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (3)].u.decl), CAST(declaration, new_ellipsis_decl(pr, (yyvsp[(3) - (3)].u.itoken).location))); ;} break; case 608: + +/* Line 1455 of yacc.c */ #line 2638 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (3)].u.decl), (yyvsp[(3) - (3)].u.decl)); ;} break; case 609: + +/* Line 1455 of yacc.c */ #line 2645 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 610: + +/* Line 1455 of yacc.c */ #line 2647 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 611: + +/* Line 1455 of yacc.c */ #line 2649 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (3)].u.declarator), (yyvsp[(1) - (3)].u.telement), NULL); ;} break; case 612: + +/* Line 1455 of yacc.c */ #line 2651 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 613: + +/* Line 1455 of yacc.c */ #line 2653 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 614: + +/* Line 1455 of yacc.c */ #line 2655 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (3)].u.declarator), (yyvsp[(1) - (3)].u.telement), NULL); ;} break; case 615: + +/* Line 1455 of yacc.c */ #line 2657 "c-parse.y" { (yyval.u.decl) = declare_parameter((yyvsp[(3) - (4)].u.declarator), (yyvsp[(1) - (4)].u.telement), (yyvsp[(4) - (4)].u.attribute)); ;} break; case 616: + +/* Line 1455 of yacc.c */ #line 2660 "c-parse.y" { pending_xref_error(); ;} break; case 617: + +/* Line 1455 of yacc.c */ #line 2666 "c-parse.y" { pushlevel(TRUE); ;} break; case 618: + +/* Line 1455 of yacc.c */ #line 2668 "c-parse.y" { (yyval.u.decl) = (yyvsp[(2) - (2)].u.decl); /* poplevel is done when building the declarator */ ;} break; case 620: + +/* Line 1455 of yacc.c */ #line 2674 "c-parse.y" { (yyval.u.decl) = (yyvsp[(1) - (2)].u.decl); ;} break; case 621: + +/* Line 1455 of yacc.c */ #line 2680 "c-parse.y" { (yyval.u.decl) = (yyvsp[(1) - (1)].u.decl); ;} break; case 622: + +/* Line 1455 of yacc.c */ #line 2682 "c-parse.y" { (yyval.u.decl) = declaration_chain((yyvsp[(1) - (3)].u.decl), (yyvsp[(3) - (3)].u.decl)); ;} break; case 623: + +/* Line 1455 of yacc.c */ #line 2686 "c-parse.y" { (yyval.u.decl) = declare_old_parameter((yyvsp[(1) - (1)].idtoken).location, (yyvsp[(1) - (1)].idtoken).id); ;} break; case 624: + +/* Line 1455 of yacc.c */ #line 2691 "c-parse.y" { (yyval.u.id_label) = (yyvsp[(1) - (1)].u.id_label); declare_label((yyvsp[(1) - (1)].u.id_label)); ;} break; case 625: + +/* Line 1455 of yacc.c */ #line 2693 "c-parse.y" { (yyval.u.id_label) = id_label_chain((yyvsp[(3) - (3)].u.id_label), (yyvsp[(1) - (3)].u.id_label)); declare_label((yyvsp[(3) - (3)].u.id_label)); ;} break; case 626: + +/* Line 1455 of yacc.c */ #line 2699 "c-parse.y" { (yyval.u.telement) = NULL; ;} break; case 627: + +/* Line 1455 of yacc.c */ #line 2700 "c-parse.y" { (yyval.u.telement) = (yyvsp[(1) - (1)].u.telement); ;} break; case 628: + +/* Line 1455 of yacc.c */ #line 2705 "c-parse.y" { (yyval.u.itoken).location = (yyvsp[(1) - (1)].u.itoken).location; (yyval.u.itoken).i = pedantic; @@ -6389,33 +7335,44 @@ yyreduce: break; case 629: + +/* Line 1455 of yacc.c */ #line 2712 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_rid(pr, (yyvsp[(1) - (1)].u.itoken).location, (yyvsp[(1) - (1)].u.itoken).i)); ;} break; case 630: + +/* Line 1455 of yacc.c */ #line 2714 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_rid(pr, (yyvsp[(1) - (1)].u.itoken).location, RID_DEFAULT)); ;} break; case 631: + +/* Line 1455 of yacc.c */ #line 2719 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_qualifier(pr, (yyvsp[(1) - (1)].u.itoken).location, (yyvsp[(1) - (1)].u.itoken).i)); ;} break; case 632: + +/* Line 1455 of yacc.c */ #line 2724 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_qualifier(pr, (yyvsp[(1) - (1)].u.itoken).location, (yyvsp[(1) - (1)].u.itoken).i)); ;} break; case 633: + +/* Line 1455 of yacc.c */ #line 2729 "c-parse.y" { (yyval.u.telement) = CAST(type_element, new_rid(pr, (yyvsp[(1) - (1)].u.itoken).location, (yyvsp[(1) - (1)].u.itoken).i)); ;} break; -/* Line 1267 of yacc.c. */ -#line 6419 "c-parse.tab.c" + +/* Line 1455 of yacc.c */ +#line 7376 "c-parse.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -6426,7 +7383,6 @@ yyreduce: *++yyvsp = yyval; - /* Now `shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule number reduced by. */ @@ -6491,7 +7447,7 @@ yyerrlab: if (yyerrstatus == 3) { - /* If just tried and failed to reuse look-ahead token after an + /* If just tried and failed to reuse lookahead token after an error, discard it. */ if (yychar <= YYEOF) @@ -6508,7 +7464,7 @@ yyerrlab: } } - /* Else will try to reuse look-ahead token after shifting the error + /* Else will try to reuse lookahead token after shifting the error token. */ goto yyerrlab1; @@ -6565,9 +7521,6 @@ yyerrlab1: YY_STACK_PRINT (yyss, yyssp); } - if (yyn == YYFINAL) - YYACCEPT; - *++yyvsp = yylval; @@ -6592,7 +7545,7 @@ yyabortlab: yyresult = 1; goto yyreturn; -#ifndef yyoverflow +#if !defined(yyoverflow) || YYERROR_VERBOSE /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ @@ -6603,7 +7556,7 @@ yyexhaustedlab: #endif yyreturn: - if (yychar != YYEOF && yychar != YYEMPTY) + if (yychar != YYEMPTY) yydestruct ("Cleanup: discarding lookahead", yytoken, &yylval); /* Do not reclaim the symbols of the rule which action triggered @@ -6629,6 +7582,8 @@ yyreturn: } + +/* Line 1675 of yacc.c */ #line 2733 "c-parse.y"