// cc.gr.gen.h // *** DO NOT EDIT BY HAND *** // automatically generated by elkhound, from cc.gr #ifndef CC_GR_GEN_H #define CC_GR_GEN_H #include "useract.h" // UserActions #include "cc_type.h" // type identifiers like ST_CHAR (r) #include "cc_tokens.h" // lexer's token ids for classify() #include "trace.h" // trace #include "cc_ast.h" // C++ abstract syntax #include "Preprocessor.h" // Preprocessor #include "ccparse.h" // ParseEnv, the parser context class #include "exprloc.h" // EXPR_LOCK macros #define D(msg) \ trace("cc") << msg << endl inline std::ostream& operator<< (std::ostream &os, SourceLocation sl) { return os << toString(sl); } // implemented in implint.cc bool filterOutImplIntFirstParam (SourceLocation loc, IDeclarator *base, FakeList *¶ms); // implemented at end of file bool isGlobalScopeQualified(PQName const *pq); bool endsWithIdentifier(TypeSpecifier const *ts); bool keepDeclaration(Declaration const *d); // this is the shareable fragment of CCParse, since the new // Elkhound behavior prevents extension modules from inheriting // directly from CCParse class CCParseShareable : public UserActions, public ParseEnv { public: CCParseShareable(StringTable &table, ellcc::Preprocessor& PP) : ParseEnv(table, PP) {} // when this is the last element in a parameter list, the function // is a vararg function ASTTypeId *ellipsisTypeId(SourceLocation loc) { ASTTypeId *tid = new ASTTypeId(new TS_simple(loc, SL_UNKNOWN, ST_ELLIPSIS), new Declarator(new D_name(loc, SL_UNKNOWN, NULL /*name*/), NULL /*init*/)); return tid; } // make a TS_name, and supply CV flags TS_name *new_TS_name(SourceLocation loc, SourceLocation endloc, CVFlags cv, PQName *n, bool typenameUsed) { TS_name *ret = new TS_name(loc, endloc, n, typenameUsed); ret->cv = cv; return ret; } // make a TS_simple, and supply CV flags TS_simple *new_TS_simple(SourceLocation loc, SourceLocation endloc, CVFlags cv, SimpleTypeId id) { TS_simple *ret = new TS_simple(loc, endloc, id); ret->cv = cv; return ret; } // make a D_func but not if it attempts to be the return value of // another function (this helps resolve an ambiguity in the presence // of implicit int.. is it needed even without implicit int?) D_func *new_D_func (SourceLocation loc, SourceLocation endloc, IDeclarator *base, FakeList *params, CVFlags cv, ExceptionSpec /*nullable*/ *exnSpec) { if (base->isD_func()) { TRACE("cancel", loc << ": function returning a function"); return NULL; } if (LO.allowImplicitInt && !filterOutImplIntFirstParam(loc, base, params)) { return NULL; } return new D_func(loc, endloc, base, params, cv, exnSpec); } D_array *new_D_array (SourceLocation loc, SourceLocation endloc, IDeclarator *base, Expression * /*nullable*/ size) { if (base->isD_func()) { TRACE("cancel", loc << ": function returning an array"); return NULL; } return new D_array(loc, endloc, base, size); } TemplateArgument *templateUsed(TemplateArgument *list) { return new TA_templateUsed(list); } }; #line 114 "cc.gr.gen.h" // make a TS_typeof, and supply CV flags inline static TS_typeof *new_TS_typeof(SourceLocation loc, SourceLocation endloc, CVFlags cv, ASTTypeof *atype) { TS_typeof *ret = new TS_typeof(loc, endloc, atype); ret->cv = cv; return ret; } #line 127 "cc.gr.gen.h" #include "kandr.h" // makeKandRdefn, etc. #line 133 "cc.gr.gen.h" // parser context class class CCParse : public CCParseShareable { public: CCParse(StringTable &table, ellcc::Preprocessor& PP) : CCParseShareable(table, PP) {} #line 143 "cc.gr.gen.h" private: USER_ACTION_FUNCTIONS // see useract.h // declare the actual action function static SemanticValue doReductionAction( CCParse *ths, int productionId, SemanticValue const *semanticValues, SourceLocation loc, SourceLocation endloc); // declare the classifier function static int reclassifyToken( CCParse *ths, int oldTokenType, SemanticValue sval); TranslationUnit* action0___EarlyStartSymbol(SourceLocation loc, SourceLocation endloc, TranslationUnit* top); TranslationUnit* action1_File(SourceLocation loc, SourceLocation endloc, TranslationUnit* t); StringRef action2_Identifier(SourceLocation loc, SourceLocation endloc, StringRef n); TranslationUnit* action3_TranslationUnit(SourceLocation loc, SourceLocation endloc); TranslationUnit* action4_TranslationUnit(SourceLocation loc, SourceLocation endloc, TranslationUnit* t, TopForm* d); TranslationUnit* action5_TranslationUnit(SourceLocation loc, SourceLocation endloc, TranslationUnit* t); Expression* action6_PrimaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action7_PrimaryExpression(SourceLocation loc, SourceLocation endloc); Expression* action8_PrimaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action9_PrimaryExpression(SourceLocation loc, SourceLocation endloc, PQName* e); Expression* action10_PrimaryExpression(SourceLocation loc, SourceLocation endloc, S_compound* cs); Expression* action11_PrimaryExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t, IN_compound* i); Expression* action12_PrimaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action13_PrimaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action14_Literal(SourceLocation loc, SourceLocation endloc, StringRef i); Expression* action15_Literal(SourceLocation loc, SourceLocation endloc, StringRef f); Expression* action16_Literal(SourceLocation loc, SourceLocation endloc, E_stringLit* s); Expression* action17_Literal(SourceLocation loc, SourceLocation endloc, StringRef c); Expression* action18_Literal(SourceLocation loc, SourceLocation endloc); Expression* action19_Literal(SourceLocation loc, SourceLocation endloc); StringRef action20_PreprocString(SourceLocation loc, SourceLocation endloc, StringRef s); E_stringLit* action21_StringLiteral(SourceLocation loc, SourceLocation endloc, StringRef s); E_stringLit* action22_StringLiteral(SourceLocation loc, SourceLocation endloc, StringRef s, E_stringLit* cont); PQName* action23_IdExpression(SourceLocation loc, SourceLocation endloc, PQName* id); PQName* action24_IdExpression(SourceLocation loc, SourceLocation endloc, PQName* id); PQName* action25_UnqualifiedId(SourceLocation loc, SourceLocation endloc, StringRef id); PQName* action26_UnqualifiedId(SourceLocation loc, SourceLocation endloc, OperatorName* on); PQName* action27_UnqualifiedId(SourceLocation loc, SourceLocation endloc, OperatorName* on); PQName* action28_UnqualifiedId(SourceLocation loc, SourceLocation endloc, PQ_template* id); PQName* action29_PQualifiedId(SourceLocation loc, SourceLocation endloc, PQName* id); PQName* action30_PQualifiedId(SourceLocation loc, SourceLocation endloc, StringRef n, PQName* id); PQName* action31_PQualifiedId(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* targs, PQName* id); PQName* action32_PQualifiedId(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* targs, PQName* id); FakeList* action33_ArgumentList(SourceLocation loc, SourceLocation endloc, FakeList* e); Expression* action34_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action35_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* a, Expression* e); Expression* action36_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* f, FakeList* a); Expression* action37_PostfixExpression(SourceLocation loc, SourceLocation endloc, PQName* t, FakeList* a); Expression* action38_PostfixExpression(SourceLocation loc, SourceLocation endloc, TypeSpecifier* spec, FakeList* a); Expression* action39_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* p, PQName* n); Expression* action40_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* p, PQName* n); Expression* action41_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* p); Expression* action42_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* p); Expression* action43_PostfixExpression(SourceLocation loc, SourceLocation endloc, CastKeyword k, ASTTypeId* t, Expression* e); Expression* action44_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action45_PostfixExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); Expression* action46_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* pe); Expression* action47_PostfixExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); Expression* action48_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action49_PostfixExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t, Expression* n); Expression* action50_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action51_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action52_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e, Expression* e2); Expression* action53_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e, Expression* e2); Expression* action54_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e, ASTTypeId* t); Expression* action55_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action56_PostfixExpression(SourceLocation loc, SourceLocation endloc, Expression* e); TypeSpecifier* action57_CtorExpressionType(SourceLocation loc, SourceLocation endloc, PQName* n); TypeSpecifier* action58_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action59_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action60_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action61_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action62_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action63_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action64_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action65_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action66_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action67_CtorExpressionType(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action68_CtorExpressionType(SourceLocation loc, SourceLocation endloc); CastKeyword action69_CastKeyword(SourceLocation loc, SourceLocation endloc); CastKeyword action70_CastKeyword(SourceLocation loc, SourceLocation endloc); CastKeyword action71_CastKeyword(SourceLocation loc, SourceLocation endloc); CastKeyword action72_CastKeyword(SourceLocation loc, SourceLocation endloc); FakeList* action73_ExpressionList(SourceLocation loc, SourceLocation endloc, Expression* a); FakeList* action74_ExpressionList(SourceLocation loc, SourceLocation endloc, Expression* a, FakeList* e); FakeList* action75_ExpressionListOpt(SourceLocation loc, SourceLocation endloc); FakeList* action76_ExpressionListOpt(SourceLocation loc, SourceLocation endloc, FakeList* e); Expression* action77_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action78_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action79_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action80_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action81_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action82_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action83_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action84_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action85_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action86_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action87_UnaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action88_UnaryExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); Expression* action89_UnaryExpression(SourceLocation loc, SourceLocation endloc, E_new* e); Expression* action90_UnaryExpression(SourceLocation loc, SourceLocation endloc, StringRef n); bool action91_ColonColonOpt(SourceLocation loc, SourceLocation endloc); bool action92_ColonColonOpt(SourceLocation loc, SourceLocation endloc); E_new* action93_NewExpression(SourceLocation loc, SourceLocation endloc, bool c, FakeList* p, ASTTypeId* t, ArgExpressionListOpt* i); E_new* action94_NewExpression(SourceLocation loc, SourceLocation endloc, bool c, FakeList* p, ASTTypeId* t, ArgExpressionListOpt* i); FakeList* action95_NewPlacementOpt(SourceLocation loc, SourceLocation endloc); FakeList* action96_NewPlacementOpt(SourceLocation loc, SourceLocation endloc, FakeList* lst); ASTTypeId* action97_NewTypeId(SourceLocation loc, SourceLocation endloc, TypeSpecifier* spec, IDeclarator* decl); IDeclarator* action98_NewDeclaratorOpt(SourceLocation loc, SourceLocation endloc); IDeclarator* action99_NewDeclaratorOpt(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action100_NewDeclaratorOpt(SourceLocation loc, SourceLocation endloc, PQName* n, enum CVFlags cv, IDeclarator* d); IDeclarator* action101_NewDeclaratorOpt(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action102_DirectNewDeclarator(SourceLocation loc, SourceLocation endloc, Expression* sz); IDeclarator* action103_DirectNewDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* sz); ArgExpressionListOpt* action104_NewInitializerOpt(SourceLocation loc, SourceLocation endloc); ArgExpressionListOpt* action105_NewInitializerOpt(SourceLocation loc, SourceLocation endloc, FakeList* lst); Expression* action106_DeleteExpression(SourceLocation loc, SourceLocation endloc, bool c, Expression* e); Expression* action107_DeleteExpression(SourceLocation loc, SourceLocation endloc, bool c, Expression* e); PQName* action108_NameAfterDot(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action109_NameAfterDot(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action110_NAD1(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action111_NAD1(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list); PQName* action112_NAD1(SourceLocation loc, SourceLocation endloc, StringRef n); PQName* action113_NAD1(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list); PQName* action114_NAD1(SourceLocation loc, SourceLocation endloc, OperatorName* on); PQName* action115_NAD1(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list, PQName* rest); PQName* action116_NAD2(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list); PQName* action117_NAD2(SourceLocation loc, SourceLocation endloc, StringRef n); PQName* action118_NAD2(SourceLocation loc, SourceLocation endloc, OperatorName* on); PQName* action119_NAD2(SourceLocation loc, SourceLocation endloc, OperatorName* on, /*fakelist*/TemplateArgument* list); PQName* action120_NAD2(SourceLocation loc, SourceLocation endloc, OperatorName* on, /*fakelist*/TemplateArgument* list); PQName* action121_NAD2(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list, PQName* rest); PQName* action122_NAD2(SourceLocation loc, SourceLocation endloc, StringRef n, PQName* rest); Expression* action123_CastExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action124_CastExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t, Expression* e); Expression* action125_CastExpression(SourceLocation loc, SourceLocation endloc, ASTTypeId* t, Expression* e); Expression* action126_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action127_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action128_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action129_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action130_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action131_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action132_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action133_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action134_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action135_BinExp_high(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action136_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action137_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action138_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action139_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action140_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action141_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action142_BinExp_mid(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action143_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action144_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action145_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action146_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action147_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action148_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action149_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action150_BinaryExpression(SourceLocation loc, SourceLocation endloc, Expression* left, Expression* right); Expression* action151_ConditionalExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action152_ConditionalExpression(SourceLocation loc, SourceLocation endloc, Expression* cond, Expression* th, Expression* el); Expression* action153_ConditionalExpression(SourceLocation loc, SourceLocation endloc, Expression* cond, Expression* el); Expression* action154_AssignmentExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action155_AssignmentExpression(SourceLocation loc, SourceLocation endloc, Expression* e1, enum BinaryOp op, Expression* e2); Expression* action156_AssignmentExpression(SourceLocation loc, SourceLocation endloc, E_throw* e); enum BinaryOp action157_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action158_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action159_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action160_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action161_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action162_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action163_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action164_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action165_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action166_AssignmentOperator(SourceLocation loc, SourceLocation endloc); enum BinaryOp action167_AssignmentOperator(SourceLocation loc, SourceLocation endloc); Expression* action168_Expression(SourceLocation loc, SourceLocation endloc, Expression* ae); Expression* action169_Expression(SourceLocation loc, SourceLocation endloc, Expression* e, Expression* ae); Expression* action170_ExpressionOpt(SourceLocation loc, SourceLocation endloc); Expression* action171_ExpressionOpt(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action172_ConstantExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Expression* action173_ConstantExpressionOpt(SourceLocation loc, SourceLocation endloc); Expression* action174_ConstantExpressionOpt(SourceLocation loc, SourceLocation endloc, Expression* e); StringRef action175_LabelAndColon(SourceLocation loc, SourceLocation endloc, StringRef n); StringRef action176_LabelAndColon(SourceLocation loc, SourceLocation endloc, StringRef n); Statement* action177_Statement(SourceLocation loc, SourceLocation endloc, StringRef n, Statement* s); Statement* action178_Statement(SourceLocation loc, SourceLocation endloc, Expression* e, Statement* s); Statement* action179_Statement(SourceLocation loc, SourceLocation endloc, Statement* s); Statement* action180_Statement(SourceLocation loc, SourceLocation endloc, Statement* s); Statement* action181_Statement(SourceLocation loc, SourceLocation endloc, S_compound* s); Statement* action182_Statement(SourceLocation loc, SourceLocation endloc, Condition* e, Statement* s); Statement* action183_Statement(SourceLocation loc, SourceLocation endloc, Condition* e, Statement* s1, Statement* s2); Statement* action184_Statement(SourceLocation loc, SourceLocation endloc, Condition* e, Statement* s); Statement* action185_Statement(SourceLocation loc, SourceLocation endloc, Condition* e, Statement* s); Statement* action186_Statement(SourceLocation loc, SourceLocation endloc, Statement* s, Expression* e); Statement* action187_Statement(SourceLocation loc, SourceLocation endloc, Statement* s1, Condition* c, Expression* e, Statement* s2); Statement* action188_Statement(SourceLocation loc, SourceLocation endloc); Statement* action189_Statement(SourceLocation loc, SourceLocation endloc); Statement* action190_Statement(SourceLocation loc, SourceLocation endloc, Expression* e); Statement* action191_Statement(SourceLocation loc, SourceLocation endloc); Statement* action192_Statement(SourceLocation loc, SourceLocation endloc, StringRef n); Statement* action193_Statement(SourceLocation loc, SourceLocation endloc, Declaration* d); Statement* action194_Statement(SourceLocation loc, SourceLocation endloc, S_try* s); Statement* action195_Statement(SourceLocation loc, SourceLocation endloc, Asm* a); Statement* action196_Statement(SourceLocation loc, SourceLocation endloc, NamespaceDecl* n); Statement* action197_Statement(SourceLocation loc, SourceLocation endloc, Function* f); Statement* action198_Statement(SourceLocation loc, SourceLocation endloc, Function* k); Statement* action199_Statement(SourceLocation loc, SourceLocation endloc, Expression* e, Expression* e2, Statement* s); Statement* action200_Statement(SourceLocation loc, SourceLocation endloc, Expression* e); Statement* action201_Statement(SourceLocation loc, SourceLocation endloc, UberModifiers m1, FakeList* list); Statement* action202_Statement(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Statement* action203_ExpressionStatement(SourceLocation loc, SourceLocation endloc); Statement* action204_ExpressionStatement(SourceLocation loc, SourceLocation endloc, Expression* e); S_compound* action205_CompoundStatement(SourceLocation loc, SourceLocation endloc, S_compound* seq); S_compound* action206_CompoundStatement(SourceLocation loc, SourceLocation endloc, S_compound* seq, Statement* lesl); S_compound* action207_CompoundStmtHelper(SourceLocation loc, SourceLocation endloc); S_compound* action208_CompoundStmtHelper(SourceLocation loc, SourceLocation endloc, S_compound* c, Statement* s); Condition* action209_Condition(SourceLocation loc, SourceLocation endloc, Expression* e); Condition* action210_Condition(SourceLocation loc, SourceLocation endloc, TypeSpecifier* spec, IDeclarator* decl, Expression* e); Condition* action211_ConditionOpt(SourceLocation loc, SourceLocation endloc); Condition* action212_ConditionOpt(SourceLocation loc, SourceLocation endloc, Condition* c); Statement* action213_ForInitStatement(SourceLocation loc, SourceLocation endloc, Statement* s); Statement* action214_ForInitStatement(SourceLocation loc, SourceLocation endloc, Declaration* s); TopForm* action215_Declaration(SourceLocation loc, SourceLocation endloc, Declaration* d); TopForm* action216_Declaration(SourceLocation loc, SourceLocation endloc, Function* f); TopForm* action217_Declaration(SourceLocation loc, SourceLocation endloc, TemplateDeclaration* t); TopForm* action218_Declaration(SourceLocation loc, SourceLocation endloc, TopForm* d); TopForm* action219_Declaration(SourceLocation loc, SourceLocation endloc, TopForm* s); TopForm* action220_Declaration(SourceLocation loc, SourceLocation endloc, Asm* a); TopForm* action221_Declaration(SourceLocation loc, SourceLocation endloc, TF_namespaceDefn* n); TopForm* action222_Declaration(SourceLocation loc, SourceLocation endloc, NamespaceDecl* n); TopForm* action223_Declaration(SourceLocation loc, SourceLocation endloc, Function* k); TopForm* action224_Declaration(SourceLocation loc, SourceLocation endloc, Function* k); TopForm* action225_Declaration(SourceLocation loc, SourceLocation endloc, Function* f); TopForm* action226_Declaration(SourceLocation loc, SourceLocation endloc, UberModifiers m1, FakeList* list); TopForm* action227_Declaration(SourceLocation loc, SourceLocation endloc, State* s); Declaration* action228_BlockDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* d); Declaration* action229_SimpleDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* spec, FakeList* list); Declaration* action230_SimpleDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* spec); Declaration* action231_SimpleDeclaration(SourceLocation loc, SourceLocation endloc, Declarator* d); Declaration* action232_DeclSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n, UberModifiers m2); Declaration* action233_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, PQName* n, UberModifiers m2); Declaration* action234_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers k1, UberModifiers m2); Declaration* action235_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, UberModifiers k1, UberModifiers m2); Declaration* action236_DeclSpecifier(SourceLocation loc, SourceLocation endloc, TypeSpecifier* e, UberModifiers m2); Declaration* action237_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, TypeSpecifier* e, UberModifiers m2); Declaration* action238_DeclSpecifier(SourceLocation loc, SourceLocation endloc, ASTTypeof* te, UberModifiers m2); Declaration* action239_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, ASTTypeof* te, UberModifiers m2); Declaration* action240_DeclSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n, UberModifiers m2); Declaration* action241_DeclSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, PQName* n, UberModifiers m2); TypeSpecifier* action242_ElaboratedOrSpecifier(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s); TypeSpecifier* action243_ElaboratedOrSpecifier(SourceLocation loc, SourceLocation endloc, TS_classSpec* s); TypeSpecifier* action244_ElaboratedOrSpecifier(SourceLocation loc, SourceLocation endloc, TS_enumSpec* s); UberModifiers action245_UberModifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers u); UberModifiers action246_UberModifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action247_UberModifierSeqOpt(SourceLocation loc, SourceLocation endloc); UberModifiers action248_UberModifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s); UberModifiers action249_UberTypeAndModifierSeqOpt(SourceLocation loc, SourceLocation endloc); UberModifiers action250_UberTypeAndModifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action251_UberTypeAndModifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action252_UberCVQualifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers u); UberModifiers action253_UberCVQualifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action254_UberCVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc); UberModifiers action255_UberCVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s); UberModifiers action256_UberTypeAndCVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc); UberModifiers action257_UberTypeAndCVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action258_UberTypeAndCVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers u); UberModifiers action259_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action260_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action261_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action262_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action263_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action264_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action265_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action266_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action267_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action268_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action269_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action270_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action271_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action272_UberModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action273_UberCVQualifier(SourceLocation loc, SourceLocation endloc); UberModifiers action274_UberCVQualifier(SourceLocation loc, SourceLocation endloc); UberModifiers action275_UberCVQualifier(SourceLocation loc, SourceLocation endloc); UberModifiers action276_UberCVQualifier(SourceLocation loc, SourceLocation endloc); UberModifiers action277_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action278_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action279_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action280_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action281_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action282_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action283_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action284_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action285_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action286_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action287_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action288_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action289_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); UberModifiers action290_UberTypeKeyword(SourceLocation loc, SourceLocation endloc); TypeSpecifier* action291_ElaboratedTypeSpecifier(SourceLocation loc, SourceLocation endloc, enum TypeIntr k, PQName* n); TypeSpecifier* action292_ElaboratedTypeSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n); TypeSpecifier* action293_ElaboratedTypeSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n); TypeSpecifier* action294_ElaboratedTypeSpecifier(SourceLocation loc, SourceLocation endloc, enum TypeIntr k, PQName* n); TypeSpecifier* action295_ElaboratedTypeSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n); TypeSpecifier* action296_TypeSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n, UberModifiers cv2); TypeSpecifier* action297_TypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers cv1, PQName* n, UberModifiers cv2); TypeSpecifier* action298_TypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers k1, UberModifiers m2); TypeSpecifier* action299_TypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, UberModifiers k1, UberModifiers m2); TypeSpecifier* action300_TypeSpecifier(SourceLocation loc, SourceLocation endloc, TypeSpecifier* e, UberModifiers m2); TypeSpecifier* action301_TypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m1, TypeSpecifier* e, UberModifiers m2); TypeSpecifier* action302_TypeSpecifier(SourceLocation loc, SourceLocation endloc, ASTTypeof* te, UberModifiers cv2); TypeSpecifier* action303_TypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers cv1, ASTTypeof* te, UberModifiers cv2); PQName* action304_PQTypeName(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action305_PQTypeName(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action306_PQTypeName_ncc(SourceLocation loc, SourceLocation endloc, StringRef n); PQName* action307_PQTypeName_ncc(SourceLocation loc, SourceLocation endloc, PQ_template* id); PQName* action308_PQTypeName_ncc(SourceLocation loc, SourceLocation endloc, StringRef q, PQName* n); PQName* action309_PQTypeName_ncc(SourceLocation loc, SourceLocation endloc, StringRef q, /*fakelist*/TemplateArgument* targs, PQName* n); PQName* action310_PQTypeName_notfirst(SourceLocation loc, SourceLocation endloc, PQName* id); PQName* action311_PQTypeName_notfirst(SourceLocation loc, SourceLocation endloc, PQ_template* id); PQName* action312_PQTypeName_notfirst(SourceLocation loc, SourceLocation endloc, StringRef q, /*fakelist*/TemplateArgument* targs, PQName* n); TS_enumSpec* action313_EnumSpecifier(SourceLocation loc, SourceLocation endloc, FakeList* list); TS_enumSpec* action314_EnumSpecifier(SourceLocation loc, SourceLocation endloc, StringRef n, FakeList* list); TS_enumSpec* action315_EnumSpecifier(SourceLocation loc, SourceLocation endloc, FakeList* list); TS_enumSpec* action316_EnumSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n, FakeList* list); FakeList* action317_EnumeratorListOpt(SourceLocation loc, SourceLocation endloc); FakeList* action318_EnumeratorListOpt(SourceLocation loc, SourceLocation endloc, Enumerator* def); FakeList* action319_EnumeratorListOpt(SourceLocation loc, SourceLocation endloc, Enumerator* def, FakeList* list); Enumerator* action320_EnumeratorDefinition(SourceLocation loc, SourceLocation endloc, StringRef name); Enumerator* action321_EnumeratorDefinition(SourceLocation loc, SourceLocation endloc, StringRef name, Expression* expr); Asm* action322_AsmDefinition(SourceLocation loc, SourceLocation endloc, E_stringLit* s); Asm* action323_AsmDefinition(SourceLocation loc, SourceLocation endloc, enum CVFlags q, E_stringLit* s); Asm* action324_AsmDefinition(SourceLocation loc, SourceLocation endloc, enum CVFlags q, E_stringLit* s, Constraints* ocs); Asm* action325_AsmDefinition(SourceLocation loc, SourceLocation endloc, E_stringLit* s, Constraints* ocs); TopForm* action326_LinkageSpecification(SourceLocation loc, SourceLocation endloc, StringRef n, TranslationUnit* tu); TopForm* action327_LinkageSpecification(SourceLocation loc, SourceLocation endloc, StringRef n, TopForm* tf); FakeList* action328_InitDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d); FakeList* action329_InitDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d, FakeList* list); FakeList* action330_InitDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d, FakeList* list); Declarator* action331_InitDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Declarator* action332_InitDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Initializer* i); Initializer* action333_Initializer(SourceLocation loc, SourceLocation endloc, Initializer* i); Initializer* action334_Initializer(SourceLocation loc, SourceLocation endloc, FakeList* args); Initializer* action335_SimpleInitializerClause(SourceLocation loc, SourceLocation endloc, Expression* e); Initializer* action336_SimpleInitializerClause(SourceLocation loc, SourceLocation endloc, IN_compound* c); Initializer* action337_InitializerClause(SourceLocation loc, SourceLocation endloc, Initializer* init); Initializer* action338_InitializerClause(SourceLocation loc, SourceLocation endloc, StringRef d, Initializer* init); Initializer* action339_InitializerClause(SourceLocation loc, SourceLocation endloc, FakeList* dl, Initializer* init); Initializer* action340_InitializerClause(SourceLocation loc, SourceLocation endloc, FakeList* dl, Initializer* init); IN_compound* action341_CompoundInitializer(SourceLocation loc, SourceLocation endloc, IN_compound* list); IN_compound* action342_CompoundInitializer(SourceLocation loc, SourceLocation endloc); void action343_CommaOpt(SourceLocation loc, SourceLocation endloc); void action344_CommaOpt(SourceLocation loc, SourceLocation endloc); IN_compound* action345_InitializerList(SourceLocation loc, SourceLocation endloc, Initializer* init); IN_compound* action346_InitializerList(SourceLocation loc, SourceLocation endloc, IN_compound* list, Initializer* init); IDeclarator* action347_Declarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action348_Declarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action349_Declarator(SourceLocation loc, SourceLocation endloc, PQName* n, enum CVFlags cv, IDeclarator* d); IDeclarator* action350_Declarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action351_Declarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, E_stringLit* s); IDeclarator* action352_Declarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, E_stringLit* s); IDeclarator* action353_Declarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, enum CVFlags cv2, IDeclarator* d); IDeclarator* action354_Declarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, AttributeSpecifierList* attr); IDeclarator* action355_DirectDeclarator(SourceLocation loc, SourceLocation endloc, PQName* n); IDeclarator* action356_DirectDeclarator(SourceLocation loc, SourceLocation endloc, PQName* n); IDeclarator* action357_DirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* params, enum CVFlags cv, ExceptionSpec* e); IDeclarator* action358_DirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* sz); IDeclarator* action359_DirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action360_DirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, enum CVFlags q); IDeclarator* action361_DirectDeclarator(SourceLocation loc, SourceLocation endloc, AttributeSpecifierList* attr, IDeclarator* d); PQName* action362_PQDtorName(SourceLocation loc, SourceLocation endloc, StringRef n); PQName* action363_PQDtorName(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list); PQName* action364_PQDtorName(SourceLocation loc, SourceLocation endloc, StringRef q, PQName* rhs); PQName* action365_PQDtorName(SourceLocation loc, SourceLocation endloc, StringRef q, /*fakelist*/TemplateArgument* targs, PQName* rhs); PQName* action366_PQDtorName(SourceLocation loc, SourceLocation endloc, StringRef q, /*fakelist*/TemplateArgument* targs, PQName* rhs); PQName* action367_PtrToMemberName(SourceLocation loc, SourceLocation endloc, PQName* n); enum CVFlags action368_CVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc); enum CVFlags action369_CVQualifierSeqOpt(SourceLocation loc, SourceLocation endloc, enum CVFlags s); enum CVFlags action370_CVQualifierSeq(SourceLocation loc, SourceLocation endloc, enum CVFlags q); enum CVFlags action371_CVQualifierSeq(SourceLocation loc, SourceLocation endloc, enum CVFlags q, enum CVFlags s); enum CVFlags action372_CVQualifier(SourceLocation loc, SourceLocation endloc); enum CVFlags action373_CVQualifier(SourceLocation loc, SourceLocation endloc); enum CVFlags action374_CVQualifier(SourceLocation loc, SourceLocation endloc); ASTTypeId* action375_TypeId(SourceLocation loc, SourceLocation endloc, TypeSpecifier* spec, IDeclarator* decl); IDeclarator* action376_AbstractDeclaratorOpt(SourceLocation loc, SourceLocation endloc); IDeclarator* action377_AbstractDeclaratorOpt(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action378_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action379_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action380_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, PQName* n, enum CVFlags cv, IDeclarator* d); IDeclarator* action381_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action382_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, AttributeSpecifier* attrspec, enum CVFlags cv2, IDeclarator* d); IDeclarator* action383_AbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, AttributeSpecifierList* attr); IDeclarator* action384_DirectAbstractDeclaratorOpt(SourceLocation loc, SourceLocation endloc); IDeclarator* action385_DirectAbstractDeclaratorOpt(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action386_DirectAbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* args, enum CVFlags cv, ExceptionSpec* e); IDeclarator* action387_DirectAbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* sz); IDeclarator* action388_DirectAbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action389_DirectAbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, enum CVFlags q); IDeclarator* action390_DirectAbstractDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); FakeList* action391_ParameterDeclarationClause(SourceLocation loc, SourceLocation endloc, FakeList* p); FakeList* action392_ParameterDeclarationClause(SourceLocation loc, SourceLocation endloc); FakeList* action393_ParameterDeclarationList(SourceLocation loc, SourceLocation endloc); FakeList* action394_ParameterDeclarationList(SourceLocation loc, SourceLocation endloc, ASTTypeId* d); FakeList* action395_ParameterDeclarationList(SourceLocation loc, SourceLocation endloc, ASTTypeId* d); FakeList* action396_ParameterDeclarationList(SourceLocation loc, SourceLocation endloc, ASTTypeId* d, FakeList* list); ASTTypeId* action397_ParameterDeclaration(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, Declarator* pd); ASTTypeId* action398_ParameterDeclaration(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, Declarator* pd); ASTTypeId* action399_ParameterDeclaration(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, Declarator* pd); ASTTypeId* action400_ParameterDeclaration(SourceLocation loc, SourceLocation endloc, IDeclarator* d); ASTTypeId* action401_ParameterDeclaration(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Declarator* action402_ParameterDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Declarator* action403_ParameterDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* e); Declarator* action404_ParameterDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Declarator* action405_ParameterDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* e); Function* action406_FunctionDefinition(SourceLocation loc, SourceLocation endloc, Declaration* r, IDeclarator* d, S_compound* b); Function* action407_FunctionDefinition(SourceLocation loc, SourceLocation endloc, Declaration* r, IDeclarator* d, S_compound* b, FakeList* h); Function* action408_FunctionDefinition(SourceLocation loc, SourceLocation endloc, DeclFlags m, IDeclarator* d, FakeList* c, S_compound* b); Function* action409_FunctionDefinition(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* c, S_compound* b); Function* action410_FunctionDefinition(SourceLocation loc, SourceLocation endloc, DeclFlags e, IDeclarator* d, FakeList* c, S_compound* b, FakeList* h); Function* action411_FunctionDefinition(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* c, S_compound* b, FakeList* h); IDeclarator* action412_FDDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); S_compound* action413_FunctionBody(SourceLocation loc, SourceLocation endloc, S_compound* s); FakeList* action414_CtorInitializerOpt(SourceLocation loc, SourceLocation endloc); FakeList* action415_CtorInitializerOpt(SourceLocation loc, SourceLocation endloc, FakeList* list); TS_classSpec* action416_ClassSpecifier(SourceLocation loc, SourceLocation endloc, enum TypeIntr k, PQName* n, FakeList* b, MemberList* memb); TS_classSpec* action417_ClassSpecifier(SourceLocation loc, SourceLocation endloc, enum TypeIntr k, AttributeSpecifierList* as, PQName* n, FakeList* b, MemberList* memb); PQName* action418_ClassHeadNameOpt(SourceLocation loc, SourceLocation endloc); PQName* action419_ClassHeadNameOpt(SourceLocation loc, SourceLocation endloc, PQName* n); PQName* action420_ClassHeadName(SourceLocation loc, SourceLocation endloc, StringRef n); PQName* action421_ClassHeadName(SourceLocation loc, SourceLocation endloc, PQ_template* t); PQName* action422_ClassHeadName(SourceLocation loc, SourceLocation endloc, StringRef n, PQName* rest); PQName* action423_ClassHeadName(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* targs, PQName* rest); PQName* action424_ClassHeadName(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* targs, PQName* rest); enum TypeIntr action425_ClassKey(SourceLocation loc, SourceLocation endloc); enum TypeIntr action426_ClassKey(SourceLocation loc, SourceLocation endloc); enum TypeIntr action427_ClassKey(SourceLocation loc, SourceLocation endloc); MemberList* action428_MemberDeclarationSeqOpt(SourceLocation loc, SourceLocation endloc); MemberList* action429_MemberDeclarationSeqOpt(SourceLocation loc, SourceLocation endloc, MemberList* list); MemberList* action430_MemberDeclarationSeqOpt(SourceLocation loc, SourceLocation endloc, MemberList* list, Member* decl); MemberList* action431_MemberDeclarationSeqOpt(SourceLocation loc, SourceLocation endloc, MemberList* list, AccessKeyword k); AccessKeyword action432_AccessSpecifier(SourceLocation loc, SourceLocation endloc); AccessKeyword action433_AccessSpecifier(SourceLocation loc, SourceLocation endloc); AccessKeyword action434_AccessSpecifier(SourceLocation loc, SourceLocation endloc); Member* action435_MemberDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* spec, FakeList* list); Member* action436_MemberDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* spec); Member* action437_MemberDeclaration(SourceLocation loc, SourceLocation endloc, PQName* n); Member* action438_MemberDeclaration(SourceLocation loc, SourceLocation endloc, PQName* n); Member* action439_MemberDeclaration(SourceLocation loc, SourceLocation endloc, Function* f); Member* action440_MemberDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* d); Member* action441_MemberDeclaration(SourceLocation loc, SourceLocation endloc, TemplateDeclaration* d); Member* action442_MemberDeclaration(SourceLocation loc, SourceLocation endloc, State* s); Declaration* action443_CDtorProtoDecl(SourceLocation loc, SourceLocation endloc, DeclFlags flags, Declarator* d); Declaration* action444_CDtorProtoDecl(SourceLocation loc, SourceLocation endloc, Declarator* d); FakeList* action445_MemberDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d); FakeList* action446_MemberDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d, FakeList* list); Declarator* action447_MemberDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); Declarator* action448_MemberDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* e); Declarator* action449_MemberDeclarator(SourceLocation loc, SourceLocation endloc, StringRef n, Expression* e); Declarator* action450_MemberDeclarator(SourceLocation loc, SourceLocation endloc, StringRef n, Expression* e); StringRef action451_IdentifierOpt(SourceLocation loc, SourceLocation endloc); StringRef action452_IdentifierOpt(SourceLocation loc, SourceLocation endloc, StringRef n); DeclFlags action453_CDtorModifier(SourceLocation loc, SourceLocation endloc); DeclFlags action454_CDtorModifier(SourceLocation loc, SourceLocation endloc); DeclFlags action455_CDtorModifier(SourceLocation loc, SourceLocation endloc); DeclFlags action456_CDtorModifier(SourceLocation loc, SourceLocation endloc); DeclFlags action457_CDtorModifier(SourceLocation loc, SourceLocation endloc); DeclFlags action458_CDtorModifierSeq(SourceLocation loc, SourceLocation endloc, DeclFlags m); DeclFlags action459_CDtorModifierSeq(SourceLocation loc, SourceLocation endloc, DeclFlags s, DeclFlags m); FakeList* action460_BaseClauseOpt(SourceLocation loc, SourceLocation endloc); FakeList* action461_BaseClauseOpt(SourceLocation loc, SourceLocation endloc, FakeList* b); FakeList* action462_BaseSpecifierList(SourceLocation loc, SourceLocation endloc, BaseClassSpec* b); FakeList* action463_BaseSpecifierList(SourceLocation loc, SourceLocation endloc, BaseClassSpec* b, FakeList* list); BaseClassSpec* action464_BaseSpecifier(SourceLocation loc, SourceLocation endloc, PQName* n); BaseClassSpec* action465_BaseSpecifier(SourceLocation loc, SourceLocation endloc, AccessKeyword a, PQName* n); BaseClassSpec* action466_BaseSpecifier(SourceLocation loc, SourceLocation endloc, AccessKeyword a, bool v, PQName* n); bool action467_VirtualOpt(SourceLocation loc, SourceLocation endloc); bool action468_VirtualOpt(SourceLocation loc, SourceLocation endloc); AccessKeyword action469_AccessSpecifierOpt(SourceLocation loc, SourceLocation endloc); AccessKeyword action470_AccessSpecifierOpt(SourceLocation loc, SourceLocation endloc, AccessKeyword k); PQName* action471_PQClassName(SourceLocation loc, SourceLocation endloc, PQName* n); OperatorName* action472_ConversionFunctionId(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); ASTTypeId* action473_ConversionTypeId(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, IDeclarator* d); IDeclarator* action474_ConversionDeclaratorOpt(SourceLocation loc, SourceLocation endloc); IDeclarator* action475_ConversionDeclaratorOpt(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action476_ConversionDeclaratorOpt(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action477_ConversionDeclaratorOpt(SourceLocation loc, SourceLocation endloc, PQName* n, enum CVFlags cv, IDeclarator* d); FakeList* action478_MemInitializerList(SourceLocation loc, SourceLocation endloc, MemberInit* i); FakeList* action479_MemInitializerList(SourceLocation loc, SourceLocation endloc, MemberInit* i, FakeList* list); MemberInit* action480_MemInitializer(SourceLocation loc, SourceLocation endloc, PQName* n, FakeList* e); PQName* action481_MemInitializerId(SourceLocation loc, SourceLocation endloc, PQName* n); OperatorName* action482_OperatorFunctionId(SourceLocation loc, SourceLocation endloc, OperatorName* od); OperatorName* action483_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action484_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action485_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action486_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action487_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action488_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action489_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action490_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action491_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action492_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action493_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action494_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action495_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action496_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action497_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action498_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action499_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action500_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action501_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action502_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action503_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action504_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action505_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action506_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action507_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action508_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action509_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action510_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action511_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action512_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action513_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action514_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action515_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action516_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action517_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action518_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action519_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action520_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action521_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action522_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action523_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action524_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action525_Operator(SourceLocation loc, SourceLocation endloc); OperatorName* action526_Operator(SourceLocation loc, SourceLocation endloc); TemplateDeclaration* action527_TemplateDeclaration(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist, Function* def); TemplateDeclaration* action528_TemplateDeclaration(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist, Declaration* d); TemplateDeclaration* action529_TemplateDeclaration(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist, TemplateDeclaration* td); TemplateDeclaration* action530_TemplateDeclaration(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist, Declaration* d); /*fakelist*/TemplateParameter* action531_TemplatePreamble(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist); /*fakelist*/TemplateParameter* action532_TemplatePreamble(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* plist); /*fakelist*/TemplateParameter* action533_TemplatePreamble(SourceLocation loc, SourceLocation endloc); /*fakelist*/TemplateParameter* action534_TemplatePreamble(SourceLocation loc, SourceLocation endloc); /*fakelist*/TemplateParameter* action535_TemplateParameterList(SourceLocation loc, SourceLocation endloc, StringRef i, ASTTypeId* t, /*nullable fakelist*/TemplateParameter* next); /*fakelist*/TemplateParameter* action536_TemplateParameterList(SourceLocation loc, SourceLocation endloc, ASTTypeId* p, /*nullable fakelist*/TemplateParameter* next); /*fakelist*/TemplateParameter* action537_TemplateParameterList(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* pl, StringRef i, PQName* t, /*nullable fakelist*/TemplateParameter* next); /*nullable fakelist*/TemplateParameter* action538_TemplateParameterListContinuation(SourceLocation loc, SourceLocation endloc); /*nullable fakelist*/TemplateParameter* action539_TemplateParameterListContinuation(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateParameter* next); void action540_ClassOrTypename(SourceLocation loc, SourceLocation endloc); void action541_ClassOrTypename(SourceLocation loc, SourceLocation endloc); ASTTypeId* action542_DefaultTypeOpt(SourceLocation loc, SourceLocation endloc); ASTTypeId* action543_DefaultTypeOpt(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); PQName* action544_DefaultTemplateOpt(SourceLocation loc, SourceLocation endloc); PQName* action545_DefaultTemplateOpt(SourceLocation loc, SourceLocation endloc, PQName* t); /*fakelist*/TemplateArgument* action546_TemplateArgumentListOpt(SourceLocation loc, SourceLocation endloc); /*fakelist*/TemplateArgument* action547_TemplateArgumentListOpt(SourceLocation loc, SourceLocation endloc, /*fakelist*/TemplateArgument* list); PQ_template* action548_TemplateId(SourceLocation loc, SourceLocation endloc, StringRef n, /*fakelist*/TemplateArgument* list); PQ_template* action549_TemplateId(SourceLocation loc, SourceLocation endloc, OperatorName* on, /*fakelist*/TemplateArgument* list); /*fakelist*/TemplateArgument* action550_TemplateArgumentList(SourceLocation loc, SourceLocation endloc, TemplateArgument* a); TemplateArgument* action551_TemplateArgumentListTailOpt(SourceLocation loc, SourceLocation endloc); TemplateArgument* action552_TemplateArgumentListTailOpt(SourceLocation loc, SourceLocation endloc, TemplateArgument* a); TemplateArgument* action553_TemplateArgument(SourceLocation loc, SourceLocation endloc, ASTTypeId* type, TemplateArgument* tail); TemplateArgument* action554_TemplateArgument(SourceLocation loc, SourceLocation endloc, Expression* e, TemplateArgument* tail); TopForm* action555_ExplicitInstantiation(SourceLocation loc, SourceLocation endloc, Declaration* d); TopForm* action556_ExplicitInstantiation(SourceLocation loc, SourceLocation endloc, Declaration* d); TopForm* action557_ExplicitInstantiation(SourceLocation loc, SourceLocation endloc, Declaration* d); S_try* action558_TryBlock(SourceLocation loc, SourceLocation endloc, S_compound* s, FakeList* h); FakeList* action559_HandlerSeq(SourceLocation loc, SourceLocation endloc, Handler* h); FakeList* action560_HandlerSeq(SourceLocation loc, SourceLocation endloc, Handler* h, FakeList* seq); Handler* action561_Handler(SourceLocation loc, SourceLocation endloc, ASTTypeId* d, S_compound* s); Handler* action562_Handler(SourceLocation loc, SourceLocation endloc, S_compound* s); ASTTypeId* action563_HandlerParameter(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, IDeclarator* d); ASTTypeId* action564_HandlerParameter(SourceLocation loc, SourceLocation endloc, TypeSpecifier* s, IDeclarator* d); IDeclarator* action565_UnqualifiedDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); E_throw* action566_ThrowExpression(SourceLocation loc, SourceLocation endloc); E_throw* action567_ThrowExpression(SourceLocation loc, SourceLocation endloc, Expression* e); ExceptionSpec* action568_ExceptionSpecificationOpt(SourceLocation loc, SourceLocation endloc); ExceptionSpec* action569_ExceptionSpecificationOpt(SourceLocation loc, SourceLocation endloc); ExceptionSpec* action570_ExceptionSpecificationOpt(SourceLocation loc, SourceLocation endloc, FakeList* list); FakeList* action571_TypeIdList(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); FakeList* action572_TypeIdList(SourceLocation loc, SourceLocation endloc, ASTTypeId* t, FakeList* list); TF_namespaceDefn* action573_NamespaceDefinition(SourceLocation loc, SourceLocation endloc, StringRef n, TranslationUnit* unit); TF_namespaceDefn* action574_NamespaceDefinition(SourceLocation loc, SourceLocation endloc, StringRef n, TranslationUnit* unit); NamespaceDecl* action575_NamespaceDecl(SourceLocation loc, SourceLocation endloc, StringRef alias, PQName* orig); NamespaceDecl* action576_NamespaceDecl(SourceLocation loc, SourceLocation endloc, PQName* n); NamespaceDecl* action577_NamespaceDecl(SourceLocation loc, SourceLocation endloc, PQName* n); NamespaceDecl* action578_NamespaceDecl(SourceLocation loc, SourceLocation endloc, PQName* n); Expression* action579_NamesAfterDot(SourceLocation loc, SourceLocation endloc, PQName* n); Expression* action580_NamesAfterDot(SourceLocation loc, SourceLocation endloc, Expression* n, PQName* n2); Expression* action581_ParenthesizedExpression(SourceLocation loc, SourceLocation endloc, Expression* e); Statement* action582_LabeledEmptyStatementList(SourceLocation loc, SourceLocation endloc, StringRef n, Statement* s); Statement* action583_LabeledEmptyStatementList(SourceLocation loc, SourceLocation endloc, Expression* e, Statement* s); Statement* action584_LabeledEmptyStatementList(SourceLocation loc, SourceLocation endloc, Expression* e, Expression* e2, Statement* s); Statement* action585_LabeledEmptyStatementList(SourceLocation loc, SourceLocation endloc, Statement* s); Statement* action586_LabeledEmptyStatementListOpt(SourceLocation loc, SourceLocation endloc); Statement* action587_LabeledEmptyStatementListOpt(SourceLocation loc, SourceLocation endloc, Statement* s); ASTTypeof* action588_TypeofTypeSpecifier(SourceLocation loc, SourceLocation endloc, FullExpression* e); ASTTypeof* action589_TypeofTypeSpecifier(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); FullExpression* action590_TypeofExpr(SourceLocation loc, SourceLocation endloc, Expression* e); ASTTypeId* action591_TypeofType(SourceLocation loc, SourceLocation endloc, ASTTypeId* t); StringRef action592_BracketedWordOpt(SourceLocation loc, SourceLocation endloc); StringRef action593_BracketedWordOpt(SourceLocation loc, SourceLocation endloc, StringRef id); Expression* action594_ParenthesizedExpressionOpt(SourceLocation loc, SourceLocation endloc); Expression* action595_ParenthesizedExpressionOpt(SourceLocation loc, SourceLocation endloc, Expression* e); Constraint* action596_OpConstraint(SourceLocation loc, SourceLocation endloc, StringRef name, E_stringLit* constr, Expression* e); ASTList* action597_OpConstraintList(SourceLocation loc, SourceLocation endloc); ASTList* action598_OpConstraintList(SourceLocation loc, SourceLocation endloc, Constraint* c); ASTList* action599_OpConstraintList(SourceLocation loc, SourceLocation endloc, ASTList* list, Constraint* c); Constraints* action600_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* o, ASTList* i, ASTList* c); Constraints* action601_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* o, ASTList* i); Constraints* action602_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* o); Constraints* action603_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* o, ASTList* c); Constraints* action604_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* i, ASTList* c); Constraints* action605_OpConstraints(SourceLocation loc, SourceLocation endloc, ASTList* i); FakeList* action606_DesignatorList(SourceLocation loc, SourceLocation endloc, Designator* d); FakeList* action607_DesignatorList(SourceLocation loc, SourceLocation endloc, Designator* d, FakeList* dl); Designator* action608_Designator(SourceLocation loc, SourceLocation endloc, StringRef id); Designator* action609_Designator(SourceLocation loc, SourceLocation endloc, Expression* idx_expr); Designator* action610_Designator(SourceLocation loc, SourceLocation endloc, Expression* idx_expr, Expression* idx_expr2); void action611_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action612_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action613_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action614_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action615_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action616_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action617_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); void action618_BuggyGccTypeModifier(SourceLocation loc, SourceLocation endloc); enum CVFlags action619_CVQualAttrSeqOpt(SourceLocation loc, SourceLocation endloc); enum CVFlags action620_CVQualAttrSeqOpt(SourceLocation loc, SourceLocation endloc, enum CVFlags s); enum CVFlags action621_CVQualAttrSeq(SourceLocation loc, SourceLocation endloc, enum CVFlags q); enum CVFlags action622_CVQualAttrSeq(SourceLocation loc, SourceLocation endloc, enum CVFlags q, enum CVFlags s); enum CVFlags action623_CVQualAttr(SourceLocation loc, SourceLocation endloc, enum CVFlags q); enum CVFlags action624_CVQualAttr(SourceLocation loc, SourceLocation endloc); StringRef action625_AttributeWord(SourceLocation loc, SourceLocation endloc, StringRef n); StringRef action626_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action627_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action628_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action629_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action630_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action631_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action632_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action633_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action634_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action635_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action636_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action637_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action638_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action639_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action640_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action641_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action642_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action643_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action644_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action645_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action646_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action647_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action648_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action649_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action650_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action651_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action652_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action653_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action654_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action655_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action656_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action657_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action658_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action659_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action660_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action661_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action662_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action663_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action664_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action665_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action666_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action667_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action668_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action669_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action670_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action671_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action672_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action673_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action674_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action675_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action676_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action677_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action678_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action679_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action680_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action681_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action682_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action683_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action684_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action685_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action686_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action687_AttributeWord(SourceLocation loc, SourceLocation endloc); StringRef action688_AttributeWord(SourceLocation loc, SourceLocation endloc); FakeList* action689_CommaSepExpressionListOpt(SourceLocation loc, SourceLocation endloc); FakeList* action690_CommaSepExpressionListOpt(SourceLocation loc, SourceLocation endloc, FakeList* el); FakeList* action691_AttributeParameters(SourceLocation loc, SourceLocation endloc, FakeList* exprs); Attribute* action692_Attribute(SourceLocation loc, SourceLocation endloc); Attribute* action693_Attribute(SourceLocation loc, SourceLocation endloc, StringRef w); Attribute* action694_Attribute(SourceLocation loc, SourceLocation endloc, StringRef w, FakeList* ap); AttributeSpecifier* action695_AttributeList(SourceLocation loc, SourceLocation endloc, Attribute* at); AttributeSpecifier* action696_AttributeList(SourceLocation loc, SourceLocation endloc, Attribute* at, AttributeSpecifier* ap); AttributeSpecifier* action697_AttributeSpecifier(SourceLocation loc, SourceLocation endloc, AttributeSpecifier* ap); AttributeSpecifierList* action698_AttributeSpecifierList(SourceLocation loc, SourceLocation endloc, AttributeSpecifier* as); AttributeSpecifierList* action699_AttributeSpecifierList(SourceLocation loc, SourceLocation endloc, AttributeSpecifier* as, AttributeSpecifierList* asl); Function* action700_KandRFunctionDefinition(SourceLocation loc, SourceLocation endloc, Declaration* rds, IDeclarator* id, S_compound* ds, S_compound* b); Function* action701_KandRFunctionDefinition_implInt(SourceLocation loc, SourceLocation endloc, IDeclarator* id, S_compound* ds, S_compound* b); Function* action702_KandRFunctionDefinition_implInt(SourceLocation loc, SourceLocation endloc, UberModifiers m, IDeclarator* id, S_compound* ds, S_compound* b); S_compound* action703_KandRSimpleDeclarationSeq(SourceLocation loc, SourceLocation endloc, Declaration* s); S_compound* action704_KandRSimpleDeclarationSeq(SourceLocation loc, SourceLocation endloc, S_compound* c, Declaration* s); Declaration* action705_KandRSimpleDeclaration(SourceLocation loc, SourceLocation endloc, Declaration* spec, FakeList* list); Declaration* action706_KandRSimpleDeclaration(SourceLocation loc, SourceLocation endloc, FakeList* list); FakeList* action707_KandRInitDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d); FakeList* action708_KandRInitDeclaratorList(SourceLocation loc, SourceLocation endloc, Declarator* d, FakeList* list); Declarator* action709_KandRInitDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action710_KandRDeclarator(SourceLocation loc, SourceLocation endloc, enum CVFlags cv, IDeclarator* d); IDeclarator* action711_KandRDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action712_KandRDirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* kAndR_params); IDeclarator* action713_KandRDirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* kAndR_params); IDeclarator* action714_KandRDirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, FakeList* params); IDeclarator* action715_KandRDirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d, Expression* sz); IDeclarator* action716_KandRDirectDeclarator(SourceLocation loc, SourceLocation endloc, IDeclarator* d); IDeclarator* action717_KandRIdExpression(SourceLocation loc, SourceLocation endloc, PQ_name* n); FakeList* action718_KandRIdentifierList(SourceLocation loc, SourceLocation endloc, PQ_name* i); FakeList* action719_KandRIdentifierList(SourceLocation loc, SourceLocation endloc, PQ_name* i, FakeList* e); PQ_name* action720_KandRIdentifier(SourceLocation loc, SourceLocation endloc, StringRef i); UberModifiers action721_CFuncModifier_no_inline(SourceLocation loc, SourceLocation endloc); UberModifiers action722_CFuncModifier_no_inline(SourceLocation loc, SourceLocation endloc); UberModifiers action723_CFuncModifier_no_inline(SourceLocation loc, SourceLocation endloc); UberModifiers action724_CFuncModifier_no_inline(SourceLocation loc, SourceLocation endloc); UberModifiers action725_CFuncModifier(SourceLocation loc, SourceLocation endloc, UberModifiers m); UberModifiers action726_CFuncModifier(SourceLocation loc, SourceLocation endloc); UberModifiers action727_CFuncModifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers m); UberModifiers action728_CFuncModifierSeq(SourceLocation loc, SourceLocation endloc, UberModifiers s, UberModifiers m); UberModifiers action729_CFuncModifierSeqOpt(SourceLocation loc, SourceLocation endloc); UberModifiers action730_CFuncModifierSeqOpt(SourceLocation loc, SourceLocation endloc, UberModifiers m); Function* action731_ImplIntFunctionDefinition(SourceLocation loc, SourceLocation endloc, UberModifiers m, IDeclarator* d, S_compound* b); Function* action732_ImplIntFunctionDefinition(SourceLocation loc, SourceLocation endloc, UberModifiers m1, UberModifiers m2, IDeclarator* d, S_compound* b); Function* action733_ImplIntFunctionDefinition(SourceLocation loc, SourceLocation endloc, UberModifiers m1, UberModifiers m2, IDeclarator* d, S_compound* b); TypeSpecifier* action734_ImplicitIntTypeSpecifier(SourceLocation loc, SourceLocation endloc, UberModifiers m); ASTTypeId* action735_ImplicitIntTypeId(SourceLocation loc, SourceLocation endloc, TypeSpecifier* spec); State* action736_StateDefinition(SourceLocation loc, SourceLocation endloc, bool i, IDeclarator* d); State* action737_StateDefinition(SourceLocation loc, SourceLocation endloc, bool i, IDeclarator* d, FakeList* l); bool action738_InitialState(SourceLocation loc, SourceLocation endloc); bool action739_InitialState(SourceLocation loc, SourceLocation endloc); FakeList* action740_AndStateList(SourceLocation loc, SourceLocation endloc, StateEntryList* h); FakeList* action741_AndStateList(SourceLocation loc, SourceLocation endloc, StateEntryList* h, FakeList* t); StateEntryList* action742_StateEntryListOpt(SourceLocation loc, SourceLocation endloc); StateEntryList* action743_StateEntryListOpt(SourceLocation loc, SourceLocation endloc, FakeList* l); FakeList* action744_StateEntryList(SourceLocation loc, SourceLocation endloc, StateEntry* e); FakeList* action745_StateEntryList(SourceLocation loc, SourceLocation endloc, StateEntry* e, FakeList* l); StateEntry* action746_StateEntry(SourceLocation loc, SourceLocation endloc, Expression* e, Statement* s); StateEntry* action747_StateEntry(SourceLocation loc, SourceLocation endloc, Statement* s); StateEntry* action748_StateEntry(SourceLocation loc, SourceLocation endloc, Declarator* d, Statement* s); StateEntry* action749_StateEntry(SourceLocation loc, SourceLocation endloc, Statement* s); StateEntry* action750_StateEntry(SourceLocation loc, SourceLocation endloc, State* s); StateEntry* action751_StateEntry(SourceLocation loc, SourceLocation endloc, Statement* s); inline StringRef dup_Identifier(StringRef n) ; inline void del_Identifier(StringRef n) ; inline TranslationUnit* dup_TranslationUnit(TranslationUnit* n) ; inline PQName* merge_IdExpression(PQName* L, PQName* R) ; inline PQName* merge_UnqualifiedId(PQName* L, PQName* R) ; inline PQName* merge_PQualifiedId(PQName* L, PQName* R) ; inline Expression* merge_PostfixExpression(Expression* L, Expression* R) ; inline FakeList* merge_ExpressionList(FakeList* L, FakeList* R) ; inline Expression* merge_UnaryExpression(Expression* L, Expression* R) ; inline E_new* merge_NewExpression(E_new* L, E_new* R) ; inline bool keep_DirectNewDeclarator(IDeclarator* x) ; inline PQName* merge_NameAfterDot(PQName* L, PQName* R) ; inline PQName* merge_NAD1(PQName* L, PQName* R) ; inline PQName* merge_NAD2(PQName* L, PQName* R) ; inline Expression* merge_CastExpression(Expression* L, Expression* R) ; inline Expression* merge_BinExp_high(Expression* L, Expression* R) ; inline Expression* merge_BinExp_mid(Expression* L, Expression* R) ; inline Expression* merge_BinaryExpression(Expression* L, Expression* R) ; inline Expression* merge_ConditionalExpression(Expression* L, Expression* R) ; inline Expression* merge_Expression(Expression* L, Expression* R) ; inline Statement* merge_Statement(Statement* L, Statement* R) ; inline bool keep_Statement(Statement* x) ; inline Condition* merge_Condition(Condition* L, Condition* R) ; inline Statement* merge_ForInitStatement(Statement* L, Statement* R) ; inline TopForm* merge_Declaration(TopForm* L, TopForm* R) ; inline bool keep_Declaration(TopForm* x) ; inline bool keep_SimpleDeclaration(Declaration* d) ; inline Declaration* dup_DeclSpecifier(Declaration* d) ; inline PQName* merge_PQTypeName(PQName* L, PQName* R) ; inline PQName* merge_PQTypeName_ncc(PQName* L, PQName* R) ; inline PQName* merge_PQTypeName_notfirst(PQName* L, PQName* R) ; inline Declarator* merge_InitDeclarator(Declarator* L, Declarator* R) ; inline IN_compound* dup_InitializerList(IN_compound* i) ; inline bool keep_DirectDeclarator(IDeclarator* x) ; inline PQName* merge_PQDtorName(PQName* L, PQName* R) ; inline PQName* merge_PtrToMemberName(PQName* L, PQName* R) ; inline bool keep_DirectAbstractDeclarator(IDeclarator* x) ; inline ASTTypeId* merge_ParameterDeclaration(ASTTypeId* L, ASTTypeId* R) ; inline bool keep_ParameterDeclaration(ASTTypeId* x) ; inline Declarator* merge_ParameterDeclarator(Declarator* L, Declarator* R) ; inline bool keep_FunctionDefinition(Function* f) ; inline bool keep_FDDeclarator(IDeclarator* d) ; inline PQName* merge_ClassHeadNameOpt(PQName* L, PQName* R) ; inline PQName* merge_ClassHeadName(PQName* L, PQName* R) ; inline MemberList* dup_MemberDeclarationSeqOpt(MemberList* m) ; inline bool keep_MemberDeclaration(Member* m) ; inline bool keep_CDtorProtoDecl(Declaration* m) ; inline PQName* merge_PQClassName(PQName* L, PQName* R) ; inline bool keep_TemplateDeclaration(TemplateDeclaration* d) ; inline /*fakelist*/TemplateParameter* merge_TemplateParameterList(/*fakelist*/TemplateParameter* L, /*fakelist*/TemplateParameter* R) ; inline bool keep_TemplateParameterList(/*fakelist*/TemplateParameter* x) ; inline /*nullable fakelist*/TemplateParameter* merge_TemplateParameterListContinuation(/*nullable fakelist*/TemplateParameter* L, /*nullable fakelist*/TemplateParameter* R) ; inline TemplateArgument* merge_TemplateArgument(TemplateArgument* L, TemplateArgument* R) ; inline bool keep_TemplateArgument(TemplateArgument* n) ; inline bool keep_UnqualifiedDeclarator(IDeclarator* d) ; inline ASTTypeof* merge_TypeofTypeSpecifier(ASTTypeof* L, ASTTypeof* R) ; inline bool keep_KandRSimpleDeclaration(Declaration* x) ; inline Declarator* merge_KandRInitDeclarator(Declarator* L, Declarator* R) ; inline bool keep_KandRDirectDeclarator(IDeclarator* x) ; // the function which makes the parse tables public: virtual ParseTables *makeTables(); }; #endif // CC_GR_GEN_H