parser.tab.cc File Reference

This graph shows which files directly or indirectly include this file:


Classes

union  yyalloc

Defines

#define YYBISON   1
#define YYBISON_VERSION   "2.2"
#define YYSKELETON_NAME   "yacc.c"
#define YYPURE   1
#define YYLSP_NEEDED   0
#define TOK_EOF   0
#define _LOWEST_PREC   258
#define TOK_LITERAL   259
#define TOK_ASM   260
#define TOK_AUTO   261
#define TOK_BOOL   262
#define TOK_BREAK   263
#define TOK_CASE   264
#define TOK_CATCH   265
#define TOK_CHAR   266
#define TOK_CLASS   267
#define TOK_CONST   268
#define TOK_CONST_CAST   269
#define TOK_CONTINUE   270
#define TOK_DEFAULT   271
#define TOK_DELETE   272
#define TOK_DO   273
#define TOK_DOUBLE   274
#define TOK_DYNAMIC_CAST   275
#define TOK_ELSE   276
#define TOK_ENUM   277
#define TOK_EXPLICIT   278
#define TOK_EXPORT   279
#define TOK_EXTERN   280
#define TOK_FLOAT   281
#define TOK_FOR   282
#define TOK_FRIEND   283
#define TOK_GOTO   284
#define TOK_IF   285
#define TOK_INLINE   286
#define TOK_INT   287
#define TOK_LONG   288
#define TOK_MUTABLE   289
#define TOK_NAMESPACE   290
#define TOK_NEW   291
#define TOK_OPERATOR   292
#define TOK_PRIVATE   293
#define TOK_PROTECTED   294
#define TOK_PUBLIC   295
#define TOK_REGISTER   296
#define TOK_REINTERPRET_CAST   297
#define TOK_RETURN   298
#define TOK_SHORT   299
#define TOK_SIGNED   300
#define TOK_SIZEOF   301
#define TOK_STATIC   302
#define TOK_STATIC_CAST   303
#define TOK_STRUCT   304
#define TOK_SWITCH   305
#define TOK_TEMPLATE   306
#define TOK_THIS   307
#define TOK_THROW   308
#define TOK_TRY   309
#define TOK_TYPEDEF   310
#define TOK_TYPEID   311
#define TOK_TYPENAME   312
#define TOK_UNION   313
#define TOK_UNSIGNED   314
#define TOK_USING   315
#define TOK_VIRTUAL   316
#define TOK_VOID   317
#define TOK_VOLATILE   318
#define TOK_WCHAR_T   319
#define TOK_WHILE   320
#define TOK_IDENT   321
#define _TYPEDEF_NAME_ID   322
#define _ENUM_NAME_ID   323
#define _CLASS_NAME_ID   324
#define _TEMPL_FORCED   325
#define _NONTYPE   326
#define _TEMPL_TYPE   327
#define _TEMPL_NONTYPE   328
#define _UNKNOWN_ID   329
#define _NMSPC_NAME   330
#define _PAD_FIRST   331
#define TOK_PAD_EXPR_STMT   332
#define TOK_PAD_BLOCK_DECL   333
#define TOK_PAD_SIMPLE_DECL   334
#define TOK_PAD_LABEL   335
#define TOK_PAD_COND_EXPR   336
#define TOK_PAD_COND_DECL   337
#define TOK_PAD_FOR_COND_EXPR   338
#define TOK_PAD_FOR_COND_DECL   339
#define TOK_PAD_SIZEOF_EXPR   340
#define TOK_PAD_SIZEOF_TYPE_ID   341
#define TOK_PAD_TYPE_ID_RPAR_CAST_EXPR   342
#define TOK_PAD_EXPR_RPAR   343
#define TOK_PAD_TYPE_ID_RPAR   344
#define TOK_PAD_LPAR_EXPR_LIST_RPAR   345
#define TOK_PAD_EXPR_LIST_RPAR   346
#define TOK_PAD_TEMPL_ARG_EXPR   347
#define TOK_PAD_TEMPL_ARG_TYPE_ID   348
#define TOK_PAD_PARAM_DECL_CLAUSE   349
#define TOK_PAD_PARAM_DCLTOR   350
#define TOK_PAD_TEMPL_PARAM_TYPE   351
#define TOK_PAD_TEMPL_PARAM_NONTYPE   352
#define TOK_PAD_CTOR   353
#define TOK_PAD_UNNAMED_BITFIELD   354
#define TOK_PAD_MEMBER_FUNC   355
#define TOK_PAD_MEMBER_OBJECT   356
#define TOK_PAD_TEMPL_OP   357
#define TOK_PAD_OP_NOT_TEMPL   358
#define TOK_PAD_TO_BE_DISCARDED   359
#define _PAD_LAST   360
#define _START_FIRST   361
#define TOK_START_PROGRAM   362
#define TOK_START_EXPR_STMT   363
#define TOK_START_BLOCK_DECL   364
#define TOK_START_SIMPLE_DECL   365
#define TOK_START_LABEL   366
#define TOK_START_COND_EXPR   367
#define TOK_START_COND_DECL   368
#define TOK_START_FOR_COND_EXPR   369
#define TOK_START_FOR_COND_DECL   370
#define TOK_START_SIZEOF_EXPR   371
#define TOK_START_SIZEOF_TYPE_ID   372
#define TOK_START_EXPR_RPAR   373
#define TOK_START_TYPE_ID_RPAR   374
#define TOK_START_TYPE_ID_RPAR_CAST_EXPR   375
#define TOK_START_LPAR_EXPR_LIST_RPAR   376
#define TOK_START_EXPR_LIST_RPAR   377
#define TOK_START_TEMPL_ARG_EXPR   378
#define TOK_START_TEMPL_ARG_TYPE_ID   379
#define TOK_START_PARAM_DECL_CLAUSE   380
#define TOK_START_PARAM_DCLTOR   381
#define TOK_START_TEMPL_PARAM_TYPE   382
#define TOK_START_TEMPL_PARAM_NONTYPE   383
#define TOK_START_CTOR   384
#define TOK_START_TO_BE_DISCARDED   385
#define _START_LAST   386
#define _PACK_FIRST   387
#define TOK_PACK_BODY   388
#define TOK_PACK_ERROR_COND   389
#define TOK_PACK_ERROR_FOR_COND   390
#define TOK_PACK_ERROR_STMT   391
#define _PACK_LAST   392
#define TOK_DOT   393
#define TOK_RIGHT_BRACKET   394
#define TOK_LEFT_BRACKET   395
#define TOK_EXCLAMATION   396
#define TOK_TILDE   397
#define TOK_PERCENT   398
#define TOK_SLASH   399
#define TOK_STAR   400
#define TOK_MINUS   401
#define TOK_PLUS   402
#define TOK_GT   403
#define TOK_LT   404
#define TOK_AMP   405
#define TOK_HAT   406
#define TOK_VBAR   407
#define TOK_QMARK   408
#define TOK_COMMA   409
#define TOK_RIGHT_BRACE   410
#define TOK_LEFT_BRACE   411
#define TOK_SEMICOLON   412
#define TOK_RIGHT_PAR   413
#define TOK_LEFT_PAR   414
#define TOK_EQ   415
#define TOK_COLON   416
#define TOK_DOT_DOT_DOT   417
#define TOK_MINUS_GT   418
#define TOK_MINUS_GT_STAR   419
#define TOK_DOT_STAR   420
#define TOK_GT_EQ   421
#define TOK_LT_EQ   422
#define TOK_EXCLAMATION_EQ   423
#define TOK_EQ_EQ   424
#define TOK_AMP_AMP   425
#define TOK_VBAR_VBAR   426
#define TOK_GT_GT   427
#define TOK_LT_LT   428
#define TOK_MINUS_MINUS   429
#define TOK_PLUS_PLUS   430
#define TOK_LT_LT_EQ   431
#define TOK_GT_GT_EQ   432
#define TOK_VBAR_EQ   433
#define TOK_AMP_EQ   434
#define TOK_HAT_EQ   435
#define TOK_PERCENT_EQ   436
#define TOK_SLASH_EQ   437
#define TOK_STAR_EQ   438
#define TOK_MINUS_EQ   439
#define TOK_PLUS_EQ   440
#define TOK_COLON_COLON   441
#define _HIGHEST_PREC   442
#define TOK_ERROR   443
#define TOK_TEXT   444
#define YYSTYPE   semval
#define clear_lookahead()
#define try_begin(_txt)
#define try_end_fail()
#define try_end_skip()
#define try_and_commit(start_token_value, commit_token_value, result_var)
#define loc(x)   ((x)->location_get())
#define UNWTOK(x)   ((x)->wrapped_token_get())
#define EMPTY_LIST(type)   ::lestes::std::list< srp< type > >::create()
#define EMPTY_WRAPPER(wrapper_type, l, type)   wrapper_type::create( (l), EMPTY_LIST(type) )
#define NEW_WRAPPER_W1(dest, wrapper_type, l, type, item)
#define LIST_APPEND(list, item)   (list)->push_back(item)
#define LIST_PREPEND(list, item)   (list)->push_front(item)
#define LIST_APPEND_LIST(append_to, list)   (append_to)->splice( (append_to)->end(), *(list) )
#define LIST_PREPEND_LIST(prepend_to, list)   (prepend_to)->splice( (prepend_to)->begin(), *(list) )
#define UNWRAP(w)   (w)->l_get()
#define WRAPPER_APPEND(wrapper, item)   LIST_APPEND( UNWRAP(wrapper), (item) )
#define WRAPPER_PREPEND(wrapper, item)   LIST_PREPEND( UNWRAP(wrapper), (item) )
#define WRAPPER_APPEND_WRAPPER(append_to, w)   LIST_APPEND_LIST( UNWRAP(append_to), UNWRAP(w) )
#define CURR_CTX(l)   (sa_context_manager::instance()->current()->as_get()->scope_get())
 Accessory macro for obtaining current as_name context.
#define GLOB_CTX(l)   as_name::create( (l), NULL, as_global_namespace_fake_id::create(l), true )
#define DUMMY_STMT   as_dummy_statement::create(DUMMY_LOC)
#define DUMMY_LOC   source_location::zero()
#define DUMMY_DCLTOR   as_dummy_declarator::create( DUMMY_LOC, NULL, EMPTY_LIST(as_declarator_op) )
#define EMPTY_EXPR(l)   as_empty_expression::create( (l) )
#define EMPTY_DCLTOR(l)   as_declarator::create( (l), NULL, EMPTY_LIST(as_declarator_op) )
#define EMPTY_TYPE_ID(l, dl)   as_type_id::create( (l), EMPTY_LIST(as_type_specifier), EMPTY_DCLTOR(dl) )
#define EXPR2STMT(x)   as_expression_statement::create( loc(x), (x) )
#define TOK2ID(x)   as_identifier::create( loc(x), (x) )
#define EMPTY_ID(l)   as_empty_id::create( (l) )
#define CURR_ACCESS_SPEC()   (sa_context_manager::instance()->current()->as_get()->access_specifier_get())
#define NO_PAD_TOKEN_BUG(l)   lassert3( false, "Disambiguation did not commit a PAD token.", (l) )
#define sel(type)   select< type >()
#define YYDEBUG   0
#define YYERROR_VERBOSE   1
#define YYTOKEN_TABLE   1
#define YYSIZE_T   unsigned int
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YY_(msgid)   msgid
#define YYUSE(e)   ((void) (e))
#define YYID(n)   (n)
#define YYSTACK_ALLOC   YYMALLOC
#define YYSTACK_FREE   YYFREE
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
#define YYMALLOC   malloc
#define YYFREE   free
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_BYTES(N)
#define YYCOPY(To, From, Count)
#define YYSTACK_RELOCATE(Stack)
#define YYFINAL   223
#define YYLAST   4645
#define YYNTOKENS   190
#define YYNNTS   242
#define YYNRULES   746
#define YYNSTATES   1415
#define YYUNDEFTOK   2
#define YYMAXUTOK   444
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYPACT_NINF   -1172
#define YYTABLE_NINF   -710
#define yyerrok   (yyerrstatus = 0)
#define yyclearin   (yychar = YYEMPTY)
#define YYEMPTY   (-2)
#define YYEOF   0
#define YYACCEPT   goto yyacceptlab
#define YYABORT   goto yyabortlab
#define YYERROR   goto yyerrorlab
#define YYFAIL   goto yyerrlab
#define YYRECOVERING()   (!!yyerrstatus)
#define YYBACKUP(Token, Value)
#define YYTERROR   1
#define YYERRCODE   256
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
#define YYLEX   yylex (&yylval)
#define YYDPRINTF(Args)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
#define YY_REDUCE_PRINT(Rule)
#define YYINITDEPTH   200
#define YYMAXDEPTH   10000
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))

Typedefs

typedef unsigned char yytype_uint8
typedef short int yytype_int8
typedef unsigned short int yytype_uint16
typedef short int yytype_int16

Enumerations

enum  yytokentype {
  TOK_EOF = 0, _LOWEST_PREC = 258, TOK_LITERAL = 259, TOK_ASM = 260,
  TOK_AUTO = 261, TOK_BOOL = 262, TOK_BREAK = 263, TOK_CASE = 264,
  TOK_CATCH = 265, TOK_CHAR = 266, TOK_CLASS = 267, TOK_CONST = 268,
  TOK_CONST_CAST = 269, TOK_CONTINUE = 270, TOK_DEFAULT = 271, TOK_DELETE = 272,
  TOK_DO = 273, TOK_DOUBLE = 274, TOK_DYNAMIC_CAST = 275, TOK_ELSE = 276,
  TOK_ENUM = 277, TOK_EXPLICIT = 278, TOK_EXPORT = 279, TOK_EXTERN = 280,
  TOK_FLOAT = 281, TOK_FOR = 282, TOK_FRIEND = 283, TOK_GOTO = 284,
  TOK_IF = 285, TOK_INLINE = 286, TOK_INT = 287, TOK_LONG = 288,
  TOK_MUTABLE = 289, TOK_NAMESPACE = 290, TOK_NEW = 291, TOK_OPERATOR = 292,
  TOK_PRIVATE = 293, TOK_PROTECTED = 294, TOK_PUBLIC = 295, TOK_REGISTER = 296,
  TOK_REINTERPRET_CAST = 297, TOK_RETURN = 298, TOK_SHORT = 299, TOK_SIGNED = 300,
  TOK_SIZEOF = 301, TOK_STATIC = 302, TOK_STATIC_CAST = 303, TOK_STRUCT = 304,
  TOK_SWITCH = 305, TOK_TEMPLATE = 306, TOK_THIS = 307, TOK_THROW = 308,
  TOK_TRY = 309, TOK_TYPEDEF = 310, TOK_TYPEID = 311, TOK_TYPENAME = 312,
  TOK_UNION = 313, TOK_UNSIGNED = 314, TOK_USING = 315, TOK_VIRTUAL = 316,
  TOK_VOID = 317, TOK_VOLATILE = 318, TOK_WCHAR_T = 319, TOK_WHILE = 320,
  TOK_IDENT = 321, _TYPEDEF_NAME_ID = 322, _ENUM_NAME_ID = 323, _CLASS_NAME_ID = 324,
  _TEMPL_FORCED = 325, _NONTYPE = 326, _TEMPL_TYPE = 327, _TEMPL_NONTYPE = 328,
  _UNKNOWN_ID = 329, _NMSPC_NAME = 330, _PAD_FIRST = 331, TOK_PAD_EXPR_STMT = 332,
  TOK_PAD_BLOCK_DECL = 333, TOK_PAD_SIMPLE_DECL = 334, TOK_PAD_LABEL = 335, TOK_PAD_COND_EXPR = 336,
  TOK_PAD_COND_DECL = 337, TOK_PAD_FOR_COND_EXPR = 338, TOK_PAD_FOR_COND_DECL = 339, TOK_PAD_SIZEOF_EXPR = 340,
  TOK_PAD_SIZEOF_TYPE_ID = 341, TOK_PAD_TYPE_ID_RPAR_CAST_EXPR = 342, TOK_PAD_EXPR_RPAR = 343, TOK_PAD_TYPE_ID_RPAR = 344,
  TOK_PAD_LPAR_EXPR_LIST_RPAR = 345, TOK_PAD_EXPR_LIST_RPAR = 346, TOK_PAD_TEMPL_ARG_EXPR = 347, TOK_PAD_TEMPL_ARG_TYPE_ID = 348,
  TOK_PAD_PARAM_DECL_CLAUSE = 349, TOK_PAD_PARAM_DCLTOR = 350, TOK_PAD_TEMPL_PARAM_TYPE = 351, TOK_PAD_TEMPL_PARAM_NONTYPE = 352,
  TOK_PAD_CTOR = 353, TOK_PAD_UNNAMED_BITFIELD = 354, TOK_PAD_MEMBER_FUNC = 355, TOK_PAD_MEMBER_OBJECT = 356,
  TOK_PAD_TEMPL_OP = 357, TOK_PAD_OP_NOT_TEMPL = 358, TOK_PAD_TO_BE_DISCARDED = 359, _PAD_LAST = 360,
  _START_FIRST = 361, TOK_START_PROGRAM = 362, TOK_START_EXPR_STMT = 363, TOK_START_BLOCK_DECL = 364,
  TOK_START_SIMPLE_DECL = 365, TOK_START_LABEL = 366, TOK_START_COND_EXPR = 367, TOK_START_COND_DECL = 368,
  TOK_START_FOR_COND_EXPR = 369, TOK_START_FOR_COND_DECL = 370, TOK_START_SIZEOF_EXPR = 371, TOK_START_SIZEOF_TYPE_ID = 372,
  TOK_START_EXPR_RPAR = 373, TOK_START_TYPE_ID_RPAR = 374, TOK_START_TYPE_ID_RPAR_CAST_EXPR = 375, TOK_START_LPAR_EXPR_LIST_RPAR = 376,
  TOK_START_EXPR_LIST_RPAR = 377, TOK_START_TEMPL_ARG_EXPR = 378, TOK_START_TEMPL_ARG_TYPE_ID = 379, TOK_START_PARAM_DECL_CLAUSE = 380,
  TOK_START_PARAM_DCLTOR = 381, TOK_START_TEMPL_PARAM_TYPE = 382, TOK_START_TEMPL_PARAM_NONTYPE = 383, TOK_START_CTOR = 384,
  TOK_START_TO_BE_DISCARDED = 385, _START_LAST = 386, _PACK_FIRST = 387, TOK_PACK_BODY = 388,
  TOK_PACK_ERROR_COND = 389, TOK_PACK_ERROR_FOR_COND = 390, TOK_PACK_ERROR_STMT = 391, _PACK_LAST = 392,
  TOK_DOT = 393, TOK_RIGHT_BRACKET = 394, TOK_LEFT_BRACKET = 395, TOK_EXCLAMATION = 396,
  TOK_TILDE = 397, TOK_PERCENT = 398, TOK_SLASH = 399, TOK_STAR = 400,
  TOK_MINUS = 401, TOK_PLUS = 402, TOK_GT = 403, TOK_LT = 404,
  TOK_AMP = 405, TOK_HAT = 406, TOK_VBAR = 407, TOK_QMARK = 408,
  TOK_COMMA = 409, TOK_RIGHT_BRACE = 410, TOK_LEFT_BRACE = 411, TOK_SEMICOLON = 412,
  TOK_RIGHT_PAR = 413, TOK_LEFT_PAR = 414, TOK_EQ = 415, TOK_COLON = 416,
  TOK_DOT_DOT_DOT = 417, TOK_MINUS_GT = 418, TOK_MINUS_GT_STAR = 419, TOK_DOT_STAR = 420,
  TOK_GT_EQ = 421, TOK_LT_EQ = 422, TOK_EXCLAMATION_EQ = 423, TOK_EQ_EQ = 424,
  TOK_AMP_AMP = 425, TOK_VBAR_VBAR = 426, TOK_GT_GT = 427, TOK_LT_LT = 428,
  TOK_MINUS_MINUS = 429, TOK_PLUS_PLUS = 430, TOK_LT_LT_EQ = 431, TOK_GT_GT_EQ = 432,
  TOK_VBAR_EQ = 433, TOK_AMP_EQ = 434, TOK_HAT_EQ = 435, TOK_PERCENT_EQ = 436,
  TOK_SLASH_EQ = 437, TOK_STAR_EQ = 438, TOK_MINUS_EQ = 439, TOK_PLUS_EQ = 440,
  TOK_COLON_COLON = 441, _HIGHEST_PREC = 442, TOK_ERROR = 443, TOK_TEXT = 444,
  TOK_EOF = 0, _LOWEST_PREC = 258, TOK_LITERAL = 259, TOK_ASM = 260,
  TOK_AUTO = 261, TOK_BOOL = 262, TOK_BREAK = 263, TOK_CASE = 264,
  TOK_CATCH = 265, TOK_CHAR = 266, TOK_CLASS = 267, TOK_CONST = 268,
  TOK_CONST_CAST = 269, TOK_CONTINUE = 270, TOK_DEFAULT = 271, TOK_DELETE = 272,
  TOK_DO = 273, TOK_DOUBLE = 274, TOK_DYNAMIC_CAST = 275, TOK_ELSE = 276,
  TOK_ENUM = 277, TOK_EXPLICIT = 278, TOK_EXPORT = 279, TOK_EXTERN = 280,
  TOK_FLOAT = 281, TOK_FOR = 282, TOK_FRIEND = 283, TOK_GOTO = 284,
  TOK_IF = 285, TOK_INLINE = 286, TOK_INT = 287, TOK_LONG = 288,
  TOK_MUTABLE = 289, TOK_NAMESPACE = 290, TOK_NEW = 291, TOK_OPERATOR = 292,
  TOK_PRIVATE = 293, TOK_PROTECTED = 294, TOK_PUBLIC = 295, TOK_REGISTER = 296,
  TOK_REINTERPRET_CAST = 297, TOK_RETURN = 298, TOK_SHORT = 299, TOK_SIGNED = 300,
  TOK_SIZEOF = 301, TOK_STATIC = 302, TOK_STATIC_CAST = 303, TOK_STRUCT = 304,
  TOK_SWITCH = 305, TOK_TEMPLATE = 306, TOK_THIS = 307, TOK_THROW = 308,
  TOK_TRY = 309, TOK_TYPEDEF = 310, TOK_TYPEID = 311, TOK_TYPENAME = 312,
  TOK_UNION = 313, TOK_UNSIGNED = 314, TOK_USING = 315, TOK_VIRTUAL = 316,
  TOK_VOID = 317, TOK_VOLATILE = 318, TOK_WCHAR_T = 319, TOK_WHILE = 320,
  TOK_IDENT = 321, _TYPEDEF_NAME_ID = 322, _ENUM_NAME_ID = 323, _CLASS_NAME_ID = 324,
  _TEMPL_FORCED = 325, _NONTYPE = 326, _TEMPL_TYPE = 327, _TEMPL_NONTYPE = 328,
  _UNKNOWN_ID = 329, _NMSPC_NAME = 330, _PAD_FIRST = 331, TOK_PAD_EXPR_STMT = 332,
  TOK_PAD_BLOCK_DECL = 333, TOK_PAD_SIMPLE_DECL = 334, TOK_PAD_LABEL = 335, TOK_PAD_COND_EXPR = 336,
  TOK_PAD_COND_DECL = 337, TOK_PAD_FOR_COND_EXPR = 338, TOK_PAD_FOR_COND_DECL = 339, TOK_PAD_SIZEOF_EXPR = 340,
  TOK_PAD_SIZEOF_TYPE_ID = 341, TOK_PAD_TYPE_ID_RPAR_CAST_EXPR = 342, TOK_PAD_EXPR_RPAR = 343, TOK_PAD_TYPE_ID_RPAR = 344,
  TOK_PAD_LPAR_EXPR_LIST_RPAR = 345, TOK_PAD_EXPR_LIST_RPAR = 346, TOK_PAD_TEMPL_ARG_EXPR = 347, TOK_PAD_TEMPL_ARG_TYPE_ID = 348,
  TOK_PAD_PARAM_DECL_CLAUSE = 349, TOK_PAD_PARAM_DCLTOR = 350, TOK_PAD_TEMPL_PARAM_TYPE = 351, TOK_PAD_TEMPL_PARAM_NONTYPE = 352,
  TOK_PAD_CTOR = 353, TOK_PAD_UNNAMED_BITFIELD = 354, TOK_PAD_MEMBER_FUNC = 355, TOK_PAD_MEMBER_OBJECT = 356,
  TOK_PAD_TEMPL_OP = 357, TOK_PAD_OP_NOT_TEMPL = 358, TOK_PAD_TO_BE_DISCARDED = 359, _PAD_LAST = 360,
  _START_FIRST = 361, TOK_START_PROGRAM = 362, TOK_START_EXPR_STMT = 363, TOK_START_BLOCK_DECL = 364,
  TOK_START_SIMPLE_DECL = 365, TOK_START_LABEL = 366, TOK_START_COND_EXPR = 367, TOK_START_COND_DECL = 368,
  TOK_START_FOR_COND_EXPR = 369, TOK_START_FOR_COND_DECL = 370, TOK_START_SIZEOF_EXPR = 371, TOK_START_SIZEOF_TYPE_ID = 372,
  TOK_START_EXPR_RPAR = 373, TOK_START_TYPE_ID_RPAR = 374, TOK_START_TYPE_ID_RPAR_CAST_EXPR = 375, TOK_START_LPAR_EXPR_LIST_RPAR = 376,
  TOK_START_EXPR_LIST_RPAR = 377, TOK_START_TEMPL_ARG_EXPR = 378, TOK_START_TEMPL_ARG_TYPE_ID = 379, TOK_START_PARAM_DECL_CLAUSE = 380,
  TOK_START_PARAM_DCLTOR = 381, TOK_START_TEMPL_PARAM_TYPE = 382, TOK_START_TEMPL_PARAM_NONTYPE = 383, TOK_START_CTOR = 384,
  TOK_START_TO_BE_DISCARDED = 385, _START_LAST = 386, _PACK_FIRST = 387, TOK_PACK_BODY = 388,
  TOK_PACK_ERROR_COND = 389, TOK_PACK_ERROR_FOR_COND = 390, TOK_PACK_ERROR_STMT = 391, _PACK_LAST = 392,
  TOK_DOT = 393, TOK_RIGHT_BRACKET = 394, TOK_LEFT_BRACKET = 395, TOK_EXCLAMATION = 396,
  TOK_TILDE = 397, TOK_PERCENT = 398, TOK_SLASH = 399, TOK_STAR = 400,
  TOK_MINUS = 401, TOK_PLUS = 402, TOK_GT = 403, TOK_LT = 404,
  TOK_AMP = 405, TOK_HAT = 406, TOK_VBAR = 407, TOK_QMARK = 408,
  TOK_COMMA = 409, TOK_RIGHT_BRACE = 410, TOK_LEFT_BRACE = 411, TOK_SEMICOLON = 412,
  TOK_RIGHT_PAR = 413, TOK_LEFT_PAR = 414, TOK_EQ = 415, TOK_COLON = 416,
  TOK_DOT_DOT_DOT = 417, TOK_MINUS_GT = 418, TOK_MINUS_GT_STAR = 419, TOK_DOT_STAR = 420,
  TOK_GT_EQ = 421, TOK_LT_EQ = 422, TOK_EXCLAMATION_EQ = 423, TOK_EQ_EQ = 424,
  TOK_AMP_AMP = 425, TOK_VBAR_VBAR = 426, TOK_GT_GT = 427, TOK_LT_LT = 428,
  TOK_MINUS_MINUS = 429, TOK_PLUS_PLUS = 430, TOK_LT_LT_EQ = 431, TOK_GT_GT_EQ = 432,
  TOK_VBAR_EQ = 433, TOK_AMP_EQ = 434, TOK_HAT_EQ = 435, TOK_PERCENT_EQ = 436,
  TOK_SLASH_EQ = 437, TOK_STAR_EQ = 438, TOK_MINUS_EQ = 439, TOK_PLUS_EQ = 440,
  TOK_COLON_COLON = 441, _HIGHEST_PREC = 442, TOK_ERROR = 443, TOK_TEXT = 444
}

Functions

static bool is_not_pad (int i)
static bool is_pack (int i)
static void disambiguate_ctor_and_bitfield_class_scope (ptr< as_declaration_specifier_seq > const)
static void disambiguate_ctor_nmspc_scope (ptr< as_declaration_specifier_seq > const)
static unsigned int yystrlen (yystr) const char *yystr
int yyparse (as_result) ptr< as_base > &as_result

Variables

static const yytype_uint8 yytranslate []
static const char *const yytname []
static const yytype_uint16 yyr1 []
static const yytype_uint8 yyr2 []
static const yytype_uint16 yydefact []
static const yytype_int16 yydefgoto []
static const yytype_int16 yypact []
static const yytype_int16 yypgoto []
static const yytype_int16 yytable []
static const yytype_int16 yycheck []
static const yytype_uint16 yystos []
const char * yysrc
int yytype
semval * yyvaluep
ptr< as_base > & as_result

Define Documentation

#define _CLASS_NAME_ID   324

#define _ENUM_NAME_ID   323

#define _HIGHEST_PREC   442

#define _LOWEST_PREC   258

#define _NMSPC_NAME   330

#define _NONTYPE   326

#define _PACK_FIRST   387

#define _PACK_LAST   392

#define _PAD_FIRST   331

#define _PAD_LAST   360

#define _START_FIRST   361

#define _START_LAST   386

#define _TEMPL_FORCED   325

#define _TEMPL_NONTYPE   328

#define _TEMPL_TYPE   327

#define _TYPEDEF_NAME_ID   322

#define _UNKNOWN_ID   329

 
#define clear_lookahead (  ) 

Value:

do {                                    \
                lassert( yychar != YYEMPTY );   \
                yychar = YYEMPTY;               \
                manager::back_up();             \
        } while (false)

 
#define CURR_ACCESS_SPEC (  )     (sa_context_manager::instance()->current()->as_get()->access_specifier_get())

#define CURR_CTX (  )     (sa_context_manager::instance()->current()->as_get()->scope_get())

Accessory macro for obtaining current as_name context.

Invariant:
The value of this macro shall have the as_name::was_qualified set to false.

#define DUMMY_DCLTOR   as_dummy_declarator::create( DUMMY_LOC, NULL, EMPTY_LIST(as_declarator_op) )

#define DUMMY_LOC   source_location::zero()

#define DUMMY_STMT   as_dummy_statement::create(DUMMY_LOC)

#define EMPTY_DCLTOR (  )     as_declarator::create( (l), NULL, EMPTY_LIST(as_declarator_op) )

#define EMPTY_EXPR (  )     as_empty_expression::create( (l) )

#define EMPTY_ID (  )     as_empty_id::create( (l) )

#define EMPTY_LIST ( type   )     ::lestes::std::list< srp< type > >::create()

#define EMPTY_TYPE_ID ( l,
dl   )     as_type_id::create( (l), EMPTY_LIST(as_type_specifier), EMPTY_DCLTOR(dl) )

#define EMPTY_WRAPPER ( wrapper_type,
l,
type   )     wrapper_type::create( (l), EMPTY_LIST(type) )

#define EXPR2STMT (  )     as_expression_statement::create( loc(x), (x) )

#define GLOB_CTX (  )     as_name::create( (l), NULL, as_global_namespace_fake_id::create(l), true )

#define LIST_APPEND ( list,
item   )     (list)->push_back(item)

#define LIST_APPEND_LIST ( append_to,
list   )     (append_to)->splice( (append_to)->end(), *(list) )

#define LIST_PREPEND ( list,
item   )     (list)->push_front(item)

#define LIST_PREPEND_LIST ( prepend_to,
list   )     (prepend_to)->splice( (prepend_to)->begin(), *(list) )

#define loc (  )     ((x)->location_get())

#define NEW_WRAPPER_W1 ( dest,
wrapper_type,
l,
type,
item   ) 

Value:

do {                                                            \
                                (dest) = EMPTY_WRAPPER( wrapper_type, (l), type );      \
                                WRAPPER_APPEND( (dest), (item) );                       \
                        } while(false)

#define NO_PAD_TOKEN_BUG (  )     lassert3( false, "Disambiguation did not commit a PAD token.", (l) )

#define sel ( type   )     select< type >()

#define TOK2ID (  )     as_identifier::create( loc(x), (x) )

#define TOK_AMP   405

#define TOK_AMP_AMP   425

#define TOK_AMP_EQ   434

#define TOK_ASM   260

#define TOK_AUTO   261

#define TOK_BOOL   262

#define TOK_BREAK   263

#define TOK_CASE   264

#define TOK_CATCH   265

#define TOK_CHAR   266

#define TOK_CLASS   267

#define TOK_COLON   416

#define TOK_COLON_COLON   441

#define TOK_COMMA   409

#define TOK_CONST   268

#define TOK_CONST_CAST   269

#define TOK_CONTINUE   270

#define TOK_DEFAULT   271

#define TOK_DELETE   272

#define TOK_DO   273

#define TOK_DOT   393

#define TOK_DOT_DOT_DOT   417

#define TOK_DOT_STAR   420

#define TOK_DOUBLE   274

#define TOK_DYNAMIC_CAST   275

#define TOK_ELSE   276

#define TOK_ENUM   277

#define TOK_EOF   0

#define TOK_EQ   415

#define TOK_EQ_EQ   424

#define TOK_ERROR   443

#define TOK_EXCLAMATION   396

#define TOK_EXCLAMATION_EQ   423

#define TOK_EXPLICIT   278

#define TOK_EXPORT   279

#define TOK_EXTERN   280

#define TOK_FLOAT   281

#define TOK_FOR   282

#define TOK_FRIEND   283

#define TOK_GOTO   284

#define TOK_GT   403

#define TOK_GT_EQ   421

#define TOK_GT_GT   427

#define TOK_GT_GT_EQ   432

#define TOK_HAT   406

#define TOK_HAT_EQ   435

#define TOK_IDENT   321

#define TOK_IF   285

#define TOK_INLINE   286

#define TOK_INT   287

#define TOK_LEFT_BRACE   411

#define TOK_LEFT_BRACKET   395

#define TOK_LEFT_PAR   414

#define TOK_LITERAL   259

#define TOK_LONG   288

#define TOK_LT   404

#define TOK_LT_EQ   422

#define TOK_LT_LT   428

#define TOK_LT_LT_EQ   431

#define TOK_MINUS   401

#define TOK_MINUS_EQ   439

#define TOK_MINUS_GT   418

#define TOK_MINUS_GT_STAR   419

#define TOK_MINUS_MINUS   429

#define TOK_MUTABLE   289

#define TOK_NAMESPACE   290

#define TOK_NEW   291

#define TOK_OPERATOR   292

#define TOK_PACK_BODY   388

#define TOK_PACK_ERROR_COND   389

#define TOK_PACK_ERROR_FOR_COND   390

#define TOK_PACK_ERROR_STMT   391

#define TOK_PAD_BLOCK_DECL   333

#define TOK_PAD_COND_DECL   337

#define TOK_PAD_COND_EXPR   336

#define TOK_PAD_CTOR   353

#define TOK_PAD_EXPR_LIST_RPAR   346

#define TOK_PAD_EXPR_RPAR   343

#define TOK_PAD_EXPR_STMT   332

#define TOK_PAD_FOR_COND_DECL   339

#define TOK_PAD_FOR_COND_EXPR   338

#define TOK_PAD_LABEL   335

#define TOK_PAD_LPAR_EXPR_LIST_RPAR   345

#define TOK_PAD_MEMBER_FUNC   355

#define TOK_PAD_MEMBER_OBJECT   356

#define TOK_PAD_OP_NOT_TEMPL   358

#define TOK_PAD_PARAM_DCLTOR   350

#define TOK_PAD_PARAM_DECL_CLAUSE   349

#define TOK_PAD_SIMPLE_DECL   334

#define TOK_PAD_SIZEOF_EXPR   340

#define TOK_PAD_SIZEOF_TYPE_ID   341

#define TOK_PAD_TEMPL_ARG_EXPR   347

#define TOK_PAD_TEMPL_ARG_TYPE_ID   348

#define TOK_PAD_TEMPL_OP   357

#define TOK_PAD_TEMPL_PARAM_NONTYPE   352

#define TOK_PAD_TEMPL_PARAM_TYPE   351

#define TOK_PAD_TO_BE_DISCARDED   359

#define TOK_PAD_TYPE_ID_RPAR   344

#define TOK_PAD_TYPE_ID_RPAR_CAST_EXPR   342

#define TOK_PAD_UNNAMED_BITFIELD   354

#define TOK_PERCENT   398

#define TOK_PERCENT_EQ   436

#define TOK_PLUS   402

#define TOK_PLUS_EQ   440

#define TOK_PLUS_PLUS   430

#define TOK_PRIVATE   293

#define TOK_PROTECTED   294

#define TOK_PUBLIC   295

#define TOK_QMARK   408

#define TOK_REGISTER   296

#define TOK_REINTERPRET_CAST   297

#define TOK_RETURN   298

#define TOK_RIGHT_BRACE   410

#define TOK_RIGHT_BRACKET   394

#define TOK_RIGHT_PAR   413

#define TOK_SEMICOLON   412

#define TOK_SHORT   299

#define TOK_SIGNED   300

#define TOK_SIZEOF   301

#define TOK_SLASH   399

#define TOK_SLASH_EQ   437

#define TOK_STAR   400

#define TOK_STAR_EQ   438

#define TOK_START_BLOCK_DECL   364

#define TOK_START_COND_DECL   368

#define TOK_START_COND_EXPR   367

#define TOK_START_CTOR   384

#define TOK_START_EXPR_LIST_RPAR   377

#define TOK_START_EXPR_RPAR   373

#define TOK_START_EXPR_STMT   363

#define TOK_START_FOR_COND_DECL   370

#define TOK_START_FOR_COND_EXPR   369

#define TOK_START_LABEL   366

#define TOK_START_LPAR_EXPR_LIST_RPAR   376

#define TOK_START_PARAM_DCLTOR   381

#define TOK_START_PARAM_DECL_CLAUSE   380

#define TOK_START_PROGRAM   362

#define TOK_START_SIMPLE_DECL   365

#define TOK_START_SIZEOF_EXPR   371

#define TOK_START_SIZEOF_TYPE_ID   372

#define TOK_START_TEMPL_ARG_EXPR   378

#define TOK_START_TEMPL_ARG_TYPE_ID   379

#define TOK_START_TEMPL_PARAM_NONTYPE   383

#define TOK_START_TEMPL_PARAM_TYPE   382

#define TOK_START_TO_BE_DISCARDED   385

#define TOK_START_TYPE_ID_RPAR   374

#define TOK_START_TYPE_ID_RPAR_CAST_EXPR   375

#define TOK_STATIC   302

#define TOK_STATIC_CAST   303

#define TOK_STRUCT   304

#define TOK_SWITCH   305

#define TOK_TEMPLATE   306

#define TOK_TEXT   444

#define TOK_THIS   307

#define TOK_THROW   308

#define TOK_TILDE   397

#define TOK_TRY   309

#define TOK_TYPEDEF   310

#define TOK_TYPEID   311

#define TOK_TYPENAME   312

#define TOK_UNION   313

#define TOK_UNSIGNED   314

#define TOK_USING   315

#define TOK_VBAR   407

#define TOK_VBAR_EQ   433

#define TOK_VBAR_VBAR   426

#define TOK_VIRTUAL   316

#define TOK_VOID   317

#define TOK_VOLATILE   318

#define TOK_WCHAR_T   319

#define TOK_WHILE   320

#define try_and_commit ( start_token_value,
commit_token_value,
result_var   ) 

Value:

manager::start( start_token_value );                                    \
        ptr<parse_result_type> result_var = parser::parse();                    \
        if (result_var->success_get()) {                                        \
                manager::commit( commit_token_value );                          \
                llog_xml_close(pl,"disambiguation") << "\n";                    \
                break;                                                          \
        }                                                                       \
        manager::rollback();

#define try_begin ( _txt   ) 

Value:

do {                    \
                llog_xml_open(pl,"disambiguation") << "\nkind: " << _txt << "\n";

 
#define try_end_fail (  ) 

Value:

llog_xml_close(pl,"disambiguation") << " all tries failed\n";   \
                        if (manager::in_disambiguation())                               \
                                YYABORT;        /* returns from yyparse() */            \
                        report << disa_failed << loc(manager::peek());                  \
                        /* commit ANY pad token, or NO_PAD_TOKEN_BUG() may kick in */   \
                        manager::start( TOK_START_TO_BE_DISCARDED );                    \
                        manager::commit( TOK_PAD_TO_BE_DISCARDED );                     \
                        manager::failing_set_true();                                    \
                } while (false)

 
#define try_end_skip (  ) 

Value:

llog_xml_close(pl,"disambiguation") << "\n";    \
                } while (false)

#define UNWRAP (  )     (w)->l_get()

#define UNWTOK (  )     ((x)->wrapped_token_get())

#define WRAPPER_APPEND ( wrapper,
item   )     LIST_APPEND( UNWRAP(wrapper), (item) )

#define WRAPPER_APPEND_WRAPPER ( append_to,
 )     LIST_APPEND_LIST( UNWRAP(append_to), UNWRAP(w) )

#define WRAPPER_PREPEND ( wrapper,
item   )     LIST_PREPEND( UNWRAP(wrapper), (item) )

#define YY_ ( msgid   )     msgid

#define YY_LOCATION_PRINT ( File,
Loc   )     ((void) 0)

#define YY_REDUCE_PRINT ( Rule   ) 

#define YY_STACK_PRINT ( Bottom,
Top   ) 

#define YY_SYMBOL_PRINT ( Title,
Type,
Value,
Location   ) 

#define YYABORT   goto yyabortlab

#define YYACCEPT   goto yyacceptlab

#define YYBACKUP ( Token,
Value   ) 

Value:

do                                                              \
  if (yychar == YYEMPTY && yylen == 1)                          \
    {                                                           \
      yychar = (Token);                                         \
      yylval = (Value);                                         \
      yytoken = YYTRANSLATE (yychar);                           \
      YYPOPSTACK (1);                                           \
      goto yybackup;                                            \
    }                                                           \
  else                                                          \
    {                                                           \
      yyerror (as_result, YY_("syntax error: cannot back up")); \
      YYERROR;                                                  \
    }                                                           \
while (YYID (0))

#define YYBISON   1

#define YYBISON_VERSION   "2.2"

#define yyclearin   (yychar = YYEMPTY)

#define YYCOPY ( To,
From,
Count   ) 

Value:

do                                      \
        {                                       \
          YYSIZE_T yyi;                         \
          for (yyi = 0; yyi < (Count); yyi++)   \
            (To)[yyi] = (From)[yyi];            \
        }                                       \
      while (YYID (0))

#define YYDEBUG   0

#define YYDPRINTF ( Args   ) 

#define YYEMPTY   (-2)

#define YYEOF   0

#define YYERRCODE   256

#define yyerrok   (yyerrstatus = 0)

#define YYERROR   goto yyerrorlab

#define YYERROR_VERBOSE   1

#define YYFAIL   goto yyerrlab

#define YYFINAL   223

#define YYFREE   free

#define YYID (  )     (n)

#define YYINITDEPTH   200

#define YYLAST   4645

#define YYLEX   yylex (&yylval)

#define YYLLOC_DEFAULT ( Current,
Rhs,
 ) 

Value:

do                                                                      \
      if (YYID (N))                                                    \
        {                                                               \
          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
        }                                                               \
      else                                                              \
        {                                                               \
          (Current).first_line   = (Current).last_line   =              \
            YYRHSLOC (Rhs, 0).last_line;                                \
          (Current).first_column = (Current).last_column =              \
            YYRHSLOC (Rhs, 0).last_column;                              \
        }                                                               \
    while (YYID (0))

#define YYLSP_NEEDED   0

#define YYMALLOC   malloc

#define YYMAXDEPTH   10000

#define YYMAXUTOK   444

#define YYNNTS   242

#define YYNRULES   746

#define YYNSTATES   1415

#define YYNTOKENS   190

#define YYPACT_NINF   -1172

#define YYPOPSTACK (  )     (yyvsp -= (N), yyssp -= (N))

#define YYPURE   1

 
#define YYRECOVERING (  )     (!!yyerrstatus)

#define YYRHSLOC ( Rhs,
 )     ((Rhs)[K])

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

#define YYSIZE_T   unsigned int

#define YYSKELETON_NAME   "yacc.c"

#define YYSTACK_ALLOC   YYMALLOC

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

#define YYSTACK_BYTES (  ) 

Value:

((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
      + YYSTACK_GAP_MAXIMUM)

#define YYSTACK_FREE   YYFREE

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

#define YYSTACK_RELOCATE ( Stack   ) 

Value:

do                                                                      \
      {                                                                 \
        YYSIZE_T yynewbytes;                                            \
        YYCOPY (&yyptr->Stack, Stack, yysize);                          \
        Stack = &yyptr->Stack;                                          \
        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
        yyptr += yynewbytes / sizeof (*yyptr);                          \
      }                                                                 \
    while (YYID (0))

#define YYSTYPE   semval

#define YYTABLE_NINF   -710

#define YYTERROR   1

#define YYTOKEN_TABLE   1

#define YYTRANSLATE ( YYX   )     ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

#define YYUNDEFTOK   2

#define YYUSE (  )     ((void) (e))


Typedef Documentation

typedef short int yytype_int16

typedef short int yytype_int8

typedef unsigned short int yytype_uint16

typedef unsigned char yytype_uint8


Enumeration Type Documentation

enum yytokentype

Enumerator:
TOK_EOF 
_LOWEST_PREC 
TOK_LITERAL 
TOK_ASM 
TOK_AUTO 
TOK_BOOL 
TOK_BREAK 
TOK_CASE 
TOK_CATCH 
TOK_CHAR 
TOK_CLASS 
TOK_CONST 
TOK_CONST_CAST 
TOK_CONTINUE 
TOK_DEFAULT 
TOK_DELETE 
TOK_DO 
TOK_DOUBLE 
TOK_DYNAMIC_CAST 
TOK_ELSE 
TOK_ENUM 
TOK_EXPLICIT 
TOK_EXPORT 
TOK_EXTERN 
TOK_FLOAT 
TOK_FOR 
TOK_FRIEND 
TOK_GOTO 
TOK_IF 
TOK_INLINE 
TOK_INT 
TOK_LONG 
TOK_MUTABLE 
TOK_NAMESPACE 
TOK_NEW 
TOK_OPERATOR 
TOK_PRIVATE 
TOK_PROTECTED 
TOK_PUBLIC 
TOK_REGISTER 
TOK_REINTERPRET_CAST 
TOK_RETURN 
TOK_SHORT 
TOK_SIGNED 
TOK_SIZEOF 
TOK_STATIC 
TOK_STATIC_CAST 
TOK_STRUCT 
TOK_SWITCH 
TOK_TEMPLATE 
TOK_THIS 
TOK_THROW 
TOK_TRY 
TOK_TYPEDEF 
TOK_TYPEID 
TOK_TYPENAME 
TOK_UNION 
TOK_UNSIGNED 
TOK_USING 
TOK_VIRTUAL 
TOK_VOID 
TOK_VOLATILE 
TOK_WCHAR_T 
TOK_WHILE 
TOK_IDENT 
_TYPEDEF_NAME_ID 
_ENUM_NAME_ID 
_CLASS_NAME_ID 
_TEMPL_FORCED 
_NONTYPE 
_TEMPL_TYPE 
_TEMPL_NONTYPE 
_UNKNOWN_ID 
_NMSPC_NAME 
_PAD_FIRST 
TOK_PAD_EXPR_STMT 
TOK_PAD_BLOCK_DECL 
TOK_PAD_SIMPLE_DECL 
TOK_PAD_LABEL 
TOK_PAD_COND_EXPR 
TOK_PAD_COND_DECL 
TOK_PAD_FOR_COND_EXPR 
TOK_PAD_FOR_COND_DECL 
TOK_PAD_SIZEOF_EXPR 
TOK_PAD_SIZEOF_TYPE_ID 
TOK_PAD_TYPE_ID_RPAR_CAST_EXPR 
TOK_PAD_EXPR_RPAR 
TOK_PAD_TYPE_ID_RPAR 
TOK_PAD_LPAR_EXPR_LIST_RPAR 
TOK_PAD_EXPR_LIST_RPAR 
TOK_PAD_TEMPL_ARG_EXPR 
TOK_PAD_TEMPL_ARG_TYPE_ID 
TOK_PAD_PARAM_DECL_CLAUSE 
TOK_PAD_PARAM_DCLTOR 
TOK_PAD_TEMPL_PARAM_TYPE 
TOK_PAD_TEMPL_PARAM_NONTYPE 
TOK_PAD_CTOR 
TOK_PAD_UNNAMED_BITFIELD 
TOK_PAD_MEMBER_FUNC 
TOK_PAD_MEMBER_OBJECT 
TOK_PAD_TEMPL_OP 
TOK_PAD_OP_NOT_TEMPL 
TOK_PAD_TO_BE_DISCARDED 
_PAD_LAST 
_START_FIRST 
TOK_START_PROGRAM 
TOK_START_EXPR_STMT 
TOK_START_BLOCK_DECL 
TOK_START_SIMPLE_DECL 
TOK_START_LABEL 
TOK_START_COND_EXPR 
TOK_START_COND_DECL 
TOK_START_FOR_COND_EXPR 
TOK_START_FOR_COND_DECL 
TOK_START_SIZEOF_EXPR 
TOK_START_SIZEOF_TYPE_ID 
TOK_START_EXPR_RPAR 
TOK_START_TYPE_ID_RPAR 
TOK_START_TYPE_ID_RPAR_CAST_EXPR 
TOK_START_LPAR_EXPR_LIST_RPAR 
TOK_START_EXPR_LIST_RPAR 
TOK_START_TEMPL_ARG_EXPR 
TOK_START_TEMPL_ARG_TYPE_ID 
TOK_START_PARAM_DECL_CLAUSE 
TOK_START_PARAM_DCLTOR 
TOK_START_TEMPL_PARAM_TYPE 
TOK_START_TEMPL_PARAM_NONTYPE 
TOK_START_CTOR 
TOK_START_TO_BE_DISCARDED 
_START_LAST 
_PACK_FIRST 
TOK_PACK_BODY 
TOK_PACK_ERROR_COND 
TOK_PACK_ERROR_FOR_COND 
TOK_PACK_ERROR_STMT 
_PACK_LAST 
TOK_DOT 
TOK_RIGHT_BRACKET 
TOK_LEFT_BRACKET 
TOK_EXCLAMATION 
TOK_TILDE 
TOK_PERCENT 
TOK_SLASH 
TOK_STAR 
TOK_MINUS 
TOK_PLUS 
TOK_GT 
TOK_LT 
TOK_AMP 
TOK_HAT 
TOK_VBAR 
TOK_QMARK 
TOK_COMMA 
TOK_RIGHT_BRACE 
TOK_LEFT_BRACE 
TOK_SEMICOLON 
TOK_RIGHT_PAR 
TOK_LEFT_PAR 
TOK_EQ 
TOK_COLON 
TOK_DOT_DOT_DOT 
TOK_MINUS_GT 
TOK_MINUS_GT_STAR 
TOK_DOT_STAR 
TOK_GT_EQ 
TOK_LT_EQ 
TOK_EXCLAMATION_EQ 
TOK_EQ_EQ 
TOK_AMP_AMP 
TOK_VBAR_VBAR 
TOK_GT_GT 
TOK_LT_LT 
TOK_MINUS_MINUS 
TOK_PLUS_PLUS 
TOK_LT_LT_EQ 
TOK_GT_GT_EQ 
TOK_VBAR_EQ 
TOK_AMP_EQ 
TOK_HAT_EQ 
TOK_PERCENT_EQ 
TOK_SLASH_EQ 
TOK_STAR_EQ 
TOK_MINUS_EQ 
TOK_PLUS_EQ 
TOK_COLON_COLON 
_HIGHEST_PREC 
TOK_ERROR 
TOK_TEXT 
TOK_EOF 
_LOWEST_PREC 
TOK_LITERAL 
TOK_ASM 
TOK_AUTO 
TOK_BOOL 
TOK_BREAK 
TOK_CASE 
TOK_CATCH 
TOK_CHAR 
TOK_CLASS 
TOK_CONST 
TOK_CONST_CAST 
TOK_CONTINUE 
TOK_DEFAULT 
TOK_DELETE 
TOK_DO 
TOK_DOUBLE 
TOK_DYNAMIC_CAST 
TOK_ELSE 
TOK_ENUM 
TOK_EXPLICIT 
TOK_EXPORT 
TOK_EXTERN 
TOK_FLOAT 
TOK_FOR 
TOK_FRIEND 
TOK_GOTO 
TOK_IF 
TOK_INLINE 
TOK_INT 
TOK_LONG 
TOK_MUTABLE 
TOK_NAMESPACE 
TOK_NEW 
TOK_OPERATOR 
TOK_PRIVATE 
TOK_PROTECTED 
TOK_PUBLIC 
TOK_REGISTER 
TOK_REINTERPRET_CAST 
TOK_RETURN 
TOK_SHORT 
TOK_SIGNED 
TOK_SIZEOF 
TOK_STATIC 
TOK_STATIC_CAST 
TOK_STRUCT 
TOK_SWITCH 
TOK_TEMPLATE 
TOK_THIS 
TOK_THROW 
TOK_TRY 
TOK_TYPEDEF 
TOK_TYPEID 
TOK_TYPENAME 
TOK_UNION 
TOK_UNSIGNED 
TOK_USING 
TOK_VIRTUAL 
TOK_VOID 
TOK_VOLATILE 
TOK_WCHAR_T 
TOK_WHILE 
TOK_IDENT 
_TYPEDEF_NAME_ID 
_ENUM_NAME_ID 
_CLASS_NAME_ID 
_TEMPL_FORCED 
_NONTYPE 
_TEMPL_TYPE 
_TEMPL_NONTYPE 
_UNKNOWN_ID 
_NMSPC_NAME 
_PAD_FIRST 
TOK_PAD_EXPR_STMT 
TOK_PAD_BLOCK_DECL 
TOK_PAD_SIMPLE_DECL 
TOK_PAD_LABEL 
TOK_PAD_COND_EXPR 
TOK_PAD_COND_DECL 
TOK_PAD_FOR_COND_EXPR 
TOK_PAD_FOR_COND_DECL 
TOK_PAD_SIZEOF_EXPR 
TOK_PAD_SIZEOF_TYPE_ID 
TOK_PAD_TYPE_ID_RPAR_CAST_EXPR 
TOK_PAD_EXPR_RPAR 
TOK_PAD_TYPE_ID_RPAR 
TOK_PAD_LPAR_EXPR_LIST_RPAR 
TOK_PAD_EXPR_LIST_RPAR 
TOK_PAD_TEMPL_ARG_EXPR 
TOK_PAD_TEMPL_ARG_TYPE_ID 
TOK_PAD_PARAM_DECL_CLAUSE 
TOK_PAD_PARAM_DCLTOR 
TOK_PAD_TEMPL_PARAM_TYPE 
TOK_PAD_TEMPL_PARAM_NONTYPE 
TOK_PAD_CTOR 
TOK_PAD_UNNAMED_BITFIELD 
TOK_PAD_MEMBER_FUNC 
TOK_PAD_MEMBER_OBJECT 
TOK_PAD_TEMPL_OP 
TOK_PAD_OP_NOT_TEMPL 
TOK_PAD_TO_BE_DISCARDED 
_PAD_LAST 
_START_FIRST 
TOK_START_PROGRAM 
TOK_START_EXPR_STMT 
TOK_START_BLOCK_DECL 
TOK_START_SIMPLE_DECL 
TOK_START_LABEL 
TOK_START_COND_EXPR 
TOK_START_COND_DECL 
TOK_START_FOR_COND_EXPR 
TOK_START_FOR_COND_DECL 
TOK_START_SIZEOF_EXPR 
TOK_START_SIZEOF_TYPE_ID 
TOK_START_EXPR_RPAR 
TOK_START_TYPE_ID_RPAR 
TOK_START_TYPE_ID_RPAR_CAST_EXPR 
TOK_START_LPAR_EXPR_LIST_RPAR 
TOK_START_EXPR_LIST_RPAR 
TOK_START_TEMPL_ARG_EXPR 
TOK_START_TEMPL_ARG_TYPE_ID 
TOK_START_PARAM_DECL_CLAUSE 
TOK_START_PARAM_DCLTOR 
TOK_START_TEMPL_PARAM_TYPE 
TOK_START_TEMPL_PARAM_NONTYPE 
TOK_START_CTOR 
TOK_START_TO_BE_DISCARDED 
_START_LAST 
_PACK_FIRST 
TOK_PACK_BODY 
TOK_PACK_ERROR_COND 
TOK_PACK_ERROR_FOR_COND 
TOK_PACK_ERROR_STMT 
_PACK_LAST 
TOK_DOT 
TOK_RIGHT_BRACKET 
TOK_LEFT_BRACKET 
TOK_EXCLAMATION 
TOK_TILDE 
TOK_PERCENT 
TOK_SLASH 
TOK_STAR 
TOK_MINUS 
TOK_PLUS 
TOK_GT 
TOK_LT 
TOK_AMP 
TOK_HAT 
TOK_VBAR 
TOK_QMARK 
TOK_COMMA 
TOK_RIGHT_BRACE 
TOK_LEFT_BRACE 
TOK_SEMICOLON 
TOK_RIGHT_PAR 
TOK_LEFT_PAR 
TOK_EQ 
TOK_COLON 
TOK_DOT_DOT_DOT 
TOK_MINUS_GT 
TOK_MINUS_GT_STAR 
TOK_DOT_STAR 
TOK_GT_EQ 
TOK_LT_EQ 
TOK_EXCLAMATION_EQ 
TOK_EQ_EQ 
TOK_AMP_AMP 
TOK_VBAR_VBAR 
TOK_GT_GT 
TOK_LT_LT 
TOK_MINUS_MINUS 
TOK_PLUS_PLUS 
TOK_LT_LT_EQ 
TOK_GT_GT_EQ 
TOK_VBAR_EQ 
TOK_AMP_EQ 
TOK_HAT_EQ 
TOK_PERCENT_EQ 
TOK_SLASH_EQ 
TOK_STAR_EQ 
TOK_MINUS_EQ 
TOK_PLUS_EQ 
TOK_COLON_COLON 
_HIGHEST_PREC 
TOK_ERROR 
TOK_TEXT 


Function Documentation

static void disambiguate_ctor_and_bitfield_class_scope ( ptr< as_declaration_specifier_seq >  const  )  [static]

static void disambiguate_ctor_nmspc_scope ( ptr< as_declaration_specifier_seq >  const  )  [static]

static bool is_not_pad ( int  i  )  [static]

static bool is_pack ( int  i  )  [static]

int yyparse ( as_result   ) 

static unsigned int yystrlen ( yystr   )  const [static]


Variable Documentation

ptr<as_base>& as_result

const yytype_int16 yycheck[] [static]

const yytype_uint16 yydefact[] [static]

const yytype_int16 yydefgoto[] [static]

Initial value:

{
      -1,   219,    64,   239,   594,  1245,   844,   505,   497,   525,
    1265,   220,  1005,   316,   605,   995,  1353,   305,   940,   837,
     768,   550,   443,    65,   122,    25,    26,    27,    67,   173,
     123,  1354,   996,   474,   475,   476,   779,   477,   478,  1281,
    1285,   479,   480,   481,   482,   222,   483,   484,   485,   486,
     487,   488,   489,   490,  1002,   780,   384,   125,   126,   127,
     128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
     138,   139,   140,   611,  1122,  1123,   141,   697,   142,   143,
     821,   822,   371,   196,   956,   698,   699,   257,   548,   144,
     326,   292,   519,   329,   653,   249,   560,   865,   866,    70,
      71,    72,   293,    73,    74,   153,   506,  1022,    75,   154,
    1227,   155,   437,    76,    77,    78,   157,    80,    81,    82,
      83,    84,    85,    86,   282,   283,   575,   216,    88,    89,
      90,   179,   145,    92,   146,  1057,  1058,  1059,    94,    95,
     521,    96,   181,    98,   888,   889,   890,   891,  1228,   892,
    1229,  1230,  1068,  1204,   893,   894,   895,   896,   897,   898,
     899,  1080,  1081,  1315,  1082,  1083,  1084,  1085,   583,   584,
     917,   585,   910,   501,   502,   213,   567,   838,   839,   258,
     259,   380,  1231,   901,   902,    99,   100,   261,   101,   250,
     262,   263,  1087,   545,   445,   264,   265,   191,   192,   183,
     184,   721,   722,   756,   968,   439,   440,   217,   447,   448,
     296,   723,   102,   103,   905,   597,   299,   561,   266,  1088,
     860,  1186,  1043,   491,   300,   997,   925,   926,  1248,   147,
    1271,  1272,  1377,   198,   199,   200,   201,   202,   203,   204,
     205,   206
}

const yytype_int16 yypact[] [static]

const yytype_int16 yypgoto[] [static]

Initial value:

{
   -1172,  1454,   -44,   -78, -1172, -1172,  -467, -1076, -1172,  -597,
     230,  -304, -1172,  1318, -1172, -1172, -1172, -1172, -1172,   474,
    1282,  -481, -1172,  1405,    -1, -1172, -1172, -1172, -1172,  1038,
      36, -1116,  -471, -1172, -1172, -1172,  -902, -1172, -1172, -1172,
   -1171, -1172, -1172, -1172, -1172,  1027, -1172, -1172, -1172,  -459,
   -1172,    66,  -400,  -371, -1172,    57,  -412,    10,  -139,   -15,
    1180,  1166,  1172,  1175,  1176,   755,  1856,   768,   775,   736,
    1226,    23, -1172,   177, -1172,   396, -1172,  1160, -1172,   726,
   -1172,   505,   424,  -190,  -833,  1185, -1172,  -245,  -220, -1172,
    -296,   881,  -111, -1172, -1172,   -93,   969, -1172,   477,  -200,
   -1172, -1172,  -133,   -23, -1172,  1062,  -313, -1172, -1172,    -2,
     439, -1172,     0,   610, -1172, -1172,     4,   -60,   -12,   -26,
   -1172, -1172,   356,   402,  -194,    16,   959,   131, -1172, -1172,
     144,  -238,  1100, -1172,   465, -1172, -1172,   336, -1172, -1172,
    -461,     8,  1431, -1172, -1172, -1172, -1172,  -810,   311, -1172,
    -820,  -770, -1172,   337,  -866, -1172, -1172, -1172, -1172,   655,
   -1172, -1172, -1172, -1172,   333,   338, -1172,   339,  -502,   638,
   -1172,  -482, -1172,  -414,   730,   763,  1487, -1172,   526,  1414,
    1021,   -65,   250,  -988, -1172,   -49,   -42,   685,  -297,  -239,
     -18,  1312,  -182,  1032,  -162,  -167,  -226,   209,    -6, -1172,
   -1172,   862,   860, -1172,  -127, -1172,   830,   777,  -206,  1137,
    -135,  -363,   -62, -1172, -1172, -1172,  -225,   500, -1172, -1172,
    -824, -1172, -1172, -1172,  -235, -1172,  -736,   543, -1172, -1172,
   -1090, -1172, -1172,  -143, -1172, -1172,  1178,  1179,  1168,  1181,
    1167,   722
}

const yytype_uint16 yyr1[] [static]

const yytype_uint8 yyr2[] [static]

const char* yysrc

const yytype_uint16 yystos[] [static]

const yytype_int16 yytable[] [static]

const char* const yytname[] [static]

const yytype_uint8 yytranslate[] [static]

int yytype

semval* yyvaluep


Generated on Mon Feb 12 18:36:32 2007 for lestes by doxygen 1.5.1-20070107