Changeset 984dce6
- Timestamp:
- Mar 22, 2016, 9:57:47 PM (9 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
- Children:
- 94980502
- Parents:
- a752883
- Location:
- src/Parser
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/DeclarationNode.cc
ra752883 r984dce6 10 10 // Created On : Sat May 16 12:34:05 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:26:24201613 // Update Count : 1 3412 // Last Modified On : Mon Mar 21 21:04:23 2016 13 // Update Count : 142 14 14 // 15 15 … … 42 42 UniqueName DeclarationNode::anonymous( "__anonymous" ); 43 43 44 extern LinkageSpec::Type linkage; /* defined in cfa.y */44 extern LinkageSpec::Type linkage; // defined in parser.yy 45 45 46 46 DeclarationNode *DeclarationNode::clone() const { … … 55 55 newnode->linkage = linkage; 56 56 return newnode; 57 } 57 } // DeclarationNode::clone 58 58 59 59 DeclarationNode::DeclarationNode() : type( 0 ), bitfieldWidth( 0 ), initializer( 0 ), hasEllipsis( false ), linkage( ::linkage ) { … … 117 117 newnode->type->function->newStyle = newStyle; 118 118 newnode->type->function->body = body; 119 typedefTable.addToEnclosingScope( newnode->name, TypedefTable::ID ); 119 120 120 121 if ( body ) { … … 129 130 130 131 return newnode; 131 } 132 } // DeclarationNode::newFunction 132 133 133 134 DeclarationNode *DeclarationNode::newQualifier( Qualifier q ) { … … 136 137 newnode->type->qualifiers.push_back( q ); 137 138 return newnode; 138 } 139 } // DeclarationNode::newQualifier 139 140 140 141 DeclarationNode *DeclarationNode::newStorageClass( DeclarationNode::StorageClass sc ) { … … 142 143 newnode->storageClasses.push_back( sc ); 143 144 return newnode; 144 } 145 } // DeclarationNode::newStorageClass 145 146 146 147 DeclarationNode *DeclarationNode::newBasicType( BasicType bt ) { … … 149 150 newnode->type->basic->typeSpec.push_back( bt ); 150 151 return newnode; 151 } 152 } // DeclarationNode::newBasicType 152 153 153 154 DeclarationNode *DeclarationNode::newBuiltinType( BuiltinType bt ) { … … 156 157 newnode->type->builtin->type = bt; 157 158 return newnode; 158 } 159 } // DeclarationNode::newBuiltinType 159 160 160 161 DeclarationNode *DeclarationNode::newModifier( Modifier mod ) { … … 163 164 newnode->type->basic->modifiers.push_back( mod ); 164 165 return newnode; 165 } 166 } // DeclarationNode::newModifier 166 167 167 168 DeclarationNode *DeclarationNode::newForall( DeclarationNode *forall ) { … … 170 171 newnode->type->forall = forall; 171 172 return newnode; 172 } 173 } // DeclarationNode::newForall 173 174 174 175 DeclarationNode *DeclarationNode::newFromTypedef( std::string *name ) { … … 179 180 newnode->type->symbolic->params = 0; 180 181 return newnode; 181 } 182 } // DeclarationNode::newFromTypedef 182 183 183 184 DeclarationNode *DeclarationNode::newAggregate( Aggregate kind, const std::string *name, ExpressionNode *actuals, DeclarationNode *fields ) { … … 188 189 if ( newnode->type->aggregate->name == "" ) { // anonymous aggregate ? 189 190 newnode->type->aggregate->name = DeclarationNode::anonymous.newName(); 190 } else { 191 // SKULLDUGGERY: generate a typedef for the aggregate name so that the aggregate does not have to be qualified 192 // by "struct" 191 } else if ( ! typedefTable.exists( newnode->type->aggregate->name ) ) { 192 // SKULLDUGGERY: Generate a typedef for the aggregate name so the aggregate does not have to be qualified by 193 // "struct". Only generate the typedef, if the name is not in use. The typedef is implicitly (silently) removed 194 // if the name is explicitly used. 193 195 typedefTable.addToEnclosingScope( newnode->type->aggregate->name, TypedefTable::TD ); 194 196 DeclarationNode *typedf = new DeclarationNode; … … 199 201 newnode->type->aggregate->fields = fields; 200 202 return newnode; 201 } 203 } // DeclarationNode::newAggregate 202 204 203 205 DeclarationNode *DeclarationNode::newEnum( std::string *name, DeclarationNode *constants ) { … … 208 210 if ( newnode->type->enumeration->name == "" ) { // anonymous enumeration ? 209 211 newnode->type->enumeration->name = DeclarationNode::anonymous.newName(); 210 } else { 211 // SKULLDUGGERY: generate a typedef for the enumeration name so that the enumeration does not have to be 212 // qualified by "enum" 212 } else if ( ! typedefTable.exists( newnode->type->enumeration->name ) ) { 213 // SKULLDUGGERY: Generate a typedef for the enumeration name so the enumeration does not have to be qualified by 214 // "enum". Only generate the typedef, if the name is not in use. The typedef is implicitly (silently) removed if 215 // the name is explicitly used. 213 216 typedefTable.addToEnclosingScope( newnode->type->enumeration->name, TypedefTable::TD ); 214 217 DeclarationNode *typedf = new DeclarationNode; … … 218 221 newnode->type->enumeration->constants = constants; 219 222 return newnode; 220 } 223 } // DeclarationNode::newEnum 221 224 222 225 DeclarationNode *DeclarationNode::newEnumConstant( std::string *name, ExpressionNode *constant ) { … … 224 227 newnode->name = assign_strptr( name ); 225 228 newnode->enumeratorValue = constant; 226 return newnode; 227 } 229 typedefTable.addToEnclosingScope( newnode->name, TypedefTable::ID ); 230 return newnode; 231 } // DeclarationNode::newEnumConstant 228 232 229 233 DeclarationNode *DeclarationNode::newName( std::string *name ) { … … 231 235 newnode->name = assign_strptr( name ); 232 236 return newnode; 233 } 237 } // DeclarationNode::newName 234 238 235 239 DeclarationNode *DeclarationNode::newFromTypeGen( std::string *name, ExpressionNode *params ) { … … 240 244 newnode->type->symbolic->actuals = params; 241 245 return newnode; 242 } 246 } // DeclarationNode::newFromTypeGen 243 247 244 248 DeclarationNode *DeclarationNode::newTypeParam( TypeClass tc, std::string *name ) { … … 249 253 newnode->type->variable->name = newnode->name; 250 254 return newnode; 251 } 255 } // DeclarationNode::newTypeParam 252 256 253 257 DeclarationNode *DeclarationNode::newTrait( std::string *name, DeclarationNode *params, DeclarationNode *asserts ) { … … 259 263 newnode->type->aggregate->name = assign_strptr( name ); 260 264 return newnode; 261 } 265 } // DeclarationNode::newTrait 262 266 263 267 DeclarationNode *DeclarationNode::newTraitUse( std::string *name, ExpressionNode *params ) { … … 269 273 newnode->type->aggInst->params = params; 270 274 return newnode; 271 } 275 } // DeclarationNode::newTraitUse 272 276 273 277 DeclarationNode *DeclarationNode::newTypeDecl( std::string *name, DeclarationNode *typeParams ) { … … 279 283 newnode->type->symbolic->name = newnode->name; 280 284 return newnode; 281 } 285 } // DeclarationNode::newTypeDecl 282 286 283 287 DeclarationNode *DeclarationNode::newPointer( DeclarationNode *qualifiers ) { … … 285 289 newnode->type = new TypeData( TypeData::Pointer ); 286 290 return newnode->addQualifiers( qualifiers ); 287 } 291 } // DeclarationNode::newPointer 288 292 289 293 DeclarationNode *DeclarationNode::newArray( ExpressionNode *size, DeclarationNode *qualifiers, bool isStatic ) { … … 298 302 } // if 299 303 return newnode->addQualifiers( qualifiers ); 300 } 304 } // DeclarationNode::newArray 301 305 302 306 DeclarationNode *DeclarationNode::newVarArray( DeclarationNode *qualifiers ) { -
src/Parser/ExpressionNode.cc
ra752883 r984dce6 10 10 // Created On : Sat May 16 13:17:07 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Feb 1 13:32:30201613 // Update Count : 27 112 // Last Modified On : Sun Mar 13 12:34:38 2016 13 // Update Count : 272 14 14 // 15 15 … … 487 487 args.front() = new AddressExpr( args.front() ); 488 488 break; 489 default: 490 /* do nothing */ 489 default: // do nothing 491 490 ; 492 } 491 } // switch 493 492 494 493 switch ( op->get_type() ) { -
src/Parser/Parser.cc
ra752883 r984dce6 10 10 // Created On : Sat May 16 14:54:28 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun May 31 23:45:19 201513 // Update Count : 412 // Last Modified On : Mon Mar 21 18:04:47 2016 13 // Update Count : 5 14 14 // 15 15 16 16 #include "Parser.h" 17 #include "TypedefTable.h"18 17 #include "lex.h" 19 18 #include "parser.h" 19 #include "TypedefTable.h" 20 20 21 21 // global variables in cfa.y -
src/Parser/TypedefTable.cc
ra752883 r984dce6 10 10 // Created On : Sat May 16 15:20:13 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:25:55201613 // Update Count : 2 012 // Last Modified On : Mon Mar 21 18:18:58 2016 13 // Update Count : 23 14 14 // 15 15 16 16 #include <map> 17 17 #include <list> 18 #include <cassert> 18 19 #include "TypedefTable.h" 19 #include <cassert>20 20 using namespace std; 21 21 … … 29 29 TypedefTable::TypedefTable() : currentScope( 0 ) {} 30 30 31 bool TypedefTable::exists( const string &identifier ) { 32 return table.count( identifier ) > 0; 33 } 34 31 35 void TypedefTable::changeKind( const string &identifier, kind_t kind ) { 32 36 tableType::iterator id_pos = table.find( identifier ); 33 if ( id_pos == table.end() ) { 34 return; 35 } else { 36 (*((*id_pos ).second.begin())).kind = kind; 37 return; 38 } // if 37 if ( id_pos == table.end() ) return; 38 id_pos->second.begin()->kind = kind; 39 39 } 40 40 41 bool TypedefTable::isKind( const string &identifier, kind_t kind) const {41 int TypedefTable::isKind( const string &identifier ) const { 42 42 tableType::const_iterator id_pos = table.find( identifier ); 43 if ( id_pos == table.end() ) { 44 return true; 45 } else { 46 return (*((*id_pos ).second.begin())).kind == kind; 47 } // if 48 } 49 50 bool TypedefTable::isIdentifier( const string &identifier ) const { 51 return isKind( identifier, ID ); 52 } 53 54 bool TypedefTable::isTypedef( const string &identifier ) const { 55 return isKind( identifier, TD ); 56 } 57 58 bool TypedefTable::isTypegen( const string &identifier ) const { 59 return isKind( identifier, TG ); 43 // Name lookup defaults to identifier, and then the identifier's kind is set by the parser. 44 if ( id_pos == table.end() ) return IDENTIFIER; 45 return id_pos->second.begin()->kind; 60 46 } 61 47 -
src/Parser/TypedefTable.h
ra752883 r984dce6 10 10 // Created On : Sat May 16 15:24:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:26:54201613 // Update Count : 1212 // Last Modified On : Mon Mar 21 18:17:36 2016 13 // Update Count : 24 14 14 // 15 15 … … 22 22 #include <stack> 23 23 24 #include "lex.h" 25 #include "parser.h" 26 24 27 class TypedefTable { 25 28 public: 26 enum kind_t { ID , TD, TG};29 enum kind_t { ID = IDENTIFIER, TD = TYPEDEFname, TG = TYPEGENname }; 27 30 private: 28 31 struct Entry { … … 49 52 std::stack< std::string > nextIdentifiers; 50 53 51 bool isKind( const std::string &identifier, kind_t kind ) const;52 54 void addToScope( const std::string &identifier, kind_t kind, int scope ); 53 55 public: 54 56 TypedefTable(); 55 57 56 bool isIdentifier( const std::string &identifier ) const; 57 bool isTypedef( const std::string &identifier ) const; 58 bool isTypegen( const std::string &identifier ) const; 59 58 bool exists( const std::string &identifier ); 59 int isKind( const std::string &identifier ) const; 60 60 void changeKind( const std::string &identifier, kind_t kind ); 61 61 -
src/Parser/lex.cc
ra752883 r984dce6 418 418 120, 120, 0, 0, 0, 118, 0, 0, 0, 0, 419 419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 420 0, 133, 112, 112, 0, 112, 112, 112, 0, 6,421 112, 110, 0, 0, 0, 112, 0, 110, 110, 110,420 0, 133, 112, 112, 0, 112, 112, 0, 0, 6, 421 0, 110, 0, 0, 0, 112, 0, 110, 110, 110, 422 422 110, 0, 111, 0, 0, 109, 109, 109, 109, 0, 423 423 171, 172, 0, 177, 175, 0, 0, 0, 103, 0, … … 433 433 0, 120, 0, 0, 0, 0, 0, 120, 0, 0, 434 434 178, 0, 0, 0, 0, 0, 0, 0, 112, 0, 435 112, 0, 112, 0, 0, 112, 112, 110, 110, 0,435 112, 0, 112, 0, 0, 112, 0, 110, 110, 0, 436 436 0, 111, 111, 0, 111, 0, 111, 109, 109, 0, 437 437 0, 0, 0, 0, 0, 0, 0, 0, 0, 176, … … 445 445 102, 102, 102, 102, 97, 102, 102, 0, 0, 0, 446 446 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 447 0, 120, 0, 0, 0, 0, 0, 112, 112, 0,447 0, 120, 0, 0, 0, 0, 0, 112, 0, 0, 448 448 0, 0, 0, 0, 111, 111, 0, 113, 0, 111, 449 449 … … 459 459 0, 0, 0, 0, 0, 113, 0, 0, 111, 113, 460 460 461 113, 113, 113, 113, 111, 0, 0, 0, 0, 0,461 113, 113, 113, 0, 111, 0, 0, 0, 0, 0, 462 462 0, 0, 0, 0, 0, 102, 0, 102, 102, 102, 463 463 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, … … 467 467 81, 83, 84, 102, 102, 91, 102, 102, 0, 1, 468 468 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 469 120, 0, 0, 0, 0, 113, 113, 113, 113, 0,469 120, 0, 0, 0, 0, 113, 0, 113, 113, 0, 470 470 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 471 471 … … 500 500 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 501 501 26, 26, 26, 26, 26, 27, 28, 29, 30, 31, 502 32, 33, 34, 35, 36, 37, 38, 39, 40, 39,503 4 1, 11, 42, 11, 11, 43, 11, 44, 11, 45,504 11, 4 6, 47, 48, 49, 11, 11, 50, 11, 11,505 5 1, 52, 53, 54, 55, 56, 57, 58, 59, 60,506 507 6 1, 62, 63, 64, 65, 11, 66, 67, 68, 69,508 7 0, 71, 11, 72, 73, 74, 75, 76, 77, 78,509 79, 80, 81, 82, 83, 84, 1, 1, 1, 1,502 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 503 42, 11, 43, 11, 11, 44, 11, 45, 11, 46, 504 11, 47, 48, 49, 50, 11, 11, 51, 11, 11, 505 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 506 507 62, 63, 64, 65, 66, 11, 67, 68, 69, 70, 508 71, 72, 11, 73, 74, 75, 76, 77, 78, 79, 509 80, 81, 82, 83, 84, 85, 1, 1, 1, 1, 510 510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 511 511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, … … 524 524 } ; 525 525 526 static yyconst flex_int32_t yy_meta[8 5] =526 static yyconst flex_int32_t yy_meta[86] = 527 527 { 0, 528 528 1, 1, 2, 1, 1, 1, 1, 1, 3, 1, … … 530 530 6, 1, 7, 7, 7, 7, 7, 7, 1, 1, 531 531 1, 8, 1, 1, 1, 9, 9, 9, 9, 9, 532 4, 4, 10, 4, 11, 4, 4, 4, 10, 4,533 1, 12, 1, 1, 13, 1, 9, 9, 9, 9,534 9, 9, 4, 4, 4, 4, 10, 4, 4, 4,535 11, 4, 4, 4, 10, 4, 4, 4, 4, 4,536 1, 1, 1, 1532 9, 4, 4, 10, 4, 11, 4, 4, 4, 10, 533 4, 1, 12, 1, 1, 13, 1, 9, 9, 9, 534 9, 9, 9, 4, 4, 4, 4, 10, 4, 4, 535 4, 11, 4, 4, 4, 10, 4, 4, 4, 4, 536 4, 1, 1, 1, 1 537 537 } ; 538 538 539 539 static yyconst flex_int16_t yy_base[1062] = 540 540 { 0, 541 0, 8 3, 2268, 2265, 93, 0, 175, 176, 177, 178,542 22 79, 2798, 189, 2798, 195, 54, 2798, 2226, 59, 171,543 2 798, 2798, 2798, 55, 186, 2798, 189, 187, 202, 214,544 27 2, 0, 2244, 2798, 214, 2243, 150, 340, 153, 222,545 2 798, 157, 2798, 215, 224, 2798, 207, 181, 221, 249,546 23 5, 289, 155, 255, 218, 231, 206, 266, 256, 323,547 2 59, 192, 2798, 252, 2798, 2238, 377, 342, 2798, 2249,548 2 798, 2218, 241, 2798, 0, 2798, 421, 0, 2798, 393,549 2 798, 399, 405, 2798, 492, 2216, 276, 2798, 2798, 2798,550 2 798, 2798, 2231, 2798, 2228, 2798, 2798, 2240, 552, 2798,551 552 22 57, 2798, 413, 393, 437, 493, 377, 318, 195, 430,553 3 82, 0, 384, 321, 196, 427, 2798, 2798, 2798, 2226,554 2 798, 2798, 2798, 2223, 2220, 304, 342, 2235, 381, 435,555 422, 400, 455, 440, 494, 2216, 469, 2165, 497, 2193,556 2 798, 432, 2798, 2798, 521, 2187, 2186, 2798, 2159, 470,557 414, 436, 325, 254, 463, 480, 486, 563, 274, 482,558 4 84, 487, 495, 234, 489, 341, 488, 490, 377, 507,559 4 97, 501, 503, 514, 515, 506, 529, 2186, 531, 537,560 5 05, 518, 536, 534, 538, 559, 575, 571, 577, 574,561 599, 5 90, 581, 592, 2798, 2798, 662, 668, 2232, 674,562 563 2 798, 680, 2798, 2180, 583, 2176, 2175, 0, 671, 2798,564 2 798, 686, 2173, 2170, 2167, 0, 2189, 568, 615, 618,565 6 95, 694, 627, 654, 628, 683, 2186, 686, 687, 2163,566 21 60, 2798, 0, 680, 712, 703, 682, 2157, 2208, 2798,567 71 1, 0, 702, 756, 762, 795, 774, 604, 2798, 2167,568 21 41, 0, 803, 2167, 780, 684, 2798, 2143, 2118, 804,569 2 798, 2798, 2148, 2798, 2798, 724, 728, 2126, 2126, 694,570 212 2, 2120, 2117, 0, 2114, 0, 2085, 679, 682, 696,571 423, 722, 757, 703, 758, 741, 799, 764, 725, 789,572 697, 774, 788, 792, 760, 784, 795, 2115, 809, 797,573 574 8 16, 196, 804, 812, 817, 823, 829, 632, 831, 832,575 8 36, 819, 837, 833, 840, 844, 847, 843, 853, 851,576 211 3, 854, 855, 856, 859, 857, 858, 860, 861, 867,577 86 3, 866, 868, 873, 874, 2110, 877, 716, 882, 883,578 8 84, 888, 894, 947, 944, 2104, 2103, 2102, 0, 2100,579 0, 9 34, 939, 2097, 0, 2094, 0, 2093, 0, 2113,580 2 798, 934, 935, 2092, 2087, 0, 2086, 0, 2798, 947,581 9 67, 958, 2798, 973, 988, 1012, 2085, 2798, 2798, 932,582 9 62, 999, 975, 1033, 912, 1020, 956, 2798, 2798, 2083,583 20 80, 2079, 0, 2078, 0, 2076, 0, 2073, 0, 2798,584 585 956, 936, 978, 950, 994, 1010, 1016, 973, 1019, 1020,586 10 24, 1012, 1029, 1030, 1026, 1027, 1032, 1038, 1044, 1031,587 10 51, 1049, 1041, 2072, 1055, 2068, 1054, 2066, 1057, 1058,588 10 59, 974, 1061, 1064, 1065, 2064, 1070, 2061, 1063, 1071,589 107 3, 1075, 1076, 1081, 1077, 2059, 1082, 2057, 1084, 1087,590 10 89, 1092, 1094, 1095, 1100, 1090, 1098, 1106, 1115, 1102,591 110 3, 1116, 1104, 1118, 2054, 1119, 1123, 1169, 2048, 0,592 20 47, 0, 2046, 0, 2044, 0, 1164, 2041, 0, 2038,593 0, 20 37, 2036, 2034, 0, 2031, 0, 1171, 2028, 1177,594 1137, 119 7, 1164, 1112, 1131, 2798, 1216, 1230, 1256, 2039,595 596 201 4, 2024, 2021, 0, 2018, 0, 2017, 0, 2016, 0,597 201 4, 0, 2011, 0, 1159, 1164, 2011, 1160, 1178, 1182,598 11 33, 1194, 1208, 1185, 541, 1199, 1197, 1215, 1193, 1209,599 12 11, 1225, 1210, 1254, 1235, 1237, 1239, 1241, 1242, 2010,600 12 52, 1248, 2009, 1249, 1253, 1255, 1251, 2007, 1258, 1261,601 126 2, 1264, 2004, 1265, 1271, 2001, 1263, 1273, 2000, 1269,602 12 75, 1277, 1999, 1281, 1283, 1285, 1284, 1286, 1296, 1997,603 1 295, 1287, 1994, 1299, 1300, 1991, 2039, 1986, 0, 1984,604 0, 19 81, 0, 1980, 0, 1979, 0, 1977, 0, 1974,605 0, 19 73, 0, 1336, 1346, 1369, 1357, 1972, 2798, 1375,606 607 13 11, 1347, 1313, 1970, 2798, 1937, 0, 1935, 0, 1934,608 0, 193 1, 0, 0, 0, 1931, 0, 1353, 1354, 1305,609 13 02, 1335, 1363, 1366, 1367, 1364, 586, 1370, 1365, 1374,610 13 68, 1376, 1369, 1385, 1380, 1166, 1392, 1394, 1327, 1395,611 1 396, 1399, 1930, 1398, 1400, 1401, 1929, 1927, 1924, 1403,612 14 02, 1921, 1409, 1920, 1919, 1406, 1404, 1917, 1914, 1913,613 1 912, 1910, 1907, 1416, 1417, 1906, 1419, 1405, 1954, 2798,614 1 900, 0, 1897, 0, 0, 0, 1896, 0, 0, 0,615 2 798, 0, 0, 0, 0, 1459, 1889, 2798, 2798, 1465,616 18 85, 0, 1869, 0, 0, 0, 0, 1868, 1424, 1442,617 618 187 0, 1444, 1447, 1443, 1451, 1453, 1455, 1457, 1868, 1459,619 14 60, 1476, 1461, 1463, 1494, 1477, 1478, 1504, 1483, 1482,620 1 481, 1488, 1490, 1491, 1492, 1865, 1864, 1493, 1863, 1861,621 1 497, 1496, 1499, 1858, 1500, 1502, 0, 0, 0, 1854,622 185 3, 1851, 1550, 0, 1848, 1847, 1846, 1844, 1841, 1843,623 184 2, 1840, 1837, 1507, 1513, 1505, 1514, 1509, 1515, 1528,624 15 06, 1531, 1533, 1562, 1836, 1536, 1835, 1537, 1541, 1544,625 15 49, 1542, 1543, 1833, 1830, 1829, 1828, 1550, 1826, 1823,626 1819, 1818, 181 6, 1813, 1812, 1811, 1809, 1802, 1800, 1799,627 17 96, 1795, 1551, 1797, 1554, 1556, 1555, 1559, 1560, 1561,628 629 17 95, 1565, 1592, 1568, 1778, 1569, 1576, 1577, 1584, 1570,630 1 572, 1766, 1765, 1762, 1755, 1752, 1745, 1743, 1742, 1721,631 1 720, 1719, 1712, 1710, 1712, 1582, 1587, 1595, 1590, 1589,632 1 597, 1585, 1670, 1669, 1601, 1666, 1665, 1605, 1606, 1609,633 1 660, 1659, 1655, 1654, 1651, 1650, 1649, 1593, 1610, 1611,634 1 412, 1614, 1612, 1620, 1337, 1621, 1623, 1627, 1000, 928,635 896, 778, 1628, 1629, 1631, 1632, 1633, 1635, 709, 628,636 16 37, 373, 338, 1639, 1640, 337, 257, 1641, 1643, 1645,637 16 47, 1646, 1649, 1651, 200, 136, 2798, 1723, 1736, 1749,638 17 59, 1769, 1782, 1792, 1805, 1818, 1831, 1839, 1849, 1856,639 640 18 63, 1870, 1877, 1884, 1891, 1898, 1905, 1912, 1925, 1932,641 19 36, 1944, 1947, 1954, 1961, 1968, 1971, 1978, 1984, 1997,642 20 10, 2017, 2024, 2031, 2038, 2041, 2048, 2051, 2058, 2061,643 20 68, 2071, 2078, 2081, 2088, 2091, 2098, 2101, 2108, 2116,644 21 23, 2130, 2137, 2144, 2147, 2154, 2157, 2164, 2167, 2174,645 2 180, 2193, 2200, 2207, 2210, 2217, 2220, 2227, 2230, 2237,646 22 40, 2247, 2250, 2257, 2260, 2267, 2274, 2277, 2284, 2287,647 2 294, 2301, 2308, 2311, 2318, 2321, 2328, 2331, 2338, 2341,648 23 48, 2351, 2358, 2364, 2377, 2384, 2391, 2394, 2401, 2404,649 24 11, 2414, 2421, 2424, 2431, 2434, 2441, 2444, 2451, 2454,650 651 24 61, 2464, 2471, 2478, 2481, 2488, 2491, 2498, 2501, 2508,652 25 11, 2514, 2520, 2527, 2536, 2543, 2550, 2553, 2560, 2563,653 25 66, 2572, 2579, 2582, 2585, 2588, 2591, 2594, 2597, 2600,654 26 07, 2610, 2617, 2620, 2623, 2626, 2629, 2639, 2646, 2649,655 26 52, 2655, 2662, 2669, 2676, 2679, 2686, 2693, 2700, 2707,656 27 14, 2721, 2728, 2735, 2742, 2749, 2756, 2763, 2770, 2777,657 2 784541 0, 84, 2272, 2269, 94, 0, 177, 178, 179, 180, 542 2285, 2822, 191, 2822, 197, 55, 2822, 2231, 60, 173, 543 2822, 2822, 2822, 56, 188, 2822, 191, 189, 204, 216, 544 275, 0, 2249, 2822, 216, 2247, 152, 344, 155, 220, 545 2822, 159, 2822, 217, 226, 2822, 185, 154, 212, 251, 546 237, 270, 235, 257, 241, 205, 193, 305, 314, 333, 547 238, 228, 2822, 225, 2822, 2242, 402, 390, 2822, 2253, 548 2822, 2221, 235, 2822, 0, 2822, 426, 0, 2822, 417, 549 2822, 439, 451, 2822, 498, 2219, 264, 2822, 2822, 2822, 550 2822, 2822, 2235, 2822, 2232, 2822, 2822, 2244, 559, 2822, 551 552 2261, 2822, 438, 444, 511, 534, 289, 253, 197, 380, 553 305, 0, 319, 280, 198, 322, 2822, 2822, 2822, 2230, 554 2822, 2822, 2822, 2227, 2224, 218, 255, 2239, 298, 350, 555 368, 312, 440, 398, 405, 2220, 441, 2168, 446, 2196, 556 2822, 335, 2822, 2822, 468, 2190, 2189, 2822, 2162, 439, 557 282, 433, 372, 281, 437, 434, 428, 570, 444, 466, 558 464, 469, 475, 321, 492, 438, 471, 445, 474, 512, 559 489, 503, 496, 521, 276, 515, 516, 2189, 526, 510, 560 519, 525, 543, 522, 560, 553, 523, 561, 551, 544, 561 599, 582, 593, 584, 2822, 2822, 660, 651, 2236, 666, 562 563 2822, 678, 2822, 2183, 607, 2179, 2178, 0, 693, 2822, 564 2822, 684, 2176, 2156, 2154, 0, 2177, 578, 608, 617, 565 654, 679, 650, 683, 684, 687, 2172, 690, 691, 2147, 566 2146, 2822, 0, 683, 710, 686, 700, 2145, 2196, 2822, 567 714, 0, 427, 746, 764, 786, 808, 621, 2822, 2152, 568 2125, 0, 794, 2171, 795, 709, 2822, 2147, 2121, 832, 569 2822, 2822, 2152, 2822, 2822, 711, 714, 2129, 2129, 717, 570 2125, 2123, 2120, 0, 2117, 0, 2088, 694, 679, 712, 571 709, 711, 698, 566, 726, 743, 771, 741, 790, 784, 572 800, 795, 742, 744, 814, 816, 818, 2118, 819, 745, 573 574 820, 821, 822, 823, 824, 746, 825, 748, 659, 831, 575 826, 833, 838, 839, 848, 850, 851, 844, 834, 857, 576 2116, 858, 859, 860, 862, 861, 864, 865, 867, 868, 577 866, 871, 876, 872, 878, 2113, 880, 689, 881, 882, 578 892, 896, 893, 953, 954, 2109, 2108, 2106, 0, 2103, 579 0, 941, 945, 2102, 0, 2101, 0, 2099, 0, 2118, 580 2822, 940, 941, 2094, 2088, 0, 2086, 0, 2822, 953, 581 975, 964, 2822, 981, 997, 1021, 2084, 2822, 2822, 939, 582 940, 1006, 982, 1041, 310, 1039, 1004, 2822, 2822, 2081, 583 2079, 2077, 0, 2074, 0, 2071, 0, 2070, 0, 2822, 584 585 886, 941, 960, 962, 977, 976, 980, 982, 1017, 1010, 586 1002, 998, 1022, 1031, 1028, 1033, 1034, 1037, 1040, 1043, 587 1038, 1041, 1053, 2072, 1055, 2070, 1045, 2067, 1056, 1061, 588 1063, 1065, 1066, 1067, 1070, 2064, 1071, 2063, 1073, 1074, 589 1075, 1078, 1080, 1081, 1085, 2062, 1087, 2060, 1084, 1089, 590 1091, 1097, 1099, 1092, 1102, 1103, 1105, 1106, 1108, 905, 591 1109, 1116, 1110, 1122, 2057, 1120, 1123, 1179, 2051, 0, 592 2050, 0, 2049, 0, 2047, 0, 1166, 2044, 0, 2041, 593 0, 2040, 2039, 2037, 0, 2034, 0, 1173, 2031, 1179, 594 1137, 1195, 1181, 1178, 1176, 2822, 1219, 1231, 1253, 2042, 595 596 2017, 2027, 2024, 0, 2021, 0, 2020, 0, 2019, 0, 597 2017, 0, 2014, 0, 1141, 1172, 2014, 1180, 1155, 1196, 598 1157, 1216, 1207, 1231, 1125, 1210, 1232, 1214, 1187, 1236, 599 1235, 1237, 1238, 1272, 1249, 1252, 1250, 1253, 1254, 2013, 600 1261, 1256, 2012, 1260, 1263, 1264, 1257, 2010, 1271, 1268, 601 1269, 1273, 2007, 1275, 1282, 2006, 1283, 1284, 2005, 1276, 602 1286, 1289, 2003, 1294, 1291, 1296, 1295, 1297, 1310, 2000, 603 1305, 1308, 1999, 1307, 1300, 1998, 2046, 1960, 0, 1958, 604 0, 1957, 0, 1954, 0, 1951, 0, 1950, 0, 1949, 605 0, 1947, 0, 1355, 1361, 1389, 1372, 1944, 2822, 1378, 606 607 1325, 1365, 1379, 1941, 2822, 1940, 0, 1939, 0, 1937, 608 0, 1934, 0, 0, 0, 1936, 0, 1366, 1312, 1311, 609 1341, 1323, 1368, 1369, 1374, 1356, 1383, 1372, 1388, 1390, 610 1393, 1395, 1396, 1398, 1400, 1431, 1406, 1407, 1411, 1408, 611 1413, 1414, 1935, 1409, 1416, 1419, 1933, 1930, 1929, 1422, 612 1424, 1928, 1429, 1926, 1923, 1425, 1430, 1919, 1915, 1911, 613 1895, 1894, 1893, 1436, 1433, 1891, 1439, 1440, 1938, 2822, 614 1884, 0, 1883, 0, 0, 0, 1884, 0, 0, 0, 615 2822, 0, 0, 0, 0, 1486, 1878, 2822, 2822, 1492, 616 1877, 0, 1876, 0, 0, 0, 0, 1874, 1447, 1444, 617 618 1874, 1449, 1471, 1479, 1450, 1480, 1482, 1469, 1873, 1486, 619 1490, 1488, 1502, 1452, 1510, 1504, 1491, 1519, 1506, 1498, 620 1508, 1512, 1513, 1514, 1515, 1872, 1870, 1517, 1867, 1866, 621 1518, 1520, 1523, 1865, 1521, 1525, 0, 0, 0, 1860, 622 1857, 1856, 1575, 0, 1855, 1853, 1850, 1849, 1848, 1849, 623 1846, 1845, 1844, 1531, 1536, 1527, 1528, 1552, 1533, 1537, 624 1539, 1555, 1557, 1569, 1842, 1560, 1839, 1561, 1559, 1568, 625 1572, 1567, 1573, 1838, 1837, 1835, 1828, 1574, 1826, 1825, 626 1819, 1818, 1817, 1815, 1798, 1789, 1788, 1785, 1778, 1775, 627 1768, 1766, 1576, 1768, 1577, 1581, 1580, 1579, 1584, 1585, 628 629 1747, 1586, 1615, 1590, 1746, 1591, 1592, 1602, 1600, 1594, 630 1606, 1742, 1735, 1733, 1732, 1690, 1689, 1686, 1685, 1683, 631 1682, 1678, 1677, 1674, 1676, 1607, 1611, 1614, 1612, 1608, 632 1616, 1620, 1675, 1623, 1624, 1530, 1453, 1630, 1625, 1629, 633 1438, 1354, 1319, 1318, 1267, 1212, 1210, 1208, 1631, 1636, 634 1178, 1639, 1635, 1643, 1177, 1644, 1646, 1650, 1126, 964, 635 937, 903, 1651, 1652, 1654, 1655, 1656, 1658, 788, 752, 636 1660, 607, 487, 1662, 1663, 394, 357, 1664, 1666, 1668, 637 1670, 1669, 1672, 1674, 233, 137, 2822, 1747, 1760, 1773, 638 1783, 1793, 1806, 1816, 1829, 1842, 1855, 1863, 1873, 1880, 639 640 1887, 1894, 1901, 1908, 1915, 1922, 1929, 1936, 1949, 1956, 641 1960, 1968, 1971, 1978, 1985, 1992, 1995, 2002, 2008, 2021, 642 2034, 2041, 2048, 2055, 2062, 2065, 2072, 2075, 2082, 2085, 643 2092, 2095, 2102, 2105, 2112, 2115, 2122, 2125, 2132, 2140, 644 2147, 2154, 2161, 2168, 2171, 2178, 2181, 2188, 2191, 2198, 645 2204, 2217, 2224, 2231, 2234, 2241, 2244, 2251, 2254, 2261, 646 2264, 2271, 2274, 2281, 2284, 2291, 2298, 2301, 2308, 2311, 647 2318, 2325, 2332, 2335, 2342, 2345, 2352, 2355, 2362, 2365, 648 2372, 2375, 2382, 2388, 2401, 2408, 2415, 2418, 2425, 2428, 649 2435, 2438, 2445, 2448, 2455, 2458, 2465, 2468, 2475, 2478, 650 651 2485, 2488, 2495, 2502, 2505, 2512, 2515, 2522, 2525, 2532, 652 2535, 2538, 2544, 2551, 2560, 2567, 2574, 2577, 2584, 2587, 653 2590, 2596, 2603, 2606, 2609, 2612, 2615, 2618, 2621, 2624, 654 2631, 2634, 2641, 2644, 2647, 2650, 2653, 2663, 2670, 2673, 655 2676, 2679, 2686, 2693, 2700, 2703, 2710, 2717, 2724, 2731, 656 2738, 2745, 2752, 2759, 2766, 2773, 2780, 2787, 2794, 2801, 657 2808 658 658 } ; 659 659 … … 779 779 } ; 780 780 781 static yyconst flex_int16_t yy_nxt[2 883] =781 static yyconst flex_int16_t yy_nxt[2908] = 782 782 { 0, 783 783 12, 13, 14, 15, 15, 15, 13, 16, 17, 12, … … 785 785 28, 29, 30, 31, 32, 32, 32, 32, 33, 34, 786 786 35, 36, 37, 38, 39, 18, 18, 18, 18, 18, 787 18, 18, 40, 18, 18, 18, 18, 18, 40, 18,788 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,789 5 1, 52, 53, 18, 54, 18, 55, 18, 18, 56,790 18, 57, 58, 59, 60, 61, 62, 18, 18, 18,791 63, 64, 65, 66, 67, 84, 92, 85, 85, 67,792 88, 89, 68, 71, 71, 71, 71, 71, 71, 71,793 794 71, 71, 71, 7 2, 71, 71, 71, 71, 71, 71,787 18, 18, 18, 40, 18, 18, 18, 18, 18, 40, 788 18, 41, 42, 43, 44, 45, 46, 47, 48, 49, 789 50, 51, 52, 53, 18, 54, 18, 55, 18, 18, 790 56, 18, 57, 58, 59, 60, 61, 62, 18, 18, 791 18, 63, 64, 65, 66, 67, 84, 92, 85, 85, 792 67, 88, 89, 68, 71, 71, 71, 71, 71, 71, 793 794 71, 71, 71, 71, 72, 71, 71, 71, 71, 71, 795 795 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 796 71, 71, 71, 71, 71, 71, 71, 71, 7 2, 72,796 71, 71, 71, 71, 71, 71, 71, 71, 71, 72, 797 797 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 798 72, 72, 72, 71, 73, 71, 71, 72, 74, 72, 798 72, 72, 72, 72, 72, 71, 73, 71, 71, 72, 799 74, 72, 72, 72, 72, 72, 72, 72, 72, 72, 799 800 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 800 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 801 72, 72, 72, 71, 71, 71, 71, 76, 76, 79, 802 79, 123, 124, 90, 141, 79, 79, 87, 76, 76, 803 80, 81, 82, 82, 82, 80, 82, 81, 83, 83, 804 805 83, 82, 91, 93, 142, 146, 87, 98, 95, 99, 806 99, 99, 99, 99, 99, 252, 887, 94, 100, 85, 807 96, 97, 85, 101, 177, 118, 77, 77, 77, 77, 808 143, 147, 87, 102, 103, 144, 104, 104, 104, 104, 809 105, 105, 119, 87, 120, 121, 148, 87, 149, 254, 810 260, 87, 161, 106, 427, 194, 107, 87, 87, 150, 811 151, 152, 108, 109, 153, 154, 183, 155, 110, 87, 812 156, 157, 87, 87, 106, 87, 145, 162, 158, 159, 813 111, 160, 87, 195, 163, 87, 87, 180, 108, 206, 814 164, 109, 103, 181, 112, 112, 112, 112, 112, 112, 815 816 87, 169, 305, 170, 182, 87, 87, 87, 87, 165, 817 87, 106, 171, 166, 113, 207, 178, 87, 167, 188, 818 114, 283, 168, 179, 230, 87, 115, 189, 193, 184, 819 185, 143, 106, 196, 190, 263, 144, 264, 116, 186, 820 87, 298, 187, 200, 201, 172, 114, 125, 200, 191, 821 231, 126, 127, 173, 128, 174, 129, 130, 175, 131, 822 250, 132, 176, 258, 202, 202, 202, 202, 202, 202, 823 133, 134, 135, 263, 87, 264, 87, 145, 197, 81, 824 82, 82, 82, 197, 251, 282, 198, 259, 87, 87, 825 136, 192, 87, 137, 80, 81, 82, 82, 82, 80, 826 827 82, 81, 82, 82, 82, 82, 82, 81, 83, 83, 828 83, 82, 263, 307, 264, 242, 242, 242, 242, 248, 829 138, 139, 209, 210, 87, 249, 256, 209, 87, 211, 830 249, 263, 257, 264, 211, 99, 99, 99, 99, 99, 831 99, 265, 887, 212, 212, 212, 212, 243, 248, 310, 832 887, 249, 265, 263, 211, 264, 249, 103, 257, 105, 833 105, 105, 105, 105, 105, 87, 263, 241, 264, 213, 834 887, 263, 211, 264, 87, 257, 106, 211, 211, 887, 835 271, 211, 211, 280, 255, 266, 263, 87, 264, 211, 836 404, 244, 211, 256, 211, 214, 211, 106, 215, 217, 837 838 263, 257, 264, 218, 219, 281, 272, 887, 220, 221, 839 245, 222, 245, 223, 87, 246, 246, 246, 246, 246, 840 246, 87, 224, 225, 226, 263, 267, 264, 263, 143, 841 264, 87, 284, 87, 144, 87, 278, 87, 87, 87, 842 87, 87, 227, 279, 300, 228, 87, 247, 87, 286, 843 306, 303, 87, 285, 87, 299, 87, 87, 87, 301, 844 302, 323, 308, 311, 304, 87, 87, 314, 309, 87, 845 313, 315, 87, 229, 233, 233, 233, 233, 233, 233, 846 87, 312, 87, 316, 318, 87, 317, 87, 87, 87, 847 234, 235, 87, 236, 237, 627, 324, 320, 325, 360, 848 849 329, 361, 319, 328, 321, 322, 238, 143, 326, 327, 850 87, 234, 235, 234, 87, 331, 236, 330, 237, 287, 851 288, 289, 87, 290, 291, 87, 87, 292, 87, 293, 852 332, 346, 87, 335, 294, 295, 296, 87, 297, 333, 853 709, 87, 334, 87, 337, 341, 360, 342, 361, 360, 854 87, 361, 378, 338, 339, 336, 343, 347, 360, 360, 855 361, 361, 340, 197, 81, 82, 82, 82, 197, 200, 856 201, 198, 209, 210, 200, 200, 201, 209, 378, 87, 857 200, 344, 201, 87, 362, 360, 344, 361, 345, 434, 858 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 859 860 202, 202, 202, 202, 202, 202, 202, 202, 352, 352, 861 352, 352, 361, 361, 360, 363, 361, 360, 360, 361, 862 361, 369, 887, 369, 143, 360, 360, 361, 361, 370, 863 87, 370, 388, 87, 371, 371, 371, 371, 371, 371, 864 353, 373, 390, 401, 369, 373, 369, 87, 87, 234, 865 235, 402, 236, 237, 87, 263, 375, 264, 388, 263, 866 87, 264, 373, 416, 373, 403, 372, 87, 391, 373, 867 234, 235, 234, 87, 407, 236, 87, 237, 105, 105, 868 105, 105, 105, 105, 246, 246, 246, 246, 246, 246, 869 405, 245, 87, 245, 414, 106, 246, 246, 246, 246, 870 871 246, 246, 105, 105, 105, 105, 105, 105, 87, 87, 872 255, 87, 409, 406, 408, 87, 106, 376, 376, 376, 873 376, 376, 376, 381, 421, 87, 112, 112, 112, 112, 874 112, 112, 887, 234, 255, 87, 236, 237, 413, 87, 875 87, 417, 418, 87, 419, 383, 87, 384, 87, 377, 876 87, 385, 420, 425, 234, 87, 234, 386, 260, 236, 877 87, 237, 422, 87, 423, 410, 415, 87, 87, 387, 878 87, 411, 412, 384, 87, 428, 426, 385, 424, 432, 879 87, 429, 87, 87, 87, 433, 438, 87, 87, 430, 880 431, 87, 436, 437, 87, 87, 441, 439, 87, 440, 881 882 442, 435, 87, 443, 87, 87, 87, 87, 87, 87, 883 87, 87, 87, 445, 87, 447, 448, 87, 87, 87, 884 444, 449, 446, 451, 87, 87, 450, 456, 87, 455, 885 452, 454, 453, 87, 87, 87, 457, 462, 461, 87, 886 458, 459, 460, 465, 466, 87, 201, 464, 344, 201, 887 887, 463, 199, 344, 500, 345, 211, 211, 211, 211, 888 467, 352, 352, 352, 352, 360, 360, 361, 361, 371, 889 371, 371, 371, 371, 371, 370, 492, 370, 501, 87, 890 371, 371, 371, 371, 371, 371, 493, 87, 477, 488, 891 488, 488, 488, 488, 488, 233, 233, 233, 233, 233, 892 893 233, 87, 492, 516, 496, 234, 492, 87, 236, 237, 894 242, 242, 242, 242, 105, 105, 494, 495, 515, 381, 895 518, 489, 495, 496, 87, 87, 234, 374, 234, 87, 896 496, 236, 492, 237, 376, 376, 376, 376, 376, 376, 897 887, 383, 375, 384, 517, 87, 522, 385, 545, 496, 898 497, 87, 497, 386, 519, 498, 498, 498, 498, 498, 899 498, 87, 383, 87, 384, 387, 377, 87, 385, 384, 900 87, 87, 520, 385, 502, 87, 521, 87, 87, 523, 901 87, 87, 87, 87, 524, 526, 387, 499, 532, 87, 902 384, 525, 87, 527, 385, 87, 531, 528, 529, 530, 903 904 87, 535, 87, 536, 533, 87, 87, 539, 87, 87, 905 87, 534, 87, 537, 87, 87, 87, 541, 546, 538, 906 540, 87, 87, 544, 87, 548, 87, 87, 87, 542, 907 547, 543, 87, 87, 550, 87, 549, 556, 87, 552, 908 87, 87, 554, 87, 551, 87, 87, 559, 553, 87, 909 557, 87, 555, 87, 87, 87, 492, 87, 558, 565, 910 564, 560, 566, 561, 567, 562, 87, 87, 563, 87, 911 87, 201, 573, 568, 87, 571, 570, 577, 569, 599, 912 574, 492, 492, 576, 87, 572, 211, 211, 211, 211, 913 718, 493, 575, 488, 488, 488, 488, 488, 488, 376, 914 915 376, 376, 376, 376, 376, 599, 623, 492, 492, 234, 916 87, 87, 236, 237, 595, 87, 595, 87, 598, 596, 917 596, 596, 596, 596, 596, 489, 620, 618, 619, 87, 918 234, 490, 234, 87, 492, 236, 87, 237, 498, 498, 919 498, 498, 498, 498, 87, 87, 622, 626, 87, 621, 920 87, 597, 600, 600, 600, 600, 600, 600, 624, 87, 921 87, 87, 87, 629, 625, 631, 87, 633, 601, 632, 922 628, 602, 603, 497, 635, 497, 87, 636, 498, 498, 923 498, 498, 498, 498, 604, 630, 87, 634, 87, 601, 924 87, 601, 87, 87, 602, 637, 603, 642, 641, 87, 925 926 87, 640, 87, 87, 87, 87, 87, 639, 643, 87, 927 638, 647, 87, 87, 87, 87, 87, 644, 648, 645, 928 87, 646, 87, 654, 87, 650, 87, 653, 87, 649, 929 651, 652, 87, 655, 87, 87, 87, 87, 87, 657, 930 659, 664, 656, 661, 660, 658, 87, 87, 666, 663, 931 87, 87, 688, 87, 688, 665, 87, 662, 488, 488, 932 488, 488, 488, 488, 668, 702, 703, 667, 596, 596, 933 596, 596, 596, 596, 595, 688, 595, 688, 87, 596, 934 596, 596, 596, 596, 596, 689, 87, 721, 87, 689, 935 594, 686, 686, 686, 686, 686, 686, 600, 600, 600, 936 937 600, 600, 600, 704, 87, 87, 689, 601, 689, 699, 938 602, 603, 701, 689, 87, 87, 87, 87, 87, 87, 939 87, 87, 700, 687, 706, 87, 707, 87, 601, 604, 940 601, 87, 708, 602, 710, 603, 87, 705, 711, 716, 941 712, 713, 715, 87, 714, 87, 87, 87, 717, 87, 942 87, 87, 87, 87, 87, 87, 87, 87, 719, 724, 943 87, 727, 732, 87, 722, 720, 731, 87, 87, 723, 944 87, 736, 725, 726, 728, 87, 733, 730, 734, 735, 945 729, 686, 686, 686, 686, 686, 686, 600, 600, 600, 946 600, 600, 600, 87, 87, 87, 750, 601, 87, 754, 947 948 602, 603, 87, 751, 87, 753, 87, 756, 87, 757, 949 87, 87, 87, 687, 87, 762, 759, 764, 601, 690, 950 601, 752, 755, 602, 760, 603, 758, 87, 87, 87, 951 767, 765, 87, 87, 87, 763, 761, 768, 766, 87, 952 770, 87, 87, 87, 87, 87, 769, 87, 87, 771, 953 87, 87, 774, 87, 772, 87, 87, 87, 87, 779, 954 87, 795, 780, 773, 87, 87, 87, 775, 776, 777, 955 797, 778, 686, 686, 686, 686, 686, 686, 793, 87, 956 796, 794, 87, 800, 87, 801, 803, 87, 87, 798, 957 804, 805, 87, 87, 87, 87, 799, 802, 807, 806, 958 959 87, 87, 87, 808, 743, 87, 87, 87, 809, 828, 960 87, 87, 87, 87, 830, 831, 87, 810, 833, 87, 961 87, 87, 834, 87, 811, 827, 826, 87, 87, 825, 962 836, 837, 829, 87, 832, 87, 87, 839, 87, 840, 963 87, 87, 835, 87, 838, 850, 87, 887, 87, 851, 964 852, 855, 87, 856, 849, 857, 87, 87, 853, 858, 965 87, 87, 87, 87, 854, 87, 859, 864, 865, 860, 966 863, 87, 87, 866, 87, 868, 867, 869, 87, 87, 967 87, 870, 87, 87, 87, 873, 87, 875, 87, 876, 968 87, 87, 87, 874, 87, 872, 87, 87, 87, 871, 969 970 87, 880, 87, 887, 862, 887, 879, 881, 887, 887, 971 877, 878, 886, 887, 861, 884, 87, 87, 882, 883, 972 87, 87, 885, 69, 69, 69, 69, 69, 69, 69, 973 69, 69, 69, 69, 69, 69, 75, 75, 75, 75, 974 75, 75, 75, 75, 75, 75, 75, 75, 75, 78, 975 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 976 78, 78, 86, 87, 887, 86, 887, 86, 86, 86, 977 86, 86, 140, 848, 887, 847, 140, 140, 140, 140, 978 140, 140, 199, 199, 199, 199, 199, 199, 199, 199, 979 199, 199, 199, 199, 199, 204, 887, 845, 204, 887, 980 981 204, 204, 204, 204, 204, 208, 844, 208, 208, 887, 982 208, 208, 208, 208, 208, 208, 843, 208, 216, 887, 983 842, 216, 216, 216, 216, 216, 216, 216, 216, 87, 984 216, 239, 239, 239, 239, 239, 239, 239, 239, 239, 985 239, 239, 239, 239, 253, 253, 87, 253, 87, 887, 986 824, 253, 269, 887, 823, 269, 821, 269, 269, 269, 987 269, 269, 273, 887, 273, 819, 887, 817, 273, 275, 988 887, 275, 815, 813, 87, 275, 348, 87, 348, 87, 989 87, 87, 348, 350, 87, 350, 87, 87, 87, 350, 990 354, 87, 354, 87, 87, 887, 354, 356, 792, 356, 991 992 790, 887, 887, 356, 358, 787, 358, 785, 783, 87, 993 358, 365, 87, 365, 87, 87, 87, 365, 367, 87, 994 367, 87, 749, 746, 367, 239, 239, 239, 239, 239, 995 239, 239, 239, 239, 239, 239, 239, 239, 380, 745, 996 380, 382, 382, 743, 382, 382, 382, 205, 382, 253, 997 253, 739, 253, 392, 738, 392, 670, 87, 87, 392, 998 394, 87, 394, 87, 87, 87, 394, 396, 87, 396, 999 87, 87, 87, 396, 273, 87, 273, 398, 87, 398, 1000 87, 87, 87, 398, 275, 697, 275, 86, 696, 694, 1001 86, 692, 86, 86, 86, 86, 86, 199, 199, 199, 1002 1003 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 801 72, 72, 72, 72, 72, 71, 71, 71, 71, 76, 802 76, 79, 79, 123, 124, 90, 141, 79, 79, 87, 803 76, 76, 80, 81, 82, 82, 82, 80, 82, 81, 804 805 83, 83, 83, 82, 91, 93, 87, 142, 146, 98, 806 95, 99, 99, 99, 99, 99, 99, 252, 887, 94, 807 100, 85, 96, 97, 85, 101, 161, 118, 143, 77, 808 77, 77, 77, 144, 147, 102, 103, 87, 104, 104, 809 104, 104, 105, 105, 119, 87, 120, 121, 148, 263, 810 149, 264, 254, 260, 183, 106, 195, 87, 159, 107, 811 160, 150, 151, 152, 87, 108, 109, 153, 154, 162, 812 155, 110, 87, 156, 157, 145, 163, 106, 87, 182, 813 87, 158, 164, 111, 206, 87, 263, 87, 264, 87, 814 87, 108, 194, 87, 109, 103, 250, 112, 112, 112, 815 816 112, 112, 112, 87, 169, 177, 170, 196, 193, 87, 817 207, 180, 165, 230, 106, 171, 166, 181, 113, 178, 818 251, 167, 87, 258, 114, 168, 179, 172, 87, 263, 819 115, 264, 248, 87, 87, 173, 106, 174, 249, 231, 820 175, 143, 116, 263, 176, 264, 144, 259, 317, 283, 821 114, 125, 280, 500, 249, 126, 127, 87, 128, 191, 822 129, 130, 256, 131, 249, 132, 87, 265, 257, 184, 823 185, 257, 248, 87, 133, 134, 135, 501, 188, 186, 824 249, 263, 187, 264, 271, 87, 189, 265, 145, 256, 825 305, 200, 201, 190, 257, 136, 200, 257, 137, 263, 826 827 887, 264, 192, 197, 81, 82, 82, 82, 197, 87, 828 272, 198, 202, 202, 202, 202, 202, 202, 80, 81, 829 82, 82, 82, 80, 87, 138, 139, 209, 210, 263, 830 887, 264, 209, 282, 211, 255, 263, 267, 264, 211, 831 82, 81, 82, 82, 82, 82, 87, 887, 212, 212, 832 212, 212, 82, 81, 83, 83, 83, 82, 887, 211, 833 99, 99, 99, 99, 99, 99, 242, 242, 242, 242, 834 266, 263, 263, 264, 264, 213, 143, 263, 211, 264, 835 87, 144, 375, 211, 211, 87, 87, 211, 211, 87, 836 87, 87, 286, 241, 887, 211, 87, 87, 211, 243, 837 838 211, 214, 211, 281, 215, 217, 278, 284, 285, 218, 839 219, 307, 298, 279, 220, 221, 87, 222, 87, 223, 840 87, 87, 887, 87, 309, 300, 87, 87, 224, 225, 841 226, 103, 303, 105, 105, 105, 105, 105, 105, 87, 842 299, 87, 301, 302, 87, 304, 308, 310, 87, 227, 843 106, 245, 228, 245, 306, 87, 246, 246, 246, 246, 844 246, 246, 87, 313, 87, 315, 244, 87, 87, 311, 845 314, 87, 106, 87, 87, 87, 323, 87, 87, 322, 846 229, 233, 233, 233, 233, 233, 233, 312, 333, 247, 847 319, 316, 328, 320, 318, 87, 87, 234, 235, 236, 848 849 321, 237, 236, 87, 324, 87, 325, 143, 335, 360, 850 331, 361, 87, 87, 238, 337, 326, 327, 87, 236, 851 235, 236, 87, 329, 237, 332, 236, 287, 288, 289, 852 336, 290, 291, 334, 87, 292, 87, 293, 407, 360, 853 330, 361, 294, 295, 296, 87, 297, 339, 360, 343, 854 361, 87, 200, 201, 338, 340, 346, 200, 341, 87, 855 342, 197, 81, 82, 82, 82, 197, 200, 201, 198, 856 378, 361, 200, 202, 202, 202, 202, 202, 202, 344, 857 201, 360, 347, 361, 344, 360, 345, 361, 202, 202, 858 202, 202, 202, 202, 209, 210, 378, 143, 361, 209, 859 860 202, 202, 202, 202, 202, 202, 352, 352, 352, 352, 861 360, 87, 361, 362, 360, 360, 361, 361, 360, 363, 862 361, 360, 360, 361, 361, 369, 369, 370, 369, 370, 863 435, 87, 371, 371, 371, 371, 371, 371, 373, 353, 864 373, 87, 263, 373, 264, 263, 87, 264, 369, 402, 865 87, 369, 234, 235, 236, 406, 237, 236, 388, 401, 866 373, 87, 373, 87, 87, 372, 390, 373, 105, 105, 867 105, 105, 105, 105, 236, 235, 236, 404, 87, 237, 868 405, 236, 403, 408, 388, 106, 246, 246, 246, 246, 869 246, 246, 391, 87, 87, 87, 87, 87, 87, 419, 870 871 87, 255, 425, 432, 87, 420, 434, 106, 376, 376, 872 376, 376, 376, 376, 381, 409, 413, 105, 105, 105, 873 105, 105, 105, 87, 234, 245, 236, 245, 237, 236, 874 246, 246, 246, 246, 246, 246, 87, 383, 410, 384, 875 87, 377, 87, 385, 411, 412, 236, 87, 236, 386, 876 255, 237, 87, 236, 112, 112, 112, 112, 112, 112, 877 414, 387, 415, 417, 418, 384, 87, 416, 87, 385, 878 87, 87, 87, 87, 87, 87, 87, 87, 87, 421, 879 427, 426, 433, 87, 437, 87, 87, 260, 423, 424, 880 87, 87, 436, 429, 428, 422, 87, 430, 431, 439, 881 882 87, 438, 87, 87, 446, 441, 440, 442, 443, 87, 883 87, 87, 87, 87, 87, 445, 87, 87, 87, 87, 884 87, 448, 447, 87, 87, 444, 449, 451, 87, 456, 885 87, 450, 87, 87, 87, 452, 455, 454, 87, 453, 886 457, 462, 460, 461, 87, 87, 458, 464, 87, 515, 887 459, 463, 465, 466, 344, 201, 201, 87, 887, 344, 888 467, 345, 199, 211, 211, 211, 211, 352, 352, 352, 889 352, 360, 360, 361, 361, 371, 371, 371, 371, 371, 890 371, 370, 569, 370, 492, 492, 371, 371, 371, 371, 891 371, 371, 887, 87, 493, 494, 477, 488, 488, 488, 892 893 488, 488, 488, 233, 233, 233, 233, 233, 233, 516, 894 492, 492, 87, 234, 87, 236, 87, 237, 236, 242, 895 242, 242, 242, 105, 105, 495, 381, 517, 87, 87, 896 489, 496, 87, 518, 87, 236, 374, 236, 519, 520, 897 237, 521, 236, 376, 376, 376, 376, 376, 376, 383, 898 87, 384, 375, 496, 87, 385, 522, 496, 497, 887, 899 497, 386, 87, 498, 498, 498, 498, 498, 498, 87, 900 525, 495, 526, 387, 87, 524, 377, 384, 523, 496, 901 87, 385, 383, 87, 384, 87, 87, 527, 385, 87, 902 87, 532, 87, 87, 502, 87, 499, 87, 535, 528, 903 904 529, 537, 530, 531, 533, 87, 387, 87, 87, 541, 905 384, 534, 538, 87, 385, 87, 536, 87, 87, 87, 906 539, 540, 87, 87, 546, 87, 87, 87, 544, 542, 907 87, 548, 87, 87, 547, 543, 87, 87, 549, 87, 908 545, 87, 552, 87, 87, 550, 556, 554, 551, 87, 909 559, 87, 553, 555, 87, 87, 557, 87, 87, 558, 910 87, 87, 87, 564, 560, 567, 563, 568, 87, 561, 911 566, 562, 87, 565, 87, 87, 571, 87, 87, 573, 912 627, 201, 492, 570, 576, 574, 572, 577, 211, 211, 913 211, 211, 493, 87, 575, 488, 488, 488, 488, 488, 914 915 488, 376, 376, 376, 376, 376, 376, 87, 492, 87, 916 618, 234, 595, 236, 595, 237, 236, 596, 596, 596, 917 596, 596, 596, 492, 87, 599, 492, 621, 489, 87, 918 87, 623, 87, 236, 490, 236, 598, 619, 237, 87, 919 236, 498, 498, 498, 498, 498, 498, 620, 87, 492, 920 597, 599, 492, 600, 600, 600, 600, 600, 600, 87, 921 631, 622, 87, 887, 625, 887, 87, 862, 87, 601, 922 497, 602, 497, 603, 602, 498, 498, 498, 498, 498, 923 498, 624, 628, 87, 87, 630, 604, 87, 87, 87, 924 87, 602, 633, 602, 626, 636, 603, 632, 602, 629, 925 926 634, 87, 87, 635, 87, 87, 87, 642, 87, 87, 927 637, 641, 87, 87, 640, 87, 87, 643, 647, 639, 928 87, 87, 887, 87, 87, 87, 638, 87, 87, 644, 929 645, 646, 648, 650, 87, 87, 87, 649, 87, 653, 930 651, 87, 652, 87, 654, 655, 87, 87, 87, 87, 931 656, 657, 87, 660, 659, 661, 664, 87, 658, 87, 932 87, 663, 87, 87, 87, 668, 665, 688, 688, 662, 933 666, 701, 702, 887, 887, 87, 667, 488, 488, 488, 934 488, 488, 488, 596, 596, 596, 596, 596, 596, 595, 935 688, 595, 704, 87, 596, 596, 596, 596, 596, 596, 936 937 600, 600, 600, 600, 600, 600, 703, 688, 87, 887, 938 594, 686, 686, 686, 686, 686, 686, 689, 87, 689, 939 87, 87, 689, 699, 87, 708, 87, 601, 706, 602, 940 688, 603, 602, 604, 707, 87, 700, 710, 709, 689, 941 87, 689, 87, 705, 687, 87, 689, 87, 87, 602, 942 87, 602, 87, 716, 603, 718, 602, 712, 87, 87, 943 87, 87, 711, 87, 714, 87, 87, 713, 87, 717, 944 715, 87, 721, 719, 87, 724, 87, 87, 722, 720, 945 727, 87, 87, 87, 725, 87, 731, 723, 87, 732, 946 726, 87, 87, 861, 728, 734, 87, 733, 730, 87, 947 948 735, 87, 87, 729, 87, 87, 751, 736, 686, 686, 949 686, 686, 686, 686, 600, 600, 600, 600, 600, 600, 950 750, 87, 755, 87, 601, 763, 602, 752, 603, 602, 951 753, 87, 87, 764, 87, 756, 754, 757, 87, 758, 952 87, 687, 87, 87, 759, 767, 602, 690, 602, 761, 953 87, 603, 766, 602, 87, 760, 87, 762, 87, 765, 954 87, 768, 87, 769, 87, 87, 87, 87, 770, 87, 955 87, 87, 87, 87, 771, 87, 774, 87, 772, 87, 956 87, 779, 87, 87, 795, 87, 780, 773, 87, 87, 957 776, 87, 775, 803, 777, 796, 778, 686, 686, 686, 958 959 686, 686, 686, 793, 87, 794, 799, 87, 798, 87, 960 801, 87, 87, 87, 797, 804, 805, 800, 806, 87, 961 87, 87, 802, 807, 87, 87, 87, 808, 87, 87, 962 743, 87, 87, 87, 809, 828, 87, 87, 87, 830, 963 831, 833, 87, 87, 87, 834, 87, 836, 810, 811, 964 826, 827, 87, 829, 87, 825, 832, 837, 87, 87, 965 87, 838, 839, 87, 87, 835, 87, 87, 87, 851, 966 850, 855, 87, 852, 840, 87, 87, 87, 853, 857, 967 849, 87, 87, 87, 854, 858, 859, 87, 87, 856, 968 860, 87, 863, 864, 865, 87, 87, 866, 87, 868, 969 970 867, 869, 87, 87, 87, 870, 87, 87, 87, 873, 971 87, 875, 87, 876, 87, 87, 87, 874, 87, 872, 972 87, 87, 87, 871, 87, 880, 87, 87, 87, 887, 973 879, 881, 887, 848, 877, 878, 886, 887, 847, 884, 974 887, 845, 882, 883, 887, 844, 885, 69, 69, 69, 975 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 976 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 977 75, 75, 75, 78, 78, 78, 78, 78, 78, 78, 978 78, 78, 78, 78, 78, 78, 86, 887, 843, 86, 979 887, 86, 86, 86, 86, 86, 140, 842, 87, 87, 980 981 140, 140, 140, 140, 140, 140, 199, 199, 199, 199, 982 199, 199, 199, 199, 199, 199, 199, 199, 199, 204, 983 87, 887, 204, 824, 204, 204, 204, 204, 204, 208, 984 887, 208, 208, 823, 208, 208, 208, 208, 208, 208, 985 821, 208, 216, 887, 819, 216, 216, 216, 216, 216, 986 216, 216, 216, 887, 216, 239, 239, 239, 239, 239, 987 239, 239, 239, 239, 239, 239, 239, 239, 253, 253, 988 817, 253, 887, 815, 813, 253, 269, 87, 87, 269, 989 87, 269, 269, 269, 269, 269, 273, 87, 273, 87, 990 87, 87, 273, 275, 87, 275, 87, 87, 87, 275, 991 992 348, 87, 348, 887, 792, 790, 348, 350, 887, 350, 993 887, 787, 785, 350, 354, 783, 354, 87, 87, 87, 994 354, 356, 87, 356, 87, 87, 87, 356, 358, 749, 995 358, 746, 745, 743, 358, 365, 205, 365, 739, 738, 996 670, 365, 367, 87, 367, 87, 87, 87, 367, 239, 997 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 998 239, 239, 380, 87, 380, 382, 382, 87, 382, 382, 999 382, 87, 382, 253, 253, 87, 253, 392, 87, 392, 1000 87, 87, 87, 392, 394, 87, 394, 87, 87, 697, 1001 394, 396, 696, 396, 694, 692, 690, 396, 273, 598, 1002 1003 273, 398, 685, 398, 684, 682, 680, 398, 275, 678, 1004 275, 86, 676, 674, 86, 672, 86, 86, 86, 86, 1005 86, 199, 199, 199, 199, 199, 199, 199, 199, 199, 1006 199, 199, 199, 199, 468, 468, 468, 468, 468, 468, 1007 468, 468, 468, 468, 468, 468, 468, 469, 670, 469, 1008 87, 87, 87, 469, 471, 87, 471, 87, 87, 87, 1009 471, 473, 87, 473, 87, 87, 87, 473, 348, 617, 1010 348, 475, 615, 475, 613, 611, 609, 475, 350, 607, 1011 350, 478, 502, 478, 605, 605, 594, 478, 354, 593, 1012 354, 480, 591, 480, 483, 483, 589, 480, 356, 587, 1013 1014 356, 482, 585, 482, 583, 581, 579, 482, 358, 87, 1015 358, 484, 87, 484, 87, 87, 87, 484, 365, 87, 1016 365, 486, 87, 486, 87, 514, 512, 486, 367, 510, 1017 367, 491, 508, 491, 506, 491, 504, 491, 380, 490, 1018 380, 487, 380, 485, 380, 382, 382, 361, 382, 382, 1019 382, 361, 382, 503, 483, 503, 481, 479, 476, 503, 1020 505, 474, 505, 472, 470, 87, 505, 507, 87, 507, 1021 87, 400, 399, 507, 392, 397, 392, 509, 395, 509, 1022 393, 270, 265, 509, 394, 264, 394, 511, 389, 511, 1023 389, 252, 379, 511, 396, 379, 396, 513, 240, 513, 1024 1025 374, 368, 366, 513, 398, 364, 398, 86, 360, 359, 1026 86, 357, 86, 86, 86, 86, 86, 468, 468, 468, 1004 1027 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, 1005 468, 468, 468, 469, 690, 469, 598, 685, 684, 469, 1006 471, 682, 471, 680, 678, 676, 471, 473, 674, 473, 1007 672, 670, 87, 473, 348, 87, 348, 475, 87, 475, 1008 87, 87, 87, 475, 350, 87, 350, 478, 87, 478, 1009 87, 87, 87, 478, 354, 617, 354, 480, 615, 480, 1010 613, 611, 609, 480, 356, 607, 356, 482, 502, 482, 1011 605, 605, 594, 482, 358, 593, 358, 484, 591, 484, 1012 483, 483, 589, 484, 365, 587, 365, 486, 585, 486, 1013 1014 583, 581, 579, 486, 367, 87, 367, 491, 87, 491, 1015 87, 491, 87, 491, 380, 87, 380, 87, 380, 87, 1016 380, 382, 382, 87, 382, 382, 382, 514, 382, 503, 1017 512, 503, 510, 508, 506, 503, 505, 504, 505, 490, 1018 487, 485, 505, 507, 361, 507, 361, 483, 481, 507, 1019 392, 479, 392, 509, 476, 509, 474, 472, 470, 509, 1020 394, 87, 394, 511, 87, 511, 87, 400, 399, 511, 1021 396, 397, 396, 513, 395, 513, 393, 270, 265, 513, 1022 398, 264, 398, 86, 389, 389, 86, 252, 86, 86, 1023 86, 86, 86, 468, 468, 468, 468, 468, 468, 468, 1024 1025 468, 468, 468, 468, 468, 468, 578, 379, 578, 379, 1026 240, 374, 578, 469, 368, 469, 580, 366, 580, 364, 1027 360, 359, 580, 471, 357, 471, 582, 355, 582, 351, 1028 349, 205, 582, 473, 201, 473, 584, 87, 584, 277, 1029 276, 274, 584, 475, 270, 475, 586, 265, 586, 268, 1030 265, 263, 586, 478, 262, 478, 588, 261, 588, 240, 1031 232, 85, 588, 480, 85, 480, 482, 87, 482, 205, 1032 203, 85, 482, 590, 122, 590, 117, 87, 887, 590, 1033 484, 70, 484, 592, 70, 592, 887, 887, 887, 592, 1034 486, 887, 486, 491, 887, 491, 887, 491, 887, 491, 1035 1036 382, 887, 382, 887, 887, 887, 382, 606, 887, 606, 1037 887, 887, 887, 606, 503, 887, 503, 608, 887, 608, 1038 887, 887, 887, 608, 505, 887, 505, 610, 887, 610, 1039 887, 887, 887, 610, 507, 887, 507, 612, 887, 612, 1040 887, 887, 887, 612, 509, 887, 509, 614, 887, 614, 1041 887, 887, 887, 614, 511, 887, 511, 616, 887, 616, 1042 887, 887, 887, 616, 513, 887, 513, 86, 887, 887, 1043 86, 887, 86, 86, 86, 86, 86, 669, 669, 669, 1028 578, 355, 578, 351, 349, 205, 578, 469, 201, 469, 1029 580, 87, 580, 277, 276, 274, 580, 471, 270, 471, 1030 582, 265, 582, 268, 265, 263, 582, 473, 262, 473, 1031 584, 261, 584, 240, 232, 85, 584, 475, 85, 475, 1032 586, 87, 586, 205, 203, 85, 586, 478, 122, 478, 1033 588, 117, 588, 87, 887, 70, 588, 480, 70, 480, 1034 482, 887, 482, 887, 887, 887, 482, 590, 887, 590, 1035 1036 887, 887, 887, 590, 484, 887, 484, 592, 887, 592, 1037 887, 887, 887, 592, 486, 887, 486, 491, 887, 491, 1038 887, 491, 887, 491, 382, 887, 382, 887, 887, 887, 1039 382, 606, 887, 606, 887, 887, 887, 606, 503, 887, 1040 503, 608, 887, 608, 887, 887, 887, 608, 505, 887, 1041 505, 610, 887, 610, 887, 887, 887, 610, 507, 887, 1042 507, 612, 887, 612, 887, 887, 887, 612, 509, 887, 1043 509, 614, 887, 614, 887, 887, 887, 614, 511, 887, 1044 511, 616, 887, 616, 887, 887, 887, 616, 513, 887, 1045 513, 86, 887, 887, 86, 887, 86, 86, 86, 86, 1046 1047 86, 669, 669, 669, 669, 669, 669, 669, 669, 669, 1048 669, 669, 669, 669, 671, 887, 671, 887, 887, 887, 1049 671, 578, 887, 578, 673, 887, 673, 887, 887, 887, 1050 673, 580, 887, 580, 675, 887, 675, 887, 887, 887, 1051 675, 582, 887, 582, 677, 887, 677, 887, 887, 887, 1052 677, 584, 887, 584, 679, 887, 679, 887, 887, 887, 1053 679, 586, 887, 586, 681, 887, 681, 887, 887, 887, 1054 681, 588, 887, 588, 683, 887, 683, 887, 887, 887, 1055 683, 590, 887, 590, 86, 887, 86, 887, 887, 887, 1056 86, 592, 887, 592, 491, 887, 491, 887, 887, 887, 1057 1058 491, 691, 887, 691, 887, 887, 887, 691, 606, 887, 1059 606, 693, 887, 693, 887, 887, 887, 693, 608, 887, 1060 608, 695, 887, 695, 887, 887, 887, 695, 610, 887, 1061 610, 140, 887, 140, 887, 887, 887, 140, 612, 887, 1062 612, 698, 887, 698, 614, 887, 614, 86, 887, 887, 1063 86, 887, 86, 86, 86, 86, 86, 616, 887, 616, 1044 1064 669, 669, 669, 669, 669, 669, 669, 669, 669, 669, 1045 671, 887, 671, 887, 887, 887, 671, 578, 887, 578, 1046 1047 673, 887, 673, 887, 887, 887, 673, 580, 887, 580, 1048 675, 887, 675, 887, 887, 887, 675, 582, 887, 582, 1049 677, 887, 677, 887, 887, 887, 677, 584, 887, 584, 1050 679, 887, 679, 887, 887, 887, 679, 586, 887, 586, 1051 681, 887, 681, 887, 887, 887, 681, 588, 887, 588, 1052 683, 887, 683, 887, 887, 887, 683, 590, 887, 590, 1053 86, 887, 86, 887, 887, 887, 86, 592, 887, 592, 1054 491, 887, 491, 887, 887, 887, 491, 691, 887, 691, 1055 887, 887, 887, 691, 606, 887, 606, 693, 887, 693, 1056 887, 887, 887, 693, 608, 887, 608, 695, 887, 695, 1057 1058 887, 887, 887, 695, 610, 887, 610, 140, 887, 140, 1059 887, 887, 887, 140, 612, 887, 612, 698, 887, 698, 1060 614, 887, 614, 86, 887, 887, 86, 887, 86, 86, 1061 86, 86, 86, 616, 887, 616, 669, 669, 669, 669, 1062 669, 669, 669, 669, 669, 669, 669, 669, 669, 737, 1063 887, 737, 887, 887, 887, 737, 671, 887, 671, 204, 1064 887, 204, 887, 887, 887, 204, 673, 887, 673, 740, 1065 887, 740, 675, 887, 675, 204, 887, 887, 204, 887, 1066 204, 204, 204, 204, 204, 677, 887, 677, 741, 887, 1067 741, 679, 887, 679, 681, 887, 681, 742, 887, 742, 1068 1069 683, 887, 683, 86, 887, 86, 744, 887, 744, 887, 1070 887, 887, 744, 691, 887, 691, 269, 887, 269, 887, 1071 887, 887, 269, 693, 887, 693, 747, 887, 747, 695, 1072 887, 695, 140, 887, 140, 748, 887, 748, 887, 887, 1073 887, 748, 86, 887, 887, 86, 887, 86, 86, 86, 1074 86, 86, 781, 887, 781, 737, 887, 737, 204, 887, 1075 204, 782, 887, 782, 887, 887, 887, 782, 784, 887, 1076 784, 887, 887, 887, 784, 786, 887, 786, 887, 887, 1077 887, 786, 788, 887, 788, 789, 887, 789, 887, 887, 1078 887, 789, 791, 887, 791, 887, 887, 887, 791, 812, 1079 1080 887, 812, 887, 887, 887, 812, 814, 887, 814, 887, 1081 887, 887, 814, 816, 887, 816, 887, 887, 887, 816, 1082 818, 887, 818, 887, 887, 887, 818, 820, 887, 820, 1083 887, 887, 887, 820, 822, 887, 822, 887, 887, 887, 1084 822, 616, 887, 616, 887, 887, 887, 616, 841, 887, 1085 841, 887, 887, 887, 841, 677, 887, 677, 887, 887, 1086 887, 677, 681, 887, 681, 887, 887, 887, 681, 86, 1087 887, 86, 887, 887, 887, 86, 846, 887, 846, 887, 1088 887, 887, 846, 140, 887, 140, 887, 887, 887, 140, 1089 204, 887, 204, 887, 887, 887, 204, 11, 887, 887, 1090 1065 669, 669, 669, 737, 887, 737, 887, 887, 887, 737, 1066 671, 887, 671, 204, 887, 204, 887, 887, 887, 204, 1067 673, 887, 673, 740, 887, 740, 675, 887, 675, 204, 1068 1069 887, 887, 204, 887, 204, 204, 204, 204, 204, 677, 1070 887, 677, 741, 887, 741, 679, 887, 679, 681, 887, 1071 681, 742, 887, 742, 683, 887, 683, 86, 887, 86, 1072 744, 887, 744, 887, 887, 887, 744, 691, 887, 691, 1073 269, 887, 269, 887, 887, 887, 269, 693, 887, 693, 1074 747, 887, 747, 695, 887, 695, 140, 887, 140, 748, 1075 887, 748, 887, 887, 887, 748, 86, 887, 887, 86, 1076 887, 86, 86, 86, 86, 86, 781, 887, 781, 737, 1077 887, 737, 204, 887, 204, 782, 887, 782, 887, 887, 1078 887, 782, 784, 887, 784, 887, 887, 887, 784, 786, 1079 1080 887, 786, 887, 887, 887, 786, 788, 887, 788, 789, 1081 887, 789, 887, 887, 887, 789, 791, 887, 791, 887, 1082 887, 887, 791, 812, 887, 812, 887, 887, 887, 812, 1083 814, 887, 814, 887, 887, 887, 814, 816, 887, 816, 1084 887, 887, 887, 816, 818, 887, 818, 887, 887, 887, 1085 818, 820, 887, 820, 887, 887, 887, 820, 822, 887, 1086 822, 887, 887, 887, 822, 616, 887, 616, 887, 887, 1087 887, 616, 841, 887, 841, 887, 887, 887, 841, 677, 1088 887, 677, 887, 887, 887, 677, 681, 887, 681, 887, 1089 887, 887, 681, 86, 887, 86, 887, 887, 887, 86, 1090 1091 846, 887, 846, 887, 887, 887, 846, 140, 887, 140, 1092 887, 887, 887, 140, 204, 887, 204, 887, 887, 887, 1093 204, 11, 887, 887, 887, 887, 887, 887, 887, 887, 1091 1094 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1092 1095 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, … … 1096 1099 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1097 1100 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1098 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1099 887, 887 1101 1102 887, 887, 887, 887, 887, 887, 887 1100 1103 } ; 1101 1104 1102 static yyconst flex_int16_t yy_chk[2 883] =1105 static yyconst flex_int16_t yy_chk[2908] = 1103 1106 { 0, 1104 1107 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, … … 1110 1113 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1111 1114 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1112 1, 1, 1, 1, 2, 16, 24, 16, 24, 2,1113 19, 19, 2, 5, 5, 5, 5, 5, 5, 5,1115 1, 1, 1, 1, 1, 2, 16, 24, 16, 24, 1116 2, 19, 19, 2, 5, 5, 5, 5, 5, 5, 1114 1117 1115 1118 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, … … 1120 1123 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1121 1124 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1122 5, 5, 5, 5, 5, 5, 5, 7, 8, 9, 1123 10, 37, 37, 20, 39, 9, 10, 886, 7, 8, 1124 13, 13, 13, 13, 13, 13, 15, 15, 15, 15, 1125 1126 15, 15, 20, 25, 39, 42, 53, 28, 27, 28, 1127 28, 28, 28, 28, 28, 109, 115, 25, 29, 25, 1128 27, 27, 27, 29, 53, 35, 7, 8, 9, 10, 1129 40, 42, 48, 29, 30, 40, 30, 30, 30, 30, 1130 30, 30, 35, 62, 35, 35, 44, 302, 44, 109, 1131 115, 885, 48, 30, 302, 62, 30, 57, 47, 45, 1132 45, 45, 30, 30, 45, 45, 57, 45, 30, 55, 1133 45, 45, 49, 40, 30, 45, 40, 49, 45, 47, 1134 30, 47, 56, 64, 49, 164, 51, 55, 30, 73, 1135 49, 30, 31, 55, 31, 31, 31, 31, 31, 31, 1136 1137 50, 51, 164, 51, 56, 154, 54, 59, 877, 50, 1138 61, 31, 51, 50, 31, 73, 54, 58, 50, 59, 1139 31, 154, 50, 54, 87, 159, 31, 59, 61, 58, 1140 58, 60, 31, 64, 59, 126, 60, 126, 31, 58, 1141 52, 159, 58, 68, 68, 52, 31, 38, 68, 60, 1142 87, 38, 38, 52, 38, 52, 38, 38, 52, 38, 1143 108, 38, 52, 114, 68, 68, 68, 68, 68, 68, 1144 38, 38, 38, 127, 60, 127, 153, 60, 67, 67, 1145 67, 67, 67, 67, 108, 153, 67, 114, 876, 873, 1146 38, 60, 166, 38, 80, 80, 80, 80, 80, 80, 1147 1148 82, 82, 82, 82, 82, 82, 83, 83, 83, 83, 1149 83, 83, 129, 166, 129, 104, 104, 104, 104, 107, 1150 38, 38, 77, 77, 872, 107, 113, 77, 169, 77, 1151 111, 132, 113, 132, 77, 103, 103, 103, 103, 103, 1152 103, 131, 104, 77, 77, 77, 77, 104, 111, 169, 1153 110, 107, 130, 131, 77, 131, 111, 105, 113, 105, 1154 105, 105, 105, 105, 105, 151, 130, 103, 130, 77, 1155 104, 134, 77, 134, 281, 116, 105, 77, 77, 110, 1156 142, 77, 77, 151, 110, 133, 133, 152, 133, 77, 1157 281, 105, 77, 116, 77, 77, 77, 105, 77, 85, 1158 1159 137, 116, 137, 85, 85, 152, 142, 110, 85, 85, 1160 106, 85, 106, 85, 155, 106, 106, 106, 106, 106, 1161 106, 150, 85, 85, 85, 135, 135, 135, 139, 145, 1162 139, 156, 155, 160, 145, 161, 150, 157, 162, 167, 1163 165, 168, 85, 150, 161, 85, 163, 106, 171, 157, 1164 165, 163, 172, 156, 173, 160, 181, 176, 170, 162, 1165 162, 181, 167, 170, 163, 174, 175, 172, 168, 182, 1166 171, 173, 145, 85, 99, 99, 99, 99, 99, 99, 1167 177, 170, 179, 174, 176, 184, 175, 183, 180, 185, 1168 99, 99, 525, 99, 99, 525, 182, 179, 183, 218, 1169 1170 185, 218, 177, 184, 179, 180, 99, 191, 183, 183, 1171 186, 99, 99, 99, 158, 186, 99, 185, 99, 158, 1172 158, 158, 188, 158, 158, 190, 187, 158, 189, 158, 1173 186, 205, 193, 189, 158, 158, 158, 627, 158, 187, 1174 627, 192, 188, 194, 190, 193, 219, 193, 219, 220, 1175 191, 220, 248, 191, 192, 189, 194, 205, 223, 225, 1176 223, 225, 192, 197, 197, 197, 197, 197, 197, 198, 1177 198, 197, 209, 209, 198, 200, 200, 209, 248, 870, 1178 200, 202, 202, 308, 224, 224, 202, 224, 202, 308, 1179 198, 198, 198, 198, 198, 198, 200, 200, 200, 200, 1180 1181 200, 200, 202, 202, 202, 202, 202, 202, 212, 212, 1182 212, 212, 221, 222, 226, 226, 226, 228, 229, 228, 1183 229, 234, 243, 237, 338, 222, 221, 222, 221, 235, 1184 278, 235, 256, 279, 235, 235, 235, 235, 235, 235, 1185 212, 236, 270, 278, 234, 236, 237, 280, 291, 241, 1186 241, 279, 241, 241, 284, 266, 243, 266, 256, 267, 1187 869, 267, 236, 291, 236, 280, 235, 338, 270, 236, 1188 241, 241, 241, 282, 284, 241, 289, 241, 244, 244, 1189 244, 244, 244, 244, 245, 245, 245, 245, 245, 245, 1190 282, 247, 286, 247, 289, 244, 247, 247, 247, 247, 1191 1192 247, 247, 255, 255, 255, 255, 255, 255, 283, 285, 1193 244, 295, 286, 283, 285, 288, 244, 246, 246, 246, 1194 246, 246, 246, 253, 295, 292, 260, 260, 260, 260, 1195 260, 260, 862, 246, 255, 296, 246, 246, 288, 293, 1196 290, 292, 292, 294, 293, 253, 297, 253, 300, 246, 1197 287, 253, 294, 300, 246, 303, 246, 253, 260, 246, 1198 299, 246, 296, 304, 297, 287, 290, 301, 305, 253, 1199 312, 287, 287, 253, 306, 303, 301, 253, 299, 306, 1200 307, 304, 309, 310, 314, 307, 312, 311, 313, 305, 1201 305, 315, 310, 311, 318, 316, 315, 313, 317, 314, 1202 1203 316, 309, 320, 317, 319, 322, 323, 324, 326, 327, 1204 325, 328, 329, 318, 331, 320, 322, 332, 330, 333, 1205 317, 323, 319, 325, 334, 335, 324, 330, 337, 329, 1206 326, 328, 327, 339, 340, 341, 331, 337, 335, 342, 1207 332, 333, 334, 341, 342, 343, 345, 340, 344, 344, 1208 861, 339, 345, 344, 385, 344, 352, 352, 352, 352, 1209 343, 353, 353, 353, 353, 362, 363, 362, 363, 370, 1210 370, 370, 370, 370, 370, 372, 380, 372, 385, 860, 1211 372, 372, 372, 372, 372, 372, 380, 402, 352, 371, 1212 371, 371, 371, 371, 371, 374, 374, 374, 374, 374, 1213 1214 374, 404, 380, 402, 387, 371, 381, 401, 371, 371, 1215 375, 375, 375, 375, 375, 375, 381, 383, 401, 382, 1216 404, 371, 387, 383, 408, 432, 371, 374, 371, 403, 1217 387, 371, 381, 371, 376, 376, 376, 376, 376, 376, 1218 386, 382, 375, 382, 403, 405, 408, 382, 432, 383, 1219 384, 859, 384, 382, 405, 384, 384, 384, 384, 384, 1220 384, 406, 386, 412, 386, 382, 376, 407, 386, 382, 1221 409, 410, 406, 382, 386, 411, 407, 415, 416, 409, 1222 413, 414, 420, 417, 410, 412, 386, 384, 417, 418, 1223 386, 411, 423, 413, 386, 419, 416, 414, 414, 415, 1224 1225 422, 419, 421, 420, 418, 427, 425, 423, 429, 430, 1226 431, 418, 433, 421, 439, 434, 435, 427, 433, 422, 1227 425, 437, 440, 431, 441, 435, 442, 443, 445, 429, 1228 434, 430, 444, 447, 439, 449, 437, 445, 450, 441, 1229 451, 456, 443, 452, 440, 453, 454, 450, 442, 457, 1230 447, 455, 444, 460, 461, 463, 494, 458, 449, 456, 1231 455, 451, 457, 452, 458, 453, 459, 462, 454, 464, 1232 466, 468, 463, 459, 467, 462, 461, 468, 460, 495, 1233 464, 491, 494, 467, 521, 462, 477, 477, 477, 477, 1234 636, 491, 466, 488, 488, 488, 488, 488, 488, 490, 1235 1236 490, 490, 490, 490, 490, 495, 521, 491, 493, 488, 1237 515, 518, 488, 488, 492, 516, 492, 636, 493, 492, 1238 492, 492, 492, 492, 492, 488, 518, 515, 516, 519, 1239 488, 490, 488, 520, 493, 488, 524, 488, 497, 497, 1240 497, 497, 497, 497, 529, 522, 520, 524, 527, 519, 1241 526, 492, 498, 498, 498, 498, 498, 498, 522, 523, 1242 530, 533, 531, 527, 523, 529, 528, 531, 498, 530, 1243 526, 498, 498, 499, 533, 499, 532, 534, 499, 499, 1244 499, 499, 499, 499, 498, 528, 535, 532, 536, 498, 1245 537, 498, 538, 539, 498, 535, 498, 541, 539, 542, 1246 1247 544, 538, 547, 541, 545, 534, 546, 537, 542, 549, 1248 536, 547, 550, 551, 557, 552, 554, 544, 549, 545, 1249 560, 546, 555, 557, 558, 551, 561, 555, 562, 550, 1250 552, 554, 564, 558, 565, 567, 566, 568, 572, 561, 1251 564, 569, 560, 566, 565, 562, 571, 569, 572, 568, 1252 574, 575, 601, 621, 603, 571, 620, 567, 594, 594, 1253 594, 594, 594, 594, 575, 620, 621, 574, 595, 595, 1254 595, 595, 595, 595, 597, 601, 597, 603, 639, 597, 1255 597, 597, 597, 597, 597, 602, 622, 639, 855, 602, 1256 594, 596, 596, 596, 596, 596, 596, 600, 600, 600, 1257 1258 600, 600, 600, 622, 618, 619, 602, 596, 602, 618, 1259 596, 596, 619, 602, 623, 626, 629, 624, 625, 631, 1260 633, 628, 618, 596, 624, 630, 625, 632, 596, 600, 1261 596, 635, 626, 596, 628, 596, 634, 623, 629, 634, 1262 630, 631, 633, 637, 632, 638, 640, 641, 635, 644, 1263 642, 645, 646, 651, 650, 657, 668, 656, 637, 642, 1264 653, 646, 657, 851, 640, 638, 656, 664, 665, 641, 1265 667, 668, 644, 645, 650, 699, 664, 653, 665, 667, 1266 651, 686, 686, 686, 686, 686, 686, 690, 690, 690, 1267 690, 690, 690, 700, 704, 702, 699, 686, 703, 704, 1268 1269 686, 686, 705, 700, 706, 703, 707, 706, 708, 707, 1270 710, 711, 713, 686, 714, 713, 710, 715, 686, 690, 1271 686, 702, 705, 686, 711, 686, 708, 712, 716, 717, 1272 718, 716, 721, 720, 719, 714, 712, 719, 717, 722, 1273 721, 723, 724, 725, 728, 715, 720, 732, 731, 722, 1274 733, 735, 725, 736, 723, 718, 756, 761, 754, 735, 1275 758, 756, 736, 724, 755, 757, 759, 728, 731, 732, 1276 758, 733, 743, 743, 743, 743, 743, 743, 754, 760, 1277 757, 755, 762, 761, 763, 762, 764, 766, 768, 759, 1278 766, 768, 769, 772, 773, 770, 760, 763, 770, 769, 1279 1280 771, 778, 793, 771, 743, 795, 797, 796, 772, 797, 1281 798, 799, 800, 764, 799, 800, 802, 773, 803, 804, 1282 806, 810, 804, 811, 778, 796, 795, 807, 808, 793, 1283 807, 808, 798, 826, 802, 809, 832, 810, 827, 811, 1284 830, 829, 806, 803, 809, 827, 828, 848, 831, 828, 1285 829, 831, 835, 832, 826, 835, 838, 839, 830, 838, 1286 840, 849, 850, 853, 830, 852, 839, 850, 852, 840, 1287 849, 854, 856, 853, 857, 856, 854, 857, 858, 863, 1288 864, 858, 865, 866, 867, 865, 868, 867, 871, 868, 1289 874, 875, 878, 866, 879, 864, 880, 882, 881, 863, 1290 1291 883, 878, 884, 847, 846, 845, 875, 879, 844, 843, 1292 871, 874, 884, 842, 841, 882, 837, 836, 880, 881, 1293 834, 833, 883, 888, 888, 888, 888, 888, 888, 888, 1294 888, 888, 888, 888, 888, 888, 889, 889, 889, 889, 1295 889, 889, 889, 889, 889, 889, 889, 889, 889, 890, 1296 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 1297 890, 890, 891, 825, 824, 891, 823, 891, 891, 891, 1298 891, 891, 892, 822, 821, 820, 892, 892, 892, 892, 1299 892, 892, 893, 893, 893, 893, 893, 893, 893, 893, 1300 893, 893, 893, 893, 893, 894, 819, 818, 894, 817, 1301 1302 894, 894, 894, 894, 894, 895, 816, 895, 895, 815, 1303 895, 895, 895, 895, 895, 895, 814, 895, 896, 813, 1304 812, 896, 896, 896, 896, 896, 896, 896, 896, 805, 1305 896, 897, 897, 897, 897, 897, 897, 897, 897, 897, 1306 897, 897, 897, 897, 898, 898, 801, 898, 794, 792, 1307 791, 898, 899, 790, 789, 899, 788, 899, 899, 899, 1308 899, 899, 900, 787, 900, 786, 785, 784, 900, 901, 1309 783, 901, 782, 781, 780, 901, 902, 779, 902, 777, 1310 776, 775, 902, 903, 774, 903, 767, 765, 753, 903, 1311 904, 752, 904, 751, 750, 749, 904, 905, 748, 905, 1312 1313 747, 746, 745, 905, 906, 742, 906, 741, 740, 734, 1314 906, 907, 730, 907, 729, 727, 726, 907, 908, 709, 1315 908, 701, 698, 693, 908, 909, 909, 909, 909, 909, 1316 909, 909, 909, 909, 909, 909, 909, 909, 910, 691, 1317 910, 911, 911, 687, 911, 911, 911, 677, 911, 912, 1318 912, 673, 912, 913, 671, 913, 669, 666, 663, 913, 1319 914, 662, 914, 661, 660, 659, 914, 915, 658, 915, 1320 655, 654, 652, 915, 916, 649, 916, 917, 648, 917, 1321 647, 643, 616, 917, 918, 612, 918, 919, 610, 608, 1322 919, 606, 919, 919, 919, 919, 919, 920, 920, 920, 1323 1324 920, 920, 920, 920, 920, 920, 920, 920, 920, 920, 1325 921, 921, 921, 921, 921, 921, 921, 921, 921, 921, 1326 921, 921, 921, 922, 604, 922, 598, 592, 590, 922, 1327 923, 588, 923, 586, 584, 582, 923, 924, 580, 924, 1328 578, 577, 576, 924, 925, 573, 925, 926, 570, 926, 1329 563, 559, 556, 926, 927, 553, 927, 928, 548, 928, 1330 543, 540, 517, 928, 929, 513, 929, 930, 511, 930, 1331 509, 507, 505, 930, 931, 503, 931, 932, 502, 932, 1332 501, 500, 489, 932, 933, 486, 933, 934, 484, 934, 1333 483, 482, 480, 934, 935, 478, 935, 936, 475, 936, 1334 1335 473, 471, 469, 936, 937, 465, 937, 938, 448, 938, 1336 446, 938, 438, 938, 939, 436, 939, 428, 939, 426, 1337 939, 940, 940, 424, 940, 940, 940, 398, 940, 941, 1338 396, 941, 394, 392, 391, 941, 942, 390, 942, 377, 1339 367, 365, 942, 943, 364, 943, 360, 358, 356, 943, 1340 944, 354, 944, 945, 350, 945, 348, 347, 346, 945, 1341 946, 336, 946, 947, 321, 947, 298, 277, 275, 947, 1342 948, 273, 948, 949, 272, 949, 271, 269, 268, 949, 1343 950, 263, 950, 951, 259, 258, 951, 254, 951, 951, 1344 951, 951, 951, 952, 952, 952, 952, 952, 952, 952, 1345 1346 952, 952, 952, 952, 952, 952, 953, 251, 953, 250, 1347 239, 238, 953, 954, 231, 954, 955, 230, 955, 227, 1348 217, 215, 955, 956, 214, 956, 957, 213, 957, 207, 1349 206, 204, 957, 958, 199, 958, 959, 178, 959, 149, 1350 147, 146, 959, 960, 140, 960, 961, 138, 961, 136, 1351 128, 125, 961, 962, 124, 962, 963, 120, 963, 101, 1352 98, 95, 963, 964, 93, 964, 965, 86, 965, 72, 1353 70, 66, 965, 966, 36, 966, 33, 18, 11, 966, 1354 967, 4, 967, 968, 3, 968, 0, 0, 0, 968, 1355 969, 0, 969, 970, 0, 970, 0, 970, 0, 970, 1356 1357 971, 0, 971, 0, 0, 0, 971, 972, 0, 972, 1358 0, 0, 0, 972, 973, 0, 973, 974, 0, 974, 1359 0, 0, 0, 974, 975, 0, 975, 976, 0, 976, 1360 0, 0, 0, 976, 977, 0, 977, 978, 0, 978, 1361 0, 0, 0, 978, 979, 0, 979, 980, 0, 980, 1362 0, 0, 0, 980, 981, 0, 981, 982, 0, 982, 1363 0, 0, 0, 982, 983, 0, 983, 984, 0, 0, 1364 984, 0, 984, 984, 984, 984, 984, 985, 985, 985, 1365 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 1366 986, 0, 986, 0, 0, 0, 986, 987, 0, 987, 1367 1368 988, 0, 988, 0, 0, 0, 988, 989, 0, 989, 1369 990, 0, 990, 0, 0, 0, 990, 991, 0, 991, 1370 992, 0, 992, 0, 0, 0, 992, 993, 0, 993, 1371 994, 0, 994, 0, 0, 0, 994, 995, 0, 995, 1372 996, 0, 996, 0, 0, 0, 996, 997, 0, 997, 1373 998, 0, 998, 0, 0, 0, 998, 999, 0, 999, 1374 1000, 0, 1000, 0, 0, 0, 1000, 1001, 0, 1001, 1375 1002, 0, 1002, 0, 0, 0, 1002, 1003, 0, 1003, 1376 0, 0, 0, 1003, 1004, 0, 1004, 1005, 0, 1005, 1377 0, 0, 0, 1005, 1006, 0, 1006, 1007, 0, 1007, 1378 1379 0, 0, 0, 1007, 1008, 0, 1008, 1009, 0, 1009, 1380 0, 0, 0, 1009, 1010, 0, 1010, 1011, 0, 1011, 1381 1012, 0, 1012, 1013, 0, 0, 1013, 0, 1013, 1013, 1382 1013, 1013, 1013, 1014, 0, 1014, 1015, 1015, 1015, 1015, 1383 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1016, 1384 0, 1016, 0, 0, 0, 1016, 1017, 0, 1017, 1018, 1385 0, 1018, 0, 0, 0, 1018, 1019, 0, 1019, 1020, 1386 0, 1020, 1021, 0, 1021, 1022, 0, 0, 1022, 0, 1387 1022, 1022, 1022, 1022, 1022, 1023, 0, 1023, 1024, 0, 1388 1024, 1025, 0, 1025, 1026, 0, 1026, 1027, 0, 1027, 1389 1390 1028, 0, 1028, 1029, 0, 1029, 1030, 0, 1030, 0, 1391 0, 0, 1030, 1031, 0, 1031, 1032, 0, 1032, 0, 1392 0, 0, 1032, 1033, 0, 1033, 1034, 0, 1034, 1035, 1393 0, 1035, 1036, 0, 1036, 1037, 0, 1037, 0, 0, 1394 0, 1037, 1038, 0, 0, 1038, 0, 1038, 1038, 1038, 1395 1038, 1038, 1039, 0, 1039, 1040, 0, 1040, 1041, 0, 1396 1041, 1042, 0, 1042, 0, 0, 0, 1042, 1043, 0, 1397 1043, 0, 0, 0, 1043, 1044, 0, 1044, 0, 0, 1398 0, 1044, 1045, 0, 1045, 1046, 0, 1046, 0, 0, 1399 0, 1046, 1047, 0, 1047, 0, 0, 0, 1047, 1048, 1400 1401 0, 1048, 0, 0, 0, 1048, 1049, 0, 1049, 0, 1402 0, 0, 1049, 1050, 0, 1050, 0, 0, 0, 1050, 1403 1051, 0, 1051, 0, 0, 0, 1051, 1052, 0, 1052, 1404 0, 0, 0, 1052, 1053, 0, 1053, 0, 0, 0, 1405 1053, 1054, 0, 1054, 0, 0, 0, 1054, 1055, 0, 1406 1055, 0, 0, 0, 1055, 1056, 0, 1056, 0, 0, 1407 0, 1056, 1057, 0, 1057, 0, 0, 0, 1057, 1058, 1408 0, 1058, 0, 0, 0, 1058, 1059, 0, 1059, 0, 1409 0, 0, 1059, 1060, 0, 1060, 0, 0, 0, 1060, 1410 1061, 0, 1061, 0, 0, 0, 1061, 887, 887, 887, 1411 1125 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 1126 8, 9, 10, 37, 37, 20, 39, 9, 10, 886, 1127 7, 8, 13, 13, 13, 13, 13, 13, 15, 15, 1128 1129 15, 15, 15, 15, 20, 25, 48, 39, 42, 28, 1130 27, 28, 28, 28, 28, 28, 28, 109, 115, 25, 1131 29, 25, 27, 27, 27, 29, 48, 35, 40, 7, 1132 8, 9, 10, 40, 42, 29, 30, 47, 30, 30, 1133 30, 30, 30, 30, 35, 57, 35, 35, 44, 126, 1134 44, 126, 109, 115, 57, 30, 64, 56, 47, 30, 1135 47, 45, 45, 45, 49, 30, 30, 45, 45, 49, 1136 45, 30, 40, 45, 45, 40, 49, 30, 45, 56, 1137 62, 45, 49, 30, 73, 885, 127, 53, 127, 51, 1138 61, 30, 62, 55, 30, 31, 108, 31, 31, 31, 1139 1140 31, 31, 31, 50, 51, 53, 51, 64, 61, 54, 1141 73, 55, 50, 87, 31, 51, 50, 55, 31, 54, 1142 108, 50, 52, 114, 31, 50, 54, 52, 175, 129, 1143 31, 129, 107, 154, 151, 52, 31, 52, 107, 87, 1144 52, 60, 31, 132, 52, 132, 60, 114, 175, 154, 1145 31, 38, 151, 385, 111, 38, 38, 58, 38, 60, 1146 38, 38, 113, 38, 107, 38, 59, 130, 113, 58, 1147 58, 116, 111, 164, 38, 38, 38, 385, 59, 58, 1148 111, 130, 58, 130, 142, 60, 59, 131, 60, 116, 1149 164, 68, 68, 59, 113, 38, 68, 116, 38, 131, 1150 1151 110, 131, 60, 67, 67, 67, 67, 67, 67, 877, 1152 142, 67, 68, 68, 68, 68, 68, 68, 80, 80, 1153 80, 80, 80, 80, 153, 38, 38, 77, 77, 134, 1154 110, 134, 77, 153, 77, 110, 135, 135, 135, 77, 1155 82, 82, 82, 82, 82, 82, 876, 243, 77, 77, 1156 77, 77, 83, 83, 83, 83, 83, 83, 110, 77, 1157 103, 103, 103, 103, 103, 103, 104, 104, 104, 104, 1158 133, 133, 137, 133, 137, 77, 145, 139, 77, 139, 1159 157, 145, 243, 77, 77, 152, 156, 77, 77, 155, 1160 166, 150, 157, 103, 104, 77, 159, 168, 77, 104, 1161 1162 77, 77, 77, 152, 77, 85, 150, 155, 156, 85, 1163 85, 166, 159, 150, 85, 85, 161, 85, 160, 85, 1164 145, 162, 104, 167, 168, 161, 169, 163, 85, 85, 1165 85, 105, 163, 105, 105, 105, 105, 105, 105, 873, 1166 160, 171, 162, 162, 165, 163, 167, 169, 173, 85, 1167 105, 106, 85, 106, 165, 172, 106, 106, 106, 106, 1168 106, 106, 180, 171, 170, 173, 105, 176, 177, 170, 1169 172, 181, 105, 174, 184, 187, 181, 182, 179, 180, 1170 85, 99, 99, 99, 99, 99, 99, 170, 187, 106, 1171 177, 174, 184, 179, 176, 183, 190, 99, 99, 99, 1172 1173 179, 99, 99, 189, 182, 186, 183, 191, 189, 218, 1174 186, 218, 185, 188, 99, 190, 183, 183, 284, 99, 1175 99, 99, 158, 185, 99, 186, 99, 158, 158, 158, 1176 189, 158, 158, 188, 192, 158, 194, 158, 284, 219, 1177 185, 219, 158, 158, 158, 193, 158, 192, 220, 194, 1178 220, 191, 198, 198, 191, 192, 205, 198, 193, 872, 1179 193, 197, 197, 197, 197, 197, 197, 200, 200, 197, 1180 248, 221, 200, 198, 198, 198, 198, 198, 198, 202, 1181 202, 223, 205, 223, 202, 221, 202, 221, 200, 200, 1182 200, 200, 200, 200, 209, 209, 248, 338, 222, 209, 1183 1184 202, 202, 202, 202, 202, 202, 212, 212, 212, 212, 1185 222, 309, 222, 224, 224, 225, 224, 225, 226, 226, 1186 226, 228, 229, 228, 229, 234, 234, 235, 236, 235, 1187 309, 279, 235, 235, 235, 235, 235, 235, 237, 212, 1188 237, 338, 266, 237, 266, 267, 278, 267, 234, 279, 1189 283, 236, 241, 241, 241, 283, 241, 241, 256, 278, 1190 237, 281, 237, 282, 280, 235, 270, 237, 244, 244, 1191 244, 244, 244, 244, 241, 241, 241, 281, 285, 241, 1192 282, 241, 280, 285, 256, 244, 245, 245, 245, 245, 1193 245, 245, 270, 288, 293, 286, 294, 300, 306, 293, 1194 1195 308, 244, 300, 306, 870, 294, 308, 244, 246, 246, 1196 246, 246, 246, 246, 253, 286, 288, 255, 255, 255, 1197 255, 255, 255, 287, 246, 247, 246, 247, 246, 246, 1198 247, 247, 247, 247, 247, 247, 290, 253, 287, 253, 1199 869, 246, 289, 253, 287, 287, 246, 292, 246, 253, 1200 255, 246, 291, 246, 260, 260, 260, 260, 260, 260, 1201 289, 253, 290, 292, 292, 253, 295, 291, 296, 253, 1202 297, 299, 301, 302, 303, 304, 305, 307, 311, 295, 1203 302, 301, 307, 310, 311, 312, 319, 260, 297, 299, 1204 313, 314, 310, 304, 303, 296, 318, 305, 305, 313, 1205 1206 315, 312, 316, 317, 319, 315, 314, 316, 317, 320, 1207 322, 323, 324, 326, 325, 318, 327, 328, 331, 329, 1208 330, 322, 320, 332, 334, 317, 323, 325, 333, 330, 1209 335, 324, 337, 339, 340, 326, 329, 328, 401, 327, 1210 331, 337, 334, 335, 341, 343, 332, 340, 342, 401, 1211 333, 339, 341, 342, 344, 344, 345, 460, 862, 344, 1212 343, 344, 345, 352, 352, 352, 352, 353, 353, 353, 1213 353, 362, 363, 362, 363, 370, 370, 370, 370, 370, 1214 370, 372, 460, 372, 380, 381, 372, 372, 372, 372, 1215 372, 372, 861, 402, 380, 381, 352, 371, 371, 371, 1216 1217 371, 371, 371, 374, 374, 374, 374, 374, 374, 402, 1218 380, 381, 403, 371, 404, 371, 860, 371, 371, 375, 1219 375, 375, 375, 375, 375, 383, 382, 403, 406, 405, 1220 371, 383, 407, 404, 408, 371, 374, 371, 405, 406, 1221 371, 407, 371, 376, 376, 376, 376, 376, 376, 382, 1222 412, 382, 375, 387, 411, 382, 408, 383, 384, 386, 1223 384, 382, 410, 384, 384, 384, 384, 384, 384, 409, 1224 411, 387, 412, 382, 413, 410, 376, 382, 409, 387, 1225 415, 382, 386, 414, 386, 416, 417, 413, 386, 418, 1226 421, 417, 419, 422, 386, 420, 384, 427, 419, 414, 1227 1228 414, 421, 415, 416, 418, 423, 386, 425, 429, 427, 1229 386, 418, 422, 430, 386, 431, 420, 432, 433, 434, 1230 423, 425, 435, 437, 433, 439, 440, 441, 431, 429, 1231 442, 435, 443, 444, 434, 430, 449, 445, 437, 447, 1232 432, 450, 441, 451, 454, 439, 445, 443, 440, 452, 1233 450, 453, 442, 444, 455, 456, 447, 457, 458, 449, 1234 459, 461, 463, 455, 451, 458, 454, 459, 462, 452, 1235 457, 453, 466, 456, 464, 467, 462, 525, 859, 463, 1236 525, 468, 491, 461, 467, 464, 462, 468, 477, 477, 1237 477, 477, 491, 515, 466, 488, 488, 488, 488, 488, 1238 1239 488, 490, 490, 490, 490, 490, 490, 519, 491, 521, 1240 515, 488, 492, 488, 492, 488, 488, 492, 492, 492, 1241 492, 492, 492, 494, 516, 495, 493, 519, 488, 855, 1242 851, 521, 518, 488, 490, 488, 493, 516, 488, 529, 1243 488, 497, 497, 497, 497, 497, 497, 518, 520, 494, 1244 492, 495, 493, 498, 498, 498, 498, 498, 498, 523, 1245 529, 520, 526, 848, 523, 847, 528, 846, 522, 498, 1246 499, 498, 499, 498, 498, 499, 499, 499, 499, 499, 1247 499, 522, 526, 524, 527, 528, 498, 531, 530, 532, 1248 533, 498, 531, 498, 524, 534, 498, 530, 498, 527, 1249 1250 532, 535, 537, 533, 536, 538, 539, 541, 542, 547, 1251 535, 539, 544, 541, 538, 545, 546, 542, 547, 537, 1252 550, 551, 845, 549, 534, 552, 536, 554, 560, 544, 1253 545, 546, 549, 551, 555, 557, 558, 550, 561, 555, 1254 552, 562, 554, 565, 557, 558, 564, 567, 566, 568, 1255 560, 561, 575, 565, 564, 566, 569, 571, 562, 574, 1256 572, 568, 569, 620, 619, 575, 571, 601, 601, 567, 1257 572, 619, 620, 844, 843, 622, 574, 594, 594, 594, 1258 594, 594, 594, 595, 595, 595, 595, 595, 595, 597, 1259 601, 597, 622, 621, 597, 597, 597, 597, 597, 597, 1260 1261 600, 600, 600, 600, 600, 600, 621, 602, 626, 842, 1262 594, 596, 596, 596, 596, 596, 596, 603, 618, 603, 1263 623, 624, 603, 618, 628, 626, 625, 596, 624, 596, 1264 602, 596, 596, 600, 625, 627, 618, 628, 627, 603, 1265 629, 603, 630, 623, 596, 631, 603, 632, 633, 596, 1266 634, 596, 635, 634, 596, 636, 596, 630, 637, 638, 1267 640, 644, 629, 639, 632, 641, 642, 631, 645, 635, 1268 633, 646, 639, 637, 650, 642, 651, 656, 640, 638, 1269 646, 653, 657, 636, 644, 665, 656, 641, 664, 657, 1270 645, 667, 668, 841, 650, 665, 700, 664, 653, 699, 1271 1272 667, 702, 705, 651, 714, 837, 700, 668, 686, 686, 1273 686, 686, 686, 686, 690, 690, 690, 690, 690, 690, 1274 699, 708, 705, 703, 686, 714, 686, 702, 686, 686, 1275 703, 704, 706, 715, 707, 706, 704, 707, 710, 708, 1276 712, 686, 711, 717, 710, 718, 686, 690, 686, 712, 1277 720, 686, 717, 686, 713, 711, 716, 713, 719, 716, 1278 721, 719, 715, 720, 722, 723, 724, 725, 721, 728, 1279 731, 718, 732, 735, 722, 733, 725, 736, 723, 756, 1280 757, 735, 836, 754, 756, 759, 736, 724, 755, 760, 1281 731, 761, 728, 764, 732, 757, 733, 743, 743, 743, 1282 1283 743, 743, 743, 754, 758, 755, 760, 762, 759, 763, 1284 762, 769, 766, 768, 758, 766, 768, 761, 769, 772, 1285 770, 764, 763, 770, 771, 773, 778, 771, 793, 795, 1286 743, 798, 797, 796, 772, 797, 799, 800, 802, 799, 1287 800, 803, 804, 806, 807, 804, 810, 807, 773, 778, 1288 795, 796, 809, 798, 808, 793, 802, 808, 811, 826, 1289 830, 809, 810, 827, 829, 806, 828, 803, 831, 828, 1290 827, 831, 832, 829, 811, 834, 835, 839, 830, 835, 1291 826, 840, 838, 849, 830, 838, 839, 853, 850, 832, 1292 840, 852, 849, 850, 852, 854, 856, 853, 857, 856, 1293 1294 854, 857, 858, 863, 864, 858, 865, 866, 867, 865, 1295 868, 867, 871, 868, 874, 875, 878, 866, 879, 864, 1296 880, 882, 881, 863, 883, 878, 884, 833, 825, 824, 1297 875, 879, 823, 822, 871, 874, 884, 821, 820, 882, 1298 819, 818, 880, 881, 817, 816, 883, 888, 888, 888, 1299 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 1300 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 1301 889, 889, 889, 890, 890, 890, 890, 890, 890, 890, 1302 890, 890, 890, 890, 890, 890, 891, 815, 814, 891, 1303 813, 891, 891, 891, 891, 891, 892, 812, 805, 801, 1304 1305 892, 892, 892, 892, 892, 892, 893, 893, 893, 893, 1306 893, 893, 893, 893, 893, 893, 893, 893, 893, 894, 1307 794, 792, 894, 791, 894, 894, 894, 894, 894, 895, 1308 790, 895, 895, 789, 895, 895, 895, 895, 895, 895, 1309 788, 895, 896, 787, 786, 896, 896, 896, 896, 896, 1310 896, 896, 896, 785, 896, 897, 897, 897, 897, 897, 1311 897, 897, 897, 897, 897, 897, 897, 897, 898, 898, 1312 784, 898, 783, 782, 781, 898, 899, 780, 779, 899, 1313 777, 899, 899, 899, 899, 899, 900, 776, 900, 775, 1314 774, 767, 900, 901, 765, 901, 753, 752, 751, 901, 1315 1316 902, 750, 902, 749, 748, 747, 902, 903, 746, 903, 1317 745, 742, 741, 903, 904, 740, 904, 734, 730, 729, 1318 904, 905, 727, 905, 726, 709, 701, 905, 906, 698, 1319 906, 693, 691, 687, 906, 907, 677, 907, 673, 671, 1320 669, 907, 908, 666, 908, 663, 662, 661, 908, 909, 1321 909, 909, 909, 909, 909, 909, 909, 909, 909, 909, 1322 909, 909, 910, 660, 910, 911, 911, 659, 911, 911, 1323 911, 658, 911, 912, 912, 655, 912, 913, 654, 913, 1324 652, 649, 648, 913, 914, 647, 914, 643, 616, 612, 1325 914, 915, 610, 915, 608, 606, 604, 915, 916, 598, 1326 1327 916, 917, 592, 917, 590, 588, 586, 917, 918, 584, 1328 918, 919, 582, 580, 919, 578, 919, 919, 919, 919, 1329 919, 920, 920, 920, 920, 920, 920, 920, 920, 920, 1330 920, 920, 920, 920, 921, 921, 921, 921, 921, 921, 1331 921, 921, 921, 921, 921, 921, 921, 922, 577, 922, 1332 576, 573, 570, 922, 923, 563, 923, 559, 556, 553, 1333 923, 924, 548, 924, 543, 540, 517, 924, 925, 513, 1334 925, 926, 511, 926, 509, 507, 505, 926, 927, 503, 1335 927, 928, 502, 928, 501, 500, 489, 928, 929, 486, 1336 929, 930, 484, 930, 483, 482, 480, 930, 931, 478, 1337 1338 931, 932, 475, 932, 473, 471, 469, 932, 933, 465, 1339 933, 934, 448, 934, 446, 438, 436, 934, 935, 428, 1340 935, 936, 426, 936, 424, 398, 396, 936, 937, 394, 1341 937, 938, 392, 938, 391, 938, 390, 938, 939, 377, 1342 939, 367, 939, 365, 939, 940, 940, 364, 940, 940, 1343 940, 360, 940, 941, 358, 941, 356, 354, 350, 941, 1344 942, 348, 942, 347, 346, 336, 942, 943, 321, 943, 1345 298, 277, 275, 943, 944, 273, 944, 945, 272, 945, 1346 271, 269, 268, 945, 946, 263, 946, 947, 259, 947, 1347 258, 254, 251, 947, 948, 250, 948, 949, 239, 949, 1348 1349 238, 231, 230, 949, 950, 227, 950, 951, 217, 215, 1350 951, 214, 951, 951, 951, 951, 951, 952, 952, 952, 1351 952, 952, 952, 952, 952, 952, 952, 952, 952, 952, 1352 953, 213, 953, 207, 206, 204, 953, 954, 199, 954, 1353 955, 178, 955, 149, 147, 146, 955, 956, 140, 956, 1354 957, 138, 957, 136, 128, 125, 957, 958, 124, 958, 1355 959, 120, 959, 101, 98, 95, 959, 960, 93, 960, 1356 961, 86, 961, 72, 70, 66, 961, 962, 36, 962, 1357 963, 33, 963, 18, 11, 4, 963, 964, 3, 964, 1358 965, 0, 965, 0, 0, 0, 965, 966, 0, 966, 1359 1360 0, 0, 0, 966, 967, 0, 967, 968, 0, 968, 1361 0, 0, 0, 968, 969, 0, 969, 970, 0, 970, 1362 0, 970, 0, 970, 971, 0, 971, 0, 0, 0, 1363 971, 972, 0, 972, 0, 0, 0, 972, 973, 0, 1364 973, 974, 0, 974, 0, 0, 0, 974, 975, 0, 1365 975, 976, 0, 976, 0, 0, 0, 976, 977, 0, 1366 977, 978, 0, 978, 0, 0, 0, 978, 979, 0, 1367 979, 980, 0, 980, 0, 0, 0, 980, 981, 0, 1368 981, 982, 0, 982, 0, 0, 0, 982, 983, 0, 1369 983, 984, 0, 0, 984, 0, 984, 984, 984, 984, 1370 1371 984, 985, 985, 985, 985, 985, 985, 985, 985, 985, 1372 985, 985, 985, 985, 986, 0, 986, 0, 0, 0, 1373 986, 987, 0, 987, 988, 0, 988, 0, 0, 0, 1374 988, 989, 0, 989, 990, 0, 990, 0, 0, 0, 1375 990, 991, 0, 991, 992, 0, 992, 0, 0, 0, 1376 992, 993, 0, 993, 994, 0, 994, 0, 0, 0, 1377 994, 995, 0, 995, 996, 0, 996, 0, 0, 0, 1378 996, 997, 0, 997, 998, 0, 998, 0, 0, 0, 1379 998, 999, 0, 999, 1000, 0, 1000, 0, 0, 0, 1380 1000, 1001, 0, 1001, 1002, 0, 1002, 0, 0, 0, 1381 1382 1002, 1003, 0, 1003, 0, 0, 0, 1003, 1004, 0, 1383 1004, 1005, 0, 1005, 0, 0, 0, 1005, 1006, 0, 1384 1006, 1007, 0, 1007, 0, 0, 0, 1007, 1008, 0, 1385 1008, 1009, 0, 1009, 0, 0, 0, 1009, 1010, 0, 1386 1010, 1011, 0, 1011, 1012, 0, 1012, 1013, 0, 0, 1387 1013, 0, 1013, 1013, 1013, 1013, 1013, 1014, 0, 1014, 1388 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1389 1015, 1015, 1015, 1016, 0, 1016, 0, 0, 0, 1016, 1390 1017, 0, 1017, 1018, 0, 1018, 0, 0, 0, 1018, 1391 1019, 0, 1019, 1020, 0, 1020, 1021, 0, 1021, 1022, 1392 1393 0, 0, 1022, 0, 1022, 1022, 1022, 1022, 1022, 1023, 1394 0, 1023, 1024, 0, 1024, 1025, 0, 1025, 1026, 0, 1395 1026, 1027, 0, 1027, 1028, 0, 1028, 1029, 0, 1029, 1396 1030, 0, 1030, 0, 0, 0, 1030, 1031, 0, 1031, 1397 1032, 0, 1032, 0, 0, 0, 1032, 1033, 0, 1033, 1398 1034, 0, 1034, 1035, 0, 1035, 1036, 0, 1036, 1037, 1399 0, 1037, 0, 0, 0, 1037, 1038, 0, 0, 1038, 1400 0, 1038, 1038, 1038, 1038, 1038, 1039, 0, 1039, 1040, 1401 0, 1040, 1041, 0, 1041, 1042, 0, 1042, 0, 0, 1402 0, 1042, 1043, 0, 1043, 0, 0, 0, 1043, 1044, 1403 1404 0, 1044, 0, 0, 0, 1044, 1045, 0, 1045, 1046, 1405 0, 1046, 0, 0, 0, 1046, 1047, 0, 1047, 0, 1406 0, 0, 1047, 1048, 0, 1048, 0, 0, 0, 1048, 1407 1049, 0, 1049, 0, 0, 0, 1049, 1050, 0, 1050, 1408 0, 0, 0, 1050, 1051, 0, 1051, 0, 0, 0, 1409 1051, 1052, 0, 1052, 0, 0, 0, 1052, 1053, 0, 1410 1053, 0, 0, 0, 1053, 1054, 0, 1054, 0, 0, 1411 0, 1054, 1055, 0, 1055, 0, 0, 0, 1055, 1056, 1412 0, 1056, 0, 0, 0, 1056, 1057, 0, 1057, 0, 1413 0, 0, 1057, 1058, 0, 1058, 0, 0, 0, 1058, 1414 1415 1059, 0, 1059, 0, 0, 0, 1059, 1060, 0, 1060, 1416 0, 0, 0, 1060, 1061, 0, 1061, 0, 0, 0, 1417 1061, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1412 1418 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1413 1419 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, … … 1417 1423 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1418 1424 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1419 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 1420 887, 887 1425 1426 887, 887, 887, 887, 887, 887, 887 1421 1427 } ; 1422 1428 … … 1461 1467 * Created On : Sat Sep 22 08:58:10 2001 1462 1468 * Last Modified By : Peter A. Buhr 1463 * Last Modified On : Wed Mar 2 18:07:2020161464 * Update Count : 4 341469 * Last Modified On : Mon Mar 21 23:33:46 2016 1470 * Update Count : 450 1465 1471 */ 1466 1472 #line 20 "lex.ll" … … 1474 1480 1475 1481 #include "lex.h" 1482 #include "parser.h" // YACC generated definitions based on C++ grammar 1476 1483 #include "ParseNode.h" 1477 #include " parser.h" // YACC generated definitions based on C++ grammar1484 #include "TypedefTable.h" 1478 1485 1479 1486 char *yyfilename; … … 1491 1498 #define NUMERIC_RETURN(x) rm_underscore(); RETURN_VAL( x ) // numeric constant 1492 1499 #define KEYWORD_RETURN(x) RETURN_CHAR( x ) // keyword 1493 #define IDENTIFIER_RETURN() RETURN_VAL( (typedefTable.isIdentifier( yytext ) ? IDENTIFIER : typedefTable.isTypedef( yytext ) ? TYPEDEFname : TYPEGENname) )1500 #define IDENTIFIER_RETURN() RETURN_VAL( typedefTable.isKind( yytext ) ) 1494 1501 #define ATTRIBUTE_RETURN() RETURN_VAL( ATTR_IDENTIFIER ) 1495 1502 … … 1511 1518 // attribute identifier, GCC: $ in identifier 1512 1519 // numeric constants, CFA: '_' in constant 1513 // GCC: D (double), LD (long double) and iI (imaginary) suffixes 1520 // GCC: D (double), DL (long double) and iI (imaginary) suffixes 1521 //floating_suffix "_"?([fFdD]|[lL]|[D][L])|([iI][lLfFdD])|([lLfFdD][iI])) 1514 1522 // character escape sequence, GCC: \e => esc character 1515 1523 // ' stop highlighting … … 1520 1528 1521 1529 1522 #line 15 23"Parser/lex.cc"1530 #line 1531 "Parser/lex.cc" 1523 1531 1524 1532 #define INITIAL 0 … … 1712 1720 register int yy_act; 1713 1721 1714 #line 13 7"lex.ll"1722 #line 139 "lex.ll" 1715 1723 1716 1724 /* line directives */ 1717 #line 17 18"Parser/lex.cc"1725 #line 1726 "Parser/lex.cc" 1718 1726 1719 1727 if ( !(yy_init) ) … … 1775 1783 ++yy_cp; 1776 1784 } 1777 while ( yy_base[yy_current_state] != 2 798);1785 while ( yy_base[yy_current_state] != 2822 ); 1778 1786 1779 1787 yy_find_action: … … 1812 1820 /* rule 1 can match eol */ 1813 1821 YY_RULE_SETUP 1814 #line 1 39"lex.ll"1822 #line 141 "lex.ll" 1815 1823 { 1816 1824 /* " stop highlighting */ … … 1839 1847 /* rule 2 can match eol */ 1840 1848 YY_RULE_SETUP 1841 #line 16 2"lex.ll"1849 #line 164 "lex.ll" 1842 1850 ; 1843 1851 YY_BREAK … … 1845 1853 case 3: 1846 1854 YY_RULE_SETUP 1847 #line 16 5"lex.ll"1855 #line 167 "lex.ll" 1848 1856 { BEGIN COMMENT; } 1849 1857 YY_BREAK … … 1851 1859 /* rule 4 can match eol */ 1852 1860 YY_RULE_SETUP 1853 #line 16 6"lex.ll"1861 #line 168 "lex.ll" 1854 1862 ; 1855 1863 YY_BREAK 1856 1864 case 5: 1857 1865 YY_RULE_SETUP 1858 #line 16 7"lex.ll"1866 #line 169 "lex.ll" 1859 1867 { BEGIN 0; } 1860 1868 YY_BREAK … … 1863 1871 /* rule 6 can match eol */ 1864 1872 YY_RULE_SETUP 1865 #line 17 0"lex.ll"1873 #line 172 "lex.ll" 1866 1874 ; 1867 1875 YY_BREAK … … 1869 1877 case 7: 1870 1878 YY_RULE_SETUP 1871 #line 17 3"lex.ll"1879 #line 175 "lex.ll" 1872 1880 { WHITE_RETURN(' '); } 1873 1881 YY_BREAK 1874 1882 case 8: 1875 1883 YY_RULE_SETUP 1876 #line 17 4"lex.ll"1884 #line 176 "lex.ll" 1877 1885 { WHITE_RETURN(' '); } 1878 1886 YY_BREAK … … 1880 1888 /* rule 9 can match eol */ 1881 1889 YY_RULE_SETUP 1882 #line 17 5"lex.ll"1890 #line 177 "lex.ll" 1883 1891 { NEWLINE_RETURN(); } 1884 1892 YY_BREAK … … 1886 1894 case 10: 1887 1895 YY_RULE_SETUP 1888 #line 1 78"lex.ll"1896 #line 180 "lex.ll" 1889 1897 { KEYWORD_RETURN(ALIGNAS); } // C11 1890 1898 YY_BREAK 1891 1899 case 11: 1892 1900 YY_RULE_SETUP 1893 #line 1 79"lex.ll"1901 #line 181 "lex.ll" 1894 1902 { KEYWORD_RETURN(ALIGNOF); } // C11 1895 1903 YY_BREAK 1896 1904 case 12: 1897 1905 YY_RULE_SETUP 1898 #line 18 0"lex.ll"1906 #line 182 "lex.ll" 1899 1907 { KEYWORD_RETURN(ALIGNOF); } // GCC 1900 1908 YY_BREAK 1901 1909 case 13: 1902 1910 YY_RULE_SETUP 1903 #line 18 1"lex.ll"1911 #line 183 "lex.ll" 1904 1912 { KEYWORD_RETURN(ALIGNOF); } // GCC 1905 1913 YY_BREAK 1906 1914 case 14: 1907 1915 YY_RULE_SETUP 1908 #line 18 2"lex.ll"1916 #line 184 "lex.ll" 1909 1917 { KEYWORD_RETURN(ASM); } 1910 1918 YY_BREAK 1911 1919 case 15: 1912 1920 YY_RULE_SETUP 1913 #line 18 3"lex.ll"1921 #line 185 "lex.ll" 1914 1922 { KEYWORD_RETURN(ASM); } // GCC 1915 1923 YY_BREAK 1916 1924 case 16: 1917 1925 YY_RULE_SETUP 1918 #line 18 4"lex.ll"1926 #line 186 "lex.ll" 1919 1927 { KEYWORD_RETURN(ASM); } // GCC 1920 1928 YY_BREAK 1921 1929 case 17: 1922 1930 YY_RULE_SETUP 1923 #line 18 5"lex.ll"1931 #line 187 "lex.ll" 1924 1932 { KEYWORD_RETURN(AT); } // CFA 1925 1933 YY_BREAK 1926 1934 case 18: 1927 1935 YY_RULE_SETUP 1928 #line 18 6"lex.ll"1936 #line 188 "lex.ll" 1929 1937 { KEYWORD_RETURN(ATOMIC); } // C11 1930 1938 YY_BREAK 1931 1939 case 19: 1932 1940 YY_RULE_SETUP 1933 #line 18 7"lex.ll"1941 #line 189 "lex.ll" 1934 1942 { KEYWORD_RETURN(ATTRIBUTE); } // GCC 1935 1943 YY_BREAK 1936 1944 case 20: 1937 1945 YY_RULE_SETUP 1938 #line 1 88"lex.ll"1946 #line 190 "lex.ll" 1939 1947 { KEYWORD_RETURN(ATTRIBUTE); } // GCC 1940 1948 YY_BREAK 1941 1949 case 21: 1942 1950 YY_RULE_SETUP 1943 #line 1 89"lex.ll"1951 #line 191 "lex.ll" 1944 1952 { KEYWORD_RETURN(AUTO); } 1945 1953 YY_BREAK 1946 1954 case 22: 1947 1955 YY_RULE_SETUP 1948 #line 19 0"lex.ll"1956 #line 192 "lex.ll" 1949 1957 { KEYWORD_RETURN(BOOL); } // C99 1950 1958 YY_BREAK 1951 1959 case 23: 1952 1960 YY_RULE_SETUP 1953 #line 19 1"lex.ll"1961 #line 193 "lex.ll" 1954 1962 { KEYWORD_RETURN(BREAK); } 1955 1963 YY_BREAK 1956 1964 case 24: 1957 1965 YY_RULE_SETUP 1958 #line 19 2"lex.ll"1966 #line 194 "lex.ll" 1959 1967 { KEYWORD_RETURN(CASE); } 1960 1968 YY_BREAK 1961 1969 case 25: 1962 1970 YY_RULE_SETUP 1963 #line 19 3"lex.ll"1971 #line 195 "lex.ll" 1964 1972 { KEYWORD_RETURN(CATCH); } // CFA 1965 1973 YY_BREAK 1966 1974 case 26: 1967 1975 YY_RULE_SETUP 1968 #line 19 4"lex.ll"1976 #line 196 "lex.ll" 1969 1977 { KEYWORD_RETURN(CATCHRESUME); } // CFA 1970 1978 YY_BREAK 1971 1979 case 27: 1972 1980 YY_RULE_SETUP 1973 #line 19 5"lex.ll"1981 #line 197 "lex.ll" 1974 1982 { KEYWORD_RETURN(CHAR); } 1975 1983 YY_BREAK 1976 1984 case 28: 1977 1985 YY_RULE_SETUP 1978 #line 19 6"lex.ll"1986 #line 198 "lex.ll" 1979 1987 { KEYWORD_RETURN(CHOOSE); } // CFA 1980 1988 YY_BREAK 1981 1989 case 29: 1982 1990 YY_RULE_SETUP 1983 #line 19 7"lex.ll"1991 #line 199 "lex.ll" 1984 1992 { KEYWORD_RETURN(COMPLEX); } // C99 1985 1993 YY_BREAK 1986 1994 case 30: 1987 1995 YY_RULE_SETUP 1988 #line 198"lex.ll"1996 #line 200 "lex.ll" 1989 1997 { KEYWORD_RETURN(COMPLEX); } // GCC 1990 1998 YY_BREAK 1991 1999 case 31: 1992 2000 YY_RULE_SETUP 1993 #line 199"lex.ll"2001 #line 201 "lex.ll" 1994 2002 { KEYWORD_RETURN(COMPLEX); } // GCC 1995 2003 YY_BREAK 1996 2004 case 32: 1997 2005 YY_RULE_SETUP 1998 #line 20 0"lex.ll"2006 #line 202 "lex.ll" 1999 2007 { KEYWORD_RETURN(CONST); } 2000 2008 YY_BREAK 2001 2009 case 33: 2002 2010 YY_RULE_SETUP 2003 #line 20 1"lex.ll"2011 #line 203 "lex.ll" 2004 2012 { KEYWORD_RETURN(CONST); } // GCC 2005 2013 YY_BREAK 2006 2014 case 34: 2007 2015 YY_RULE_SETUP 2008 #line 20 2"lex.ll"2016 #line 204 "lex.ll" 2009 2017 { KEYWORD_RETURN(CONST); } // GCC 2010 2018 YY_BREAK 2011 2019 case 35: 2012 2020 YY_RULE_SETUP 2013 #line 20 3"lex.ll"2021 #line 205 "lex.ll" 2014 2022 { KEYWORD_RETURN(CONTINUE); } 2015 2023 YY_BREAK 2016 2024 case 36: 2017 2025 YY_RULE_SETUP 2018 #line 20 4"lex.ll"2026 #line 206 "lex.ll" 2019 2027 { KEYWORD_RETURN(DEFAULT); } 2020 2028 YY_BREAK 2021 2029 case 37: 2022 2030 YY_RULE_SETUP 2023 #line 20 5"lex.ll"2031 #line 207 "lex.ll" 2024 2032 { KEYWORD_RETURN(DISABLE); } // CFA 2025 2033 YY_BREAK 2026 2034 case 38: 2027 2035 YY_RULE_SETUP 2028 #line 20 6"lex.ll"2036 #line 208 "lex.ll" 2029 2037 { KEYWORD_RETURN(DO); } 2030 2038 YY_BREAK 2031 2039 case 39: 2032 2040 YY_RULE_SETUP 2033 #line 20 7"lex.ll"2041 #line 209 "lex.ll" 2034 2042 { KEYWORD_RETURN(DOUBLE); } 2035 2043 YY_BREAK 2036 2044 case 40: 2037 2045 YY_RULE_SETUP 2038 #line 2 08"lex.ll"2046 #line 210 "lex.ll" 2039 2047 { KEYWORD_RETURN(DTYPE); } // CFA 2040 2048 YY_BREAK 2041 2049 case 41: 2042 2050 YY_RULE_SETUP 2043 #line 2 09"lex.ll"2051 #line 211 "lex.ll" 2044 2052 { KEYWORD_RETURN(ELSE); } 2045 2053 YY_BREAK 2046 2054 case 42: 2047 2055 YY_RULE_SETUP 2048 #line 21 0"lex.ll"2056 #line 212 "lex.ll" 2049 2057 { KEYWORD_RETURN(ENABLE); } // CFA 2050 2058 YY_BREAK 2051 2059 case 43: 2052 2060 YY_RULE_SETUP 2053 #line 21 1"lex.ll"2061 #line 213 "lex.ll" 2054 2062 { KEYWORD_RETURN(ENUM); } 2055 2063 YY_BREAK 2056 2064 case 44: 2057 2065 YY_RULE_SETUP 2058 #line 21 2"lex.ll"2066 #line 214 "lex.ll" 2059 2067 { KEYWORD_RETURN(EXTENSION); } // GCC 2060 2068 YY_BREAK 2061 2069 case 45: 2062 2070 YY_RULE_SETUP 2063 #line 21 3"lex.ll"2071 #line 215 "lex.ll" 2064 2072 { KEYWORD_RETURN(EXTERN); } 2065 2073 YY_BREAK 2066 2074 case 46: 2067 2075 YY_RULE_SETUP 2068 #line 21 4"lex.ll"2076 #line 216 "lex.ll" 2069 2077 { KEYWORD_RETURN(FALLTHRU); } // CFA 2070 2078 YY_BREAK 2071 2079 case 47: 2072 2080 YY_RULE_SETUP 2073 #line 21 5"lex.ll"2081 #line 217 "lex.ll" 2074 2082 { KEYWORD_RETURN(FINALLY); } // CFA 2075 2083 YY_BREAK 2076 2084 case 48: 2077 2085 YY_RULE_SETUP 2078 #line 21 6"lex.ll"2086 #line 218 "lex.ll" 2079 2087 { KEYWORD_RETURN(FLOAT); } 2080 2088 YY_BREAK 2081 2089 case 49: 2082 2090 YY_RULE_SETUP 2083 #line 21 7"lex.ll"2091 #line 219 "lex.ll" 2084 2092 { KEYWORD_RETURN(FLOAT); } // GCC 2085 2093 YY_BREAK 2086 2094 case 50: 2087 2095 YY_RULE_SETUP 2088 #line 2 18"lex.ll"2096 #line 220 "lex.ll" 2089 2097 { KEYWORD_RETURN(FOR); } 2090 2098 YY_BREAK 2091 2099 case 51: 2092 2100 YY_RULE_SETUP 2093 #line 2 19"lex.ll"2101 #line 221 "lex.ll" 2094 2102 { KEYWORD_RETURN(FORALL); } // CFA 2095 2103 YY_BREAK 2096 2104 case 52: 2097 2105 YY_RULE_SETUP 2098 #line 22 0"lex.ll"2106 #line 222 "lex.ll" 2099 2107 { KEYWORD_RETURN(FORTRAN); } 2100 2108 YY_BREAK 2101 2109 case 53: 2102 2110 YY_RULE_SETUP 2103 #line 22 1"lex.ll"2111 #line 223 "lex.ll" 2104 2112 { KEYWORD_RETURN(FTYPE); } // CFA 2105 2113 YY_BREAK 2106 2114 case 54: 2107 2115 YY_RULE_SETUP 2108 #line 22 2"lex.ll"2116 #line 224 "lex.ll" 2109 2117 { KEYWORD_RETURN(GENERIC); } // C11 2110 2118 YY_BREAK 2111 2119 case 55: 2112 2120 YY_RULE_SETUP 2113 #line 22 3"lex.ll"2121 #line 225 "lex.ll" 2114 2122 { KEYWORD_RETURN(GOTO); } 2115 2123 YY_BREAK 2116 2124 case 56: 2117 2125 YY_RULE_SETUP 2118 #line 22 4"lex.ll"2126 #line 226 "lex.ll" 2119 2127 { KEYWORD_RETURN(IF); } 2120 2128 YY_BREAK 2121 2129 case 57: 2122 2130 YY_RULE_SETUP 2123 #line 22 5"lex.ll"2131 #line 227 "lex.ll" 2124 2132 { KEYWORD_RETURN(IMAGINARY); } // C99 2125 2133 YY_BREAK 2126 2134 case 58: 2127 2135 YY_RULE_SETUP 2128 #line 22 6"lex.ll"2136 #line 228 "lex.ll" 2129 2137 { KEYWORD_RETURN(IMAGINARY); } // GCC 2130 2138 YY_BREAK 2131 2139 case 59: 2132 2140 YY_RULE_SETUP 2133 #line 22 7"lex.ll"2141 #line 229 "lex.ll" 2134 2142 { KEYWORD_RETURN(IMAGINARY); } // GCC 2135 2143 YY_BREAK 2136 2144 case 60: 2137 2145 YY_RULE_SETUP 2138 #line 2 28"lex.ll"2146 #line 230 "lex.ll" 2139 2147 { KEYWORD_RETURN(INLINE); } // C99 2140 2148 YY_BREAK 2141 2149 case 61: 2142 2150 YY_RULE_SETUP 2143 #line 2 29"lex.ll"2151 #line 231 "lex.ll" 2144 2152 { KEYWORD_RETURN(INLINE); } // GCC 2145 2153 YY_BREAK 2146 2154 case 62: 2147 2155 YY_RULE_SETUP 2148 #line 23 0"lex.ll"2156 #line 232 "lex.ll" 2149 2157 { KEYWORD_RETURN(INLINE); } // GCC 2150 2158 YY_BREAK 2151 2159 case 63: 2152 2160 YY_RULE_SETUP 2153 #line 23 1"lex.ll"2161 #line 233 "lex.ll" 2154 2162 { KEYWORD_RETURN(INT); } 2155 2163 YY_BREAK 2156 2164 case 64: 2157 2165 YY_RULE_SETUP 2158 #line 23 2"lex.ll"2166 #line 234 "lex.ll" 2159 2167 { KEYWORD_RETURN(INT); } // GCC 2160 2168 YY_BREAK 2161 2169 case 65: 2162 2170 YY_RULE_SETUP 2163 #line 23 3"lex.ll"2171 #line 235 "lex.ll" 2164 2172 { KEYWORD_RETURN(LABEL); } // GCC 2165 2173 YY_BREAK 2166 2174 case 66: 2167 2175 YY_RULE_SETUP 2168 #line 23 4"lex.ll"2176 #line 236 "lex.ll" 2169 2177 { KEYWORD_RETURN(LONG); } 2170 2178 YY_BREAK 2171 2179 case 67: 2172 2180 YY_RULE_SETUP 2173 #line 23 5"lex.ll"2181 #line 237 "lex.ll" 2174 2182 { KEYWORD_RETURN(LVALUE); } // CFA 2175 2183 YY_BREAK 2176 2184 case 68: 2177 2185 YY_RULE_SETUP 2178 #line 23 6"lex.ll"2186 #line 238 "lex.ll" 2179 2187 { KEYWORD_RETURN(NORETURN); } // C11 2180 2188 YY_BREAK 2181 2189 case 69: 2182 2190 YY_RULE_SETUP 2183 #line 23 7"lex.ll"2191 #line 239 "lex.ll" 2184 2192 { KEYWORD_RETURN(OFFSETOF); } // GCC 2185 2193 YY_BREAK 2186 2194 case 70: 2187 2195 YY_RULE_SETUP 2188 #line 2 38"lex.ll"2196 #line 240 "lex.ll" 2189 2197 { KEYWORD_RETURN(OTYPE); } // CFA 2190 2198 YY_BREAK 2191 2199 case 71: 2192 2200 YY_RULE_SETUP 2193 #line 2 39"lex.ll"2201 #line 241 "lex.ll" 2194 2202 { KEYWORD_RETURN(REGISTER); } 2195 2203 YY_BREAK 2196 2204 case 72: 2197 2205 YY_RULE_SETUP 2198 #line 24 0"lex.ll"2206 #line 242 "lex.ll" 2199 2207 { KEYWORD_RETURN(RESTRICT); } // C99 2200 2208 YY_BREAK 2201 2209 case 73: 2202 2210 YY_RULE_SETUP 2203 #line 24 1"lex.ll"2211 #line 243 "lex.ll" 2204 2212 { KEYWORD_RETURN(RESTRICT); } // GCC 2205 2213 YY_BREAK 2206 2214 case 74: 2207 2215 YY_RULE_SETUP 2208 #line 24 2"lex.ll"2216 #line 244 "lex.ll" 2209 2217 { KEYWORD_RETURN(RESTRICT); } // GCC 2210 2218 YY_BREAK 2211 2219 case 75: 2212 2220 YY_RULE_SETUP 2213 #line 24 3"lex.ll"2221 #line 245 "lex.ll" 2214 2222 { KEYWORD_RETURN(RETURN); } 2215 2223 YY_BREAK 2216 2224 case 76: 2217 2225 YY_RULE_SETUP 2218 #line 24 4"lex.ll"2226 #line 246 "lex.ll" 2219 2227 { KEYWORD_RETURN(SHORT); } 2220 2228 YY_BREAK 2221 2229 case 77: 2222 2230 YY_RULE_SETUP 2223 #line 24 5"lex.ll"2231 #line 247 "lex.ll" 2224 2232 { KEYWORD_RETURN(SIGNED); } 2225 2233 YY_BREAK 2226 2234 case 78: 2227 2235 YY_RULE_SETUP 2228 #line 24 6"lex.ll"2236 #line 248 "lex.ll" 2229 2237 { KEYWORD_RETURN(SIGNED); } // GCC 2230 2238 YY_BREAK 2231 2239 case 79: 2232 2240 YY_RULE_SETUP 2233 #line 24 7"lex.ll"2241 #line 249 "lex.ll" 2234 2242 { KEYWORD_RETURN(SIGNED); } // GCC 2235 2243 YY_BREAK 2236 2244 case 80: 2237 2245 YY_RULE_SETUP 2238 #line 2 48"lex.ll"2246 #line 250 "lex.ll" 2239 2247 { KEYWORD_RETURN(SIZEOF); } 2240 2248 YY_BREAK 2241 2249 case 81: 2242 2250 YY_RULE_SETUP 2243 #line 2 49"lex.ll"2251 #line 251 "lex.ll" 2244 2252 { KEYWORD_RETURN(STATIC); } 2245 2253 YY_BREAK 2246 2254 case 82: 2247 2255 YY_RULE_SETUP 2248 #line 25 0"lex.ll"2256 #line 252 "lex.ll" 2249 2257 { KEYWORD_RETURN(STATICASSERT); } // C11 2250 2258 YY_BREAK 2251 2259 case 83: 2252 2260 YY_RULE_SETUP 2253 #line 25 1"lex.ll"2261 #line 253 "lex.ll" 2254 2262 { KEYWORD_RETURN(STRUCT); } 2255 2263 YY_BREAK 2256 2264 case 84: 2257 2265 YY_RULE_SETUP 2258 #line 25 2"lex.ll"2266 #line 254 "lex.ll" 2259 2267 { KEYWORD_RETURN(SWITCH); } 2260 2268 YY_BREAK 2261 2269 case 85: 2262 2270 YY_RULE_SETUP 2263 #line 25 3"lex.ll"2271 #line 255 "lex.ll" 2264 2272 { KEYWORD_RETURN(THREADLOCAL); } // C11 2265 2273 YY_BREAK 2266 2274 case 86: 2267 2275 YY_RULE_SETUP 2268 #line 25 4"lex.ll"2276 #line 256 "lex.ll" 2269 2277 { KEYWORD_RETURN(THROW); } // CFA 2270 2278 YY_BREAK 2271 2279 case 87: 2272 2280 YY_RULE_SETUP 2273 #line 25 5"lex.ll"2281 #line 257 "lex.ll" 2274 2282 { KEYWORD_RETURN(THROWRESUME); } // CFA 2275 2283 YY_BREAK 2276 2284 case 88: 2277 2285 YY_RULE_SETUP 2278 #line 25 6"lex.ll"2286 #line 258 "lex.ll" 2279 2287 { KEYWORD_RETURN(TRAIT); } // CFA 2280 2288 YY_BREAK 2281 2289 case 89: 2282 2290 YY_RULE_SETUP 2283 #line 25 7"lex.ll"2291 #line 259 "lex.ll" 2284 2292 { KEYWORD_RETURN(TRY); } // CFA 2285 2293 YY_BREAK 2286 2294 case 90: 2287 2295 YY_RULE_SETUP 2288 #line 2 58"lex.ll"2296 #line 260 "lex.ll" 2289 2297 { KEYWORD_RETURN(TYPEDEF); } 2290 2298 YY_BREAK 2291 2299 case 91: 2292 YY_RULE_SETUP2293 #line 259 "lex.ll"2294 { KEYWORD_RETURN(TYPEOF); } // GCC2295 YY_BREAK2296 case 92:2297 YY_RULE_SETUP2298 #line 260 "lex.ll"2299 { KEYWORD_RETURN(TYPEOF); } // GCC2300 YY_BREAK2301 case 93:2302 2300 YY_RULE_SETUP 2303 2301 #line 261 "lex.ll" 2304 2302 { KEYWORD_RETURN(TYPEOF); } // GCC 2305 2303 YY_BREAK 2304 case 92: 2305 YY_RULE_SETUP 2306 #line 262 "lex.ll" 2307 { KEYWORD_RETURN(TYPEOF); } // GCC 2308 YY_BREAK 2309 case 93: 2310 YY_RULE_SETUP 2311 #line 263 "lex.ll" 2312 { KEYWORD_RETURN(TYPEOF); } // GCC 2313 YY_BREAK 2306 2314 case 94: 2307 2315 YY_RULE_SETUP 2308 #line 26 2"lex.ll"2316 #line 264 "lex.ll" 2309 2317 { KEYWORD_RETURN(UNION); } 2310 2318 YY_BREAK 2311 2319 case 95: 2312 2320 YY_RULE_SETUP 2313 #line 26 3"lex.ll"2321 #line 265 "lex.ll" 2314 2322 { KEYWORD_RETURN(UNSIGNED); } 2315 2323 YY_BREAK 2316 2324 case 96: 2317 2325 YY_RULE_SETUP 2318 #line 26 4"lex.ll"2326 #line 266 "lex.ll" 2319 2327 { KEYWORD_RETURN(VALIST); } // GCC 2320 2328 YY_BREAK 2321 2329 case 97: 2322 2330 YY_RULE_SETUP 2323 #line 26 5"lex.ll"2331 #line 267 "lex.ll" 2324 2332 { KEYWORD_RETURN(VOID); } 2325 2333 YY_BREAK 2326 2334 case 98: 2327 2335 YY_RULE_SETUP 2328 #line 26 6"lex.ll"2336 #line 268 "lex.ll" 2329 2337 { KEYWORD_RETURN(VOLATILE); } 2330 2338 YY_BREAK 2331 2339 case 99: 2332 2340 YY_RULE_SETUP 2333 #line 26 7"lex.ll"2341 #line 269 "lex.ll" 2334 2342 { KEYWORD_RETURN(VOLATILE); } // GCC 2335 2343 YY_BREAK 2336 2344 case 100: 2337 2345 YY_RULE_SETUP 2338 #line 2 68"lex.ll"2346 #line 270 "lex.ll" 2339 2347 { KEYWORD_RETURN(VOLATILE); } // GCC 2340 2348 YY_BREAK 2341 2349 case 101: 2342 2350 YY_RULE_SETUP 2343 #line 2 69"lex.ll"2351 #line 271 "lex.ll" 2344 2352 { KEYWORD_RETURN(WHILE); } 2345 2353 YY_BREAK … … 2347 2355 case 102: 2348 2356 YY_RULE_SETUP 2349 #line 27 2"lex.ll"2357 #line 274 "lex.ll" 2350 2358 { IDENTIFIER_RETURN(); } 2351 2359 YY_BREAK 2352 2360 case 103: 2353 2361 YY_RULE_SETUP 2354 #line 27 3"lex.ll"2362 #line 275 "lex.ll" 2355 2363 { ATTRIBUTE_RETURN(); } 2356 2364 YY_BREAK 2357 2365 case 104: 2358 2366 YY_RULE_SETUP 2359 #line 27 4"lex.ll"2367 #line 276 "lex.ll" 2360 2368 { BEGIN BKQUOTE; } 2361 2369 YY_BREAK 2362 2370 case 105: 2363 2371 YY_RULE_SETUP 2364 #line 27 5"lex.ll"2372 #line 277 "lex.ll" 2365 2373 { IDENTIFIER_RETURN(); } 2366 2374 YY_BREAK 2367 2375 case 106: 2368 2376 YY_RULE_SETUP 2369 #line 27 6"lex.ll"2377 #line 278 "lex.ll" 2370 2378 { BEGIN 0; } 2371 2379 YY_BREAK … … 2373 2381 case 107: 2374 2382 YY_RULE_SETUP 2375 #line 2 79"lex.ll"2383 #line 281 "lex.ll" 2376 2384 { NUMERIC_RETURN(ZERO); } // CFA 2377 2385 YY_BREAK 2378 2386 case 108: 2379 2387 YY_RULE_SETUP 2380 #line 28 0"lex.ll"2388 #line 282 "lex.ll" 2381 2389 { NUMERIC_RETURN(ONE); } // CFA 2382 2390 YY_BREAK 2383 2391 case 109: 2384 YY_RULE_SETUP2385 #line 281 "lex.ll"2386 { NUMERIC_RETURN(INTEGERconstant); }2387 YY_BREAK2388 case 110:2389 YY_RULE_SETUP2390 #line 282 "lex.ll"2391 { NUMERIC_RETURN(INTEGERconstant); }2392 YY_BREAK2393 case 111:2394 2392 YY_RULE_SETUP 2395 2393 #line 283 "lex.ll" 2396 2394 { NUMERIC_RETURN(INTEGERconstant); } 2397 2395 YY_BREAK 2396 case 110: 2397 YY_RULE_SETUP 2398 #line 284 "lex.ll" 2399 { NUMERIC_RETURN(INTEGERconstant); } 2400 YY_BREAK 2401 case 111: 2402 YY_RULE_SETUP 2403 #line 285 "lex.ll" 2404 { NUMERIC_RETURN(INTEGERconstant); } 2405 YY_BREAK 2398 2406 case 112: 2399 2407 YY_RULE_SETUP 2400 #line 28 4"lex.ll"2408 #line 286 "lex.ll" 2401 2409 { NUMERIC_RETURN(FLOATINGconstant); } 2402 2410 YY_BREAK 2403 2411 case 113: 2404 2412 YY_RULE_SETUP 2405 #line 28 5"lex.ll"2413 #line 287 "lex.ll" 2406 2414 { NUMERIC_RETURN(FLOATINGconstant); } 2407 2415 YY_BREAK … … 2409 2417 case 114: 2410 2418 YY_RULE_SETUP 2411 #line 2 88"lex.ll"2419 #line 290 "lex.ll" 2412 2420 { BEGIN QUOTE; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); } 2413 2421 YY_BREAK 2414 2422 case 115: 2415 2423 YY_RULE_SETUP 2416 #line 2 89"lex.ll"2424 #line 291 "lex.ll" 2417 2425 { *strtext += std::string( yytext ); } 2418 2426 YY_BREAK … … 2420 2428 /* rule 116 can match eol */ 2421 2429 YY_RULE_SETUP 2422 #line 29 0"lex.ll"2430 #line 292 "lex.ll" 2423 2431 { BEGIN 0; *strtext += std::string( yytext); RETURN_STR(CHARACTERconstant); } 2424 2432 YY_BREAK … … 2427 2435 case 117: 2428 2436 YY_RULE_SETUP 2429 #line 29 4"lex.ll"2437 #line 296 "lex.ll" 2430 2438 { BEGIN STRING; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); } 2431 2439 YY_BREAK 2432 2440 case 118: 2433 2441 YY_RULE_SETUP 2434 #line 29 5"lex.ll"2442 #line 297 "lex.ll" 2435 2443 { *strtext += std::string( yytext ); } 2436 2444 YY_BREAK … … 2438 2446 /* rule 119 can match eol */ 2439 2447 YY_RULE_SETUP 2440 #line 29 6"lex.ll"2448 #line 298 "lex.ll" 2441 2449 { BEGIN 0; *strtext += std::string( yytext ); RETURN_STR(STRINGliteral); } 2442 2450 YY_BREAK … … 2445 2453 case 120: 2446 2454 YY_RULE_SETUP 2447 #line 30 0"lex.ll"2455 #line 302 "lex.ll" 2448 2456 { rm_underscore(); *strtext += std::string( yytext ); } 2449 2457 YY_BREAK … … 2451 2459 /* rule 121 can match eol */ 2452 2460 YY_RULE_SETUP 2453 #line 30 1"lex.ll"2461 #line 303 "lex.ll" 2454 2462 {} // continuation (ALSO HANDLED BY CPP) 2455 2463 YY_BREAK 2456 2464 case 122: 2457 2465 YY_RULE_SETUP 2458 #line 30 2"lex.ll"2466 #line 304 "lex.ll" 2459 2467 { *strtext += std::string( yytext ); } // unknown escape character 2460 2468 YY_BREAK … … 2462 2470 case 123: 2463 2471 YY_RULE_SETUP 2464 #line 305 "lex.ll"2465 { ASCIIOP_RETURN(); }2466 YY_BREAK2467 case 124:2468 YY_RULE_SETUP2469 #line 306 "lex.ll"2470 { ASCIIOP_RETURN(); }2471 YY_BREAK2472 case 125:2473 YY_RULE_SETUP2474 2472 #line 307 "lex.ll" 2475 2473 { ASCIIOP_RETURN(); } 2476 2474 YY_BREAK 2477 case 12 6:2475 case 124: 2478 2476 YY_RULE_SETUP 2479 2477 #line 308 "lex.ll" 2480 2478 { ASCIIOP_RETURN(); } 2481 2479 YY_BREAK 2482 case 12 7:2480 case 125: 2483 2481 YY_RULE_SETUP 2484 2482 #line 309 "lex.ll" 2485 2483 { ASCIIOP_RETURN(); } 2486 2484 YY_BREAK 2487 case 12 8:2485 case 126: 2488 2486 YY_RULE_SETUP 2489 2487 #line 310 "lex.ll" 2490 2488 { ASCIIOP_RETURN(); } 2491 2489 YY_BREAK 2492 case 12 9:2490 case 127: 2493 2491 YY_RULE_SETUP 2494 2492 #line 311 "lex.ll" 2495 { ASCIIOP_RETURN(); } // also operator2496 YY_BREAK 2497 case 1 30:2493 { ASCIIOP_RETURN(); } 2494 YY_BREAK 2495 case 128: 2498 2496 YY_RULE_SETUP 2499 2497 #line 312 "lex.ll" 2500 2498 { ASCIIOP_RETURN(); } 2501 2499 YY_BREAK 2500 case 129: 2501 YY_RULE_SETUP 2502 #line 313 "lex.ll" 2503 { ASCIIOP_RETURN(); } // also operator 2504 YY_BREAK 2505 case 130: 2506 YY_RULE_SETUP 2507 #line 314 "lex.ll" 2508 { ASCIIOP_RETURN(); } 2509 YY_BREAK 2502 2510 case 131: 2503 2511 YY_RULE_SETUP 2504 #line 31 3"lex.ll"2512 #line 315 "lex.ll" 2505 2513 { ASCIIOP_RETURN(); } 2506 2514 YY_BREAK 2507 2515 case 132: 2508 2516 YY_RULE_SETUP 2509 #line 31 4"lex.ll"2517 #line 316 "lex.ll" 2510 2518 { ASCIIOP_RETURN(); } // also operator 2511 2519 YY_BREAK 2512 2520 case 133: 2513 2521 YY_RULE_SETUP 2514 #line 31 5"lex.ll"2522 #line 317 "lex.ll" 2515 2523 { NAMEDOP_RETURN(ELLIPSIS); } 2516 2524 YY_BREAK … … 2518 2526 case 134: 2519 2527 YY_RULE_SETUP 2520 #line 3 18"lex.ll"2528 #line 320 "lex.ll" 2521 2529 { RETURN_VAL('['); } 2522 2530 YY_BREAK 2523 2531 case 135: 2524 2532 YY_RULE_SETUP 2525 #line 3 19"lex.ll"2533 #line 321 "lex.ll" 2526 2534 { RETURN_VAL(']'); } 2527 2535 YY_BREAK 2528 2536 case 136: 2529 2537 YY_RULE_SETUP 2530 #line 32 0"lex.ll"2538 #line 322 "lex.ll" 2531 2539 { RETURN_VAL('{'); } 2532 2540 YY_BREAK 2533 2541 case 137: 2534 2542 YY_RULE_SETUP 2535 #line 32 1"lex.ll"2543 #line 323 "lex.ll" 2536 2544 { RETURN_VAL('}'); } 2537 2545 YY_BREAK … … 2539 2547 case 138: 2540 2548 YY_RULE_SETUP 2541 #line 324 "lex.ll"2542 { ASCIIOP_RETURN(); }2543 YY_BREAK2544 case 139:2545 YY_RULE_SETUP2546 #line 325 "lex.ll"2547 { ASCIIOP_RETURN(); }2548 YY_BREAK2549 case 140:2550 YY_RULE_SETUP2551 2549 #line 326 "lex.ll" 2552 2550 { ASCIIOP_RETURN(); } 2553 2551 YY_BREAK 2554 case 1 41:2552 case 139: 2555 2553 YY_RULE_SETUP 2556 2554 #line 327 "lex.ll" 2557 2555 { ASCIIOP_RETURN(); } 2558 2556 YY_BREAK 2559 case 14 2:2557 case 140: 2560 2558 YY_RULE_SETUP 2561 2559 #line 328 "lex.ll" 2562 2560 { ASCIIOP_RETURN(); } 2563 2561 YY_BREAK 2564 case 14 3:2562 case 141: 2565 2563 YY_RULE_SETUP 2566 2564 #line 329 "lex.ll" 2567 2565 { ASCIIOP_RETURN(); } 2568 2566 YY_BREAK 2569 case 14 4:2567 case 142: 2570 2568 YY_RULE_SETUP 2571 2569 #line 330 "lex.ll" 2572 2570 { ASCIIOP_RETURN(); } 2573 2571 YY_BREAK 2574 case 14 5:2572 case 143: 2575 2573 YY_RULE_SETUP 2576 2574 #line 331 "lex.ll" 2577 2575 { ASCIIOP_RETURN(); } 2578 2576 YY_BREAK 2579 case 14 6:2577 case 144: 2580 2578 YY_RULE_SETUP 2581 2579 #line 332 "lex.ll" 2582 2580 { ASCIIOP_RETURN(); } 2583 2581 YY_BREAK 2584 case 14 7:2582 case 145: 2585 2583 YY_RULE_SETUP 2586 2584 #line 333 "lex.ll" 2587 2585 { ASCIIOP_RETURN(); } 2588 2586 YY_BREAK 2589 case 14 8:2587 case 146: 2590 2588 YY_RULE_SETUP 2591 2589 #line 334 "lex.ll" 2592 2590 { ASCIIOP_RETURN(); } 2593 2591 YY_BREAK 2594 case 14 9:2592 case 147: 2595 2593 YY_RULE_SETUP 2596 2594 #line 335 "lex.ll" 2597 2595 { ASCIIOP_RETURN(); } 2598 2596 YY_BREAK 2599 case 1 50:2597 case 148: 2600 2598 YY_RULE_SETUP 2601 2599 #line 336 "lex.ll" 2602 2600 { ASCIIOP_RETURN(); } 2603 2601 YY_BREAK 2604 case 1 51:2602 case 149: 2605 2603 YY_RULE_SETUP 2606 2604 #line 337 "lex.ll" 2607 2605 { ASCIIOP_RETURN(); } 2608 2606 YY_BREAK 2607 case 150: 2608 YY_RULE_SETUP 2609 #line 338 "lex.ll" 2610 { ASCIIOP_RETURN(); } 2611 YY_BREAK 2612 case 151: 2613 YY_RULE_SETUP 2614 #line 339 "lex.ll" 2615 { ASCIIOP_RETURN(); } 2616 YY_BREAK 2609 2617 case 152: 2610 2618 YY_RULE_SETUP 2611 #line 3 39"lex.ll"2619 #line 341 "lex.ll" 2612 2620 { NAMEDOP_RETURN(ICR); } 2613 2621 YY_BREAK 2614 2622 case 153: 2615 2623 YY_RULE_SETUP 2616 #line 34 0"lex.ll"2624 #line 342 "lex.ll" 2617 2625 { NAMEDOP_RETURN(DECR); } 2618 2626 YY_BREAK 2619 2627 case 154: 2620 2628 YY_RULE_SETUP 2621 #line 34 1"lex.ll"2629 #line 343 "lex.ll" 2622 2630 { NAMEDOP_RETURN(EQ); } 2623 2631 YY_BREAK 2624 2632 case 155: 2625 2633 YY_RULE_SETUP 2626 #line 34 2"lex.ll"2634 #line 344 "lex.ll" 2627 2635 { NAMEDOP_RETURN(NE); } 2628 2636 YY_BREAK 2629 2637 case 156: 2630 2638 YY_RULE_SETUP 2631 #line 34 3"lex.ll"2639 #line 345 "lex.ll" 2632 2640 { NAMEDOP_RETURN(LS); } 2633 2641 YY_BREAK 2634 2642 case 157: 2635 2643 YY_RULE_SETUP 2636 #line 34 4"lex.ll"2644 #line 346 "lex.ll" 2637 2645 { NAMEDOP_RETURN(RS); } 2638 2646 YY_BREAK 2639 2647 case 158: 2640 2648 YY_RULE_SETUP 2641 #line 34 5"lex.ll"2649 #line 347 "lex.ll" 2642 2650 { NAMEDOP_RETURN(LE); } 2643 2651 YY_BREAK 2644 2652 case 159: 2645 2653 YY_RULE_SETUP 2646 #line 34 6"lex.ll"2654 #line 348 "lex.ll" 2647 2655 { NAMEDOP_RETURN(GE); } 2648 2656 YY_BREAK 2649 2657 case 160: 2650 2658 YY_RULE_SETUP 2651 #line 34 7"lex.ll"2659 #line 349 "lex.ll" 2652 2660 { NAMEDOP_RETURN(ANDAND); } 2653 2661 YY_BREAK 2654 2662 case 161: 2655 2663 YY_RULE_SETUP 2656 #line 3 48"lex.ll"2664 #line 350 "lex.ll" 2657 2665 { NAMEDOP_RETURN(OROR); } 2658 2666 YY_BREAK 2659 2667 case 162: 2660 2668 YY_RULE_SETUP 2661 #line 3 49"lex.ll"2669 #line 351 "lex.ll" 2662 2670 { NAMEDOP_RETURN(ARROW); } 2663 2671 YY_BREAK 2664 2672 case 163: 2665 2673 YY_RULE_SETUP 2666 #line 35 0"lex.ll"2674 #line 352 "lex.ll" 2667 2675 { NAMEDOP_RETURN(PLUSassign); } 2668 2676 YY_BREAK 2669 2677 case 164: 2670 2678 YY_RULE_SETUP 2671 #line 35 1"lex.ll"2679 #line 353 "lex.ll" 2672 2680 { NAMEDOP_RETURN(MINUSassign); } 2673 2681 YY_BREAK 2674 2682 case 165: 2675 2683 YY_RULE_SETUP 2676 #line 35 2"lex.ll"2684 #line 354 "lex.ll" 2677 2685 { NAMEDOP_RETURN(MULTassign); } 2678 2686 YY_BREAK 2679 2687 case 166: 2680 2688 YY_RULE_SETUP 2681 #line 35 3"lex.ll"2689 #line 355 "lex.ll" 2682 2690 { NAMEDOP_RETURN(DIVassign); } 2683 2691 YY_BREAK 2684 2692 case 167: 2685 2693 YY_RULE_SETUP 2686 #line 35 4"lex.ll"2694 #line 356 "lex.ll" 2687 2695 { NAMEDOP_RETURN(MODassign); } 2688 2696 YY_BREAK 2689 2697 case 168: 2690 2698 YY_RULE_SETUP 2691 #line 35 5"lex.ll"2699 #line 357 "lex.ll" 2692 2700 { NAMEDOP_RETURN(ANDassign); } 2693 2701 YY_BREAK 2694 2702 case 169: 2695 2703 YY_RULE_SETUP 2696 #line 35 6"lex.ll"2704 #line 358 "lex.ll" 2697 2705 { NAMEDOP_RETURN(ORassign); } 2698 2706 YY_BREAK 2699 2707 case 170: 2700 2708 YY_RULE_SETUP 2701 #line 35 7"lex.ll"2709 #line 359 "lex.ll" 2702 2710 { NAMEDOP_RETURN(ERassign); } 2703 2711 YY_BREAK 2704 2712 case 171: 2705 2713 YY_RULE_SETUP 2706 #line 3 58"lex.ll"2714 #line 360 "lex.ll" 2707 2715 { NAMEDOP_RETURN(LSassign); } 2708 2716 YY_BREAK 2709 2717 case 172: 2710 2718 YY_RULE_SETUP 2711 #line 3 59"lex.ll"2719 #line 361 "lex.ll" 2712 2720 { NAMEDOP_RETURN(RSassign); } 2713 2721 YY_BREAK 2714 2722 case 173: 2715 2723 YY_RULE_SETUP 2716 #line 36 1"lex.ll"2724 #line 363 "lex.ll" 2717 2725 { NAMEDOP_RETURN(ATassign); } 2718 2726 YY_BREAK … … 2720 2728 case 174: 2721 2729 YY_RULE_SETUP 2722 #line 36 4"lex.ll"2730 #line 366 "lex.ll" 2723 2731 { IDENTIFIER_RETURN(); } // unary 2724 2732 YY_BREAK 2725 2733 case 175: 2726 2734 YY_RULE_SETUP 2727 #line 36 5"lex.ll"2735 #line 367 "lex.ll" 2728 2736 { IDENTIFIER_RETURN(); } 2729 2737 YY_BREAK 2730 2738 case 176: 2731 2739 YY_RULE_SETUP 2732 #line 36 6"lex.ll"2740 #line 368 "lex.ll" 2733 2741 { IDENTIFIER_RETURN(); } 2734 2742 YY_BREAK 2735 2743 case 177: 2736 2744 YY_RULE_SETUP 2737 #line 36 7"lex.ll"2745 #line 369 "lex.ll" 2738 2746 { IDENTIFIER_RETURN(); } // binary 2739 2747 YY_BREAK … … 2766 2774 case 178: 2767 2775 YY_RULE_SETUP 2768 #line 39 4"lex.ll"2776 #line 396 "lex.ll" 2769 2777 { 2770 2778 // 1 or 2 character unary operator ? … … 2781 2789 case 179: 2782 2790 YY_RULE_SETUP 2783 #line 40 6"lex.ll"2791 #line 408 "lex.ll" 2784 2792 { printf("unknown character(s):\"%s\" on line %d\n", yytext, yylineno); } 2785 2793 YY_BREAK 2786 2794 case 180: 2787 2795 YY_RULE_SETUP 2788 #line 4 08"lex.ll"2796 #line 410 "lex.ll" 2789 2797 ECHO; 2790 2798 YY_BREAK 2791 #line 2 792"Parser/lex.cc"2799 #line 2800 "Parser/lex.cc" 2792 2800 case YY_STATE_EOF(INITIAL): 2793 2801 case YY_STATE_EOF(COMMENT): … … 3764 3772 #define YYTABLES_NAME "yytables" 3765 3773 3766 #line 4 08"lex.ll"3774 #line 410 "lex.ll" 3767 3775 3768 3776 -
src/Parser/lex.h
ra752883 r984dce6 10 10 // Created On : Sat Sep 22 08:58:10 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Jun 8 20:28:48 201513 // Update Count : 34 112 // Last Modified On : Mon Mar 21 18:18:06 2016 13 // Update Count : 346 14 14 // 15 15 … … 20 20 void yyerror( const char * ); 21 21 22 #include <string> 23 #include "ParseNode.h" 22 24 // External declarations for information sharing between lexer and scanner 23 #include "TypedefTable.h" 25 class TypedefTable; 24 26 extern TypedefTable typedefTable; 25 27 -
src/Parser/lex.ll
ra752883 r984dce6 10 10 * Created On : Sat Sep 22 08:58:10 2001 11 11 * Last Modified By : Peter A. Buhr 12 * Last Modified On : Wed Mar 2 18:07:20201613 * Update Count : 4 3412 * Last Modified On : Mon Mar 21 23:33:46 2016 13 * Update Count : 450 14 14 */ 15 15 … … 27 27 28 28 #include "lex.h" 29 #include "parser.h" // YACC generated definitions based on C++ grammar 29 30 #include "ParseNode.h" 30 #include " parser.h" // YACC generated definitions based on C++ grammar31 #include "TypedefTable.h" 31 32 32 33 char *yyfilename; … … 44 45 #define NUMERIC_RETURN(x) rm_underscore(); RETURN_VAL( x ) // numeric constant 45 46 #define KEYWORD_RETURN(x) RETURN_CHAR( x ) // keyword 46 #define IDENTIFIER_RETURN() RETURN_VAL( (typedefTable.isIdentifier( yytext ) ? IDENTIFIER : typedefTable.isTypedef( yytext ) ? TYPEDEFname : TYPEGENname) )47 #define IDENTIFIER_RETURN() RETURN_VAL( typedefTable.isKind( yytext ) ) 47 48 #define ATTRIBUTE_RETURN() RETURN_VAL( ATTR_IDENTIFIER ) 48 49 … … 95 96 fractional_constant ({decimal_digits}?"."{decimal_digits})|({decimal_digits}".") 96 97 exponent "_"?[eE]"_"?[+-]?{decimal_digits} 97 // GCC: D (double), LD (long double) and iI (imaginary) suffixes 98 floating_suffix "_"?([fFdD]?|([lL]?)|([iI][lLfFdD]?)|([lLfFdD][iI])) 98 // GCC: D (double), DL (long double) and iI (imaginary) suffixes 99 floating_suffix "_"?([fFdDlL][iI]?|"DL"|[iI][lLfFdD]?) 100 //floating_suffix "_"?([fFdD]|[lL]|[D][L])|([iI][lLfFdD])|([lLfFdD][iI])) 99 101 floating_constant (({fractional_constant}{exponent}?)|({decimal_digits}{exponent})){floating_suffix}? 100 102 -
src/Parser/parser.cc
ra752883 r984dce6 77 77 #include <cstdio> 78 78 #include <stack> 79 #include "lex.h" 80 #include "parser.h" 81 #include "ParseNode.h" 79 82 #include "TypedefTable.h" 80 #include "lex.h"81 #include "ParseNode.h"82 83 #include "TypeData.h" 83 84 #include "LinkageSpec.h" … … 90 91 91 92 /* Line 268 of yacc.c */ 92 #line 9 3"Parser/parser.cc"93 #line 94 "Parser/parser.cc" 93 94 94 95 /* Enabling traces. */ … … 341 342 342 343 /* Line 293 of yacc.c */ 343 #line 11 1"parser.yy"344 #line 112 "parser.yy" 344 345 345 346 Token tok; … … 358 359 359 360 /* Line 293 of yacc.c */ 360 #line 36 1"Parser/parser.cc"361 #line 362 "Parser/parser.cc" 361 362 } YYSTYPE; 362 363 # define YYSTYPE_IS_TRIVIAL 1 … … 370 371 371 372 /* Line 343 of yacc.c */ 372 #line 37 3"Parser/parser.cc"373 #line 374 "Parser/parser.cc" 373 374 374 375 #ifdef short … … 1015 1016 static const yytype_uint16 yyrline[] = 1016 1017 { 1017 0, 29 1, 291, 297, 306, 307, 308, 312, 313, 314,1018 31 8, 319, 323, 324, 328, 329, 333, 334, 340, 342,1019 34 4, 346, 351, 352, 358, 362, 364, 365, 367, 368,1020 37 0, 372, 374, 382, 383, 389, 390, 391, 396, 398,1021 40 3, 404, 408, 412, 414, 416, 418, 423, 426, 428,1022 43 0, 432, 434, 436, 438, 440, 446, 448, 450, 452,1023 45 4, 456, 458, 460, 462, 467, 468, 469, 470, 474,1024 47 5, 477, 482, 483, 485, 487, 492, 493, 495, 500,1025 50 1, 503, 508, 509, 511, 513, 515, 520, 521, 523,1026 52 8, 529, 534, 535, 540, 541, 546, 547, 552, 553,1027 55 8, 559, 561, 563, 568, 573, 574, 576, 578, 584,1028 58 5, 591, 593, 595, 597, 602, 603, 608, 609, 610,1029 61 1, 612, 613, 614, 615, 616, 617, 621, 622, 628,1030 6 29, 635, 636, 637, 638, 639, 640, 641, 642, 643,1031 65 2, 659, 661, 671, 672, 677, 679, 681, 683, 687,1032 68 8, 693, 698, 701, 703, 705, 710, 712, 720, 721,1033 72 3, 727, 728, 733, 734, 739, 740, 744, 749, 750,1034 75 4, 756, 762, 763, 767, 769, 771, 773, 779, 780,1035 78 4, 785, 789, 791, 793, 798, 800, 805, 807, 811,1036 81 4, 818, 821, 825, 827, 831, 833, 840, 842, 844,1037 85 3, 855, 857, 859, 861, 866, 868, 870, 872, 877,1038 89 0, 891, 896, 898, 903, 907, 909, 911, 913, 915,1039 92 1, 922, 928, 929, 933, 934, 939, 941, 947, 948,1040 95 0, 955, 957, 964, 966, 970, 971, 976, 978, 982,1041 98 3, 987, 989, 993, 994, 998, 999, 1003, 1004, 1019,1042 102 0, 1021, 1022, 1023, 1027, 1032, 1039, 1049, 1054, 1059,1043 106 7, 1072, 1077, 1082, 1087, 1095, 1117, 1122, 1129, 1131,1044 113 8, 1143, 1148, 1159, 1164, 1169, 1174, 1179, 1188, 1193,1045 120 1, 1202, 1203, 1204, 1210, 1215, 1223, 1224, 1225, 1226,1046 123 0, 1231, 1232, 1233, 1238, 1239, 1248, 1249, 1254, 1255,1047 126 0, 1262, 1264, 1266, 1268, 1271, 1270, 1282, 1283, 1285,1048 129 5, 1296, 1301, 1305, 1307, 1309, 1311, 1313, 1315, 1317,1049 13 19, 1324, 1326, 1328, 1330, 1332, 1334, 1336, 1338, 1340,1050 134 2, 1344, 1346, 1348, 1354, 1355, 1357, 1359, 1361, 1366,1051 136 7, 1373, 1374, 1376, 1378, 1383, 1385, 1387, 1389, 1394,1052 139 5, 1397, 1399, 1404, 1405, 1407, 1412, 1413, 1415, 1417,1053 142 2, 1424, 1426, 1431, 1432, 1436, 1438, 1440, 1442, 1444,1054 14 49, 1451, 1456, 1458, 1463, 1464, 1466, 1467, 1472, 1473,1055 147 5, 1477, 1482, 1484, 1490, 1491, 1493, 1496, 1499, 1504,1056 150 5, 1510, 1515, 1519, 1521, 1523, 1528, 1530, 1536, 1537,1057 154 5, 1546, 1550, 1551, 1552, 1554, 1556, 1563, 1564, 1566,1058 156 8, 1573, 1574, 1580, 1581, 1585, 1586, 1591, 1592, 1593,1059 159 5, 1603, 1604, 1606, 1609, 1611, 1615, 1616, 1617, 1619,1060 162 1, 1625, 1630, 1638, 1639, 1648, 1650, 1655, 1656, 1657,1061 166 1, 1662, 1663, 1667, 1668, 1669, 1673, 1674, 1675, 1680,1062 168 1, 1682, 1683, 1689, 1690, 1692, 1697, 1698, 1703, 1704,1063 170 5, 1706, 1707, 1722, 1723, 1728, 1729, 1737, 1739, 1741,1064 174 4, 1746, 1748, 1771, 1772, 1774, 1776, 1781, 1782, 1784,1065 17 89, 1794, 1795, 1801, 1800, 1804, 1808, 1810, 1812, 1818,1066 18 19, 1824, 1829, 1831, 1836, 1838, 1839, 1841, 1846, 1848,1067 185 0, 1855, 1857, 1862, 1867, 1875, 1881, 1880, 1894, 1895,1068 190 0, 1901, 1905, 1910, 1915, 1923, 1928, 1939, 1940, 1951,1069 195 2, 1958, 1959, 1963, 1964, 1965, 1968, 1967, 1978, 1983,1070 198 8, 1994, 2003, 2009, 2015, 2021, 2027, 2035, 2041, 2049,1071 205 5, 2064, 2065, 2066, 2070, 2074, 2076, 2081, 2082, 2086,1072 208 7, 2092, 2098, 2099, 2102, 2104, 2105, 2109, 2110, 2111,1073 211 2, 2146, 2148, 2149, 2151, 2156, 2161, 2166, 2168, 2170,1074 217 5, 2177, 2179, 2181, 2186, 2188, 2198, 2200, 2201, 2206,1075 220 8, 2210, 2215, 2217, 2219, 2224, 2226, 2228, 2237, 2238,1076 22 39, 2243, 2245, 2247, 2252, 2254, 2256, 2261, 2263, 2265,1077 228 0, 2282, 2283, 2285, 2290, 2291, 2296, 2298, 2300, 2305,1078 230 7, 2309, 2311, 2316, 2318, 2320, 2330, 2332, 2333, 2335,1079 234 0, 2342, 2344, 2349, 2351, 2353, 2355, 2360, 2362, 2364,1080 239 5, 2397, 2398, 2400, 2405, 2410, 2418, 2420, 2422, 2427,1081 24 29, 2434, 2436, 2450, 2451, 2453, 2458, 2460, 2462, 2464,1082 246 6, 2471, 2472, 2474, 2476, 2481, 2483, 2485, 2491, 2493,1083 249 5, 2499, 2501, 2503, 2505, 2519, 2520, 2522, 2527, 2529,1084 253 1, 2533, 2535, 2540, 2541, 2543, 2545, 2550, 2552, 2554,1085 256 0, 2561, 2563, 2572, 2575, 2577, 2580, 2582, 2584, 2597,1086 259 8, 2600, 2605, 2607, 2609, 2611, 2613, 2618, 2619, 2621,1087 262 3, 2628, 2630, 2638, 2639, 2640, 2645, 2646, 2650, 2652,1088 265 4, 2656, 2658, 2660, 2667, 2669, 2671, 2673, 2675, 2677,1089 26 79, 2681, 2683, 2685, 2690, 2692, 2694, 2699, 2725, 2726,1090 272 8, 2732, 2733, 2737, 2739, 2741, 2743, 2745, 2747, 2754,1091 275 6, 2758, 2760, 2762, 2764, 2769, 2774, 2776, 2778, 2796,1092 279 8, 2803, 28041018 0, 292, 292, 298, 307, 308, 309, 313, 314, 315, 1019 319, 320, 324, 325, 329, 330, 334, 335, 341, 343, 1020 345, 347, 352, 353, 359, 363, 365, 366, 368, 369, 1021 371, 373, 375, 383, 384, 390, 391, 392, 397, 399, 1022 404, 405, 409, 413, 415, 417, 419, 424, 427, 429, 1023 431, 433, 435, 437, 439, 441, 447, 449, 451, 453, 1024 455, 457, 459, 461, 463, 468, 469, 470, 471, 475, 1025 476, 478, 483, 484, 486, 488, 493, 494, 496, 501, 1026 502, 504, 509, 510, 512, 514, 516, 521, 522, 524, 1027 529, 530, 535, 536, 541, 542, 547, 548, 553, 554, 1028 559, 560, 562, 564, 569, 574, 575, 577, 579, 585, 1029 586, 592, 594, 596, 598, 603, 604, 609, 610, 611, 1030 612, 613, 614, 615, 616, 617, 618, 622, 623, 629, 1031 630, 636, 637, 638, 639, 640, 641, 642, 643, 644, 1032 653, 660, 662, 672, 673, 678, 680, 682, 684, 688, 1033 689, 694, 699, 702, 704, 706, 711, 713, 721, 722, 1034 724, 728, 729, 734, 735, 740, 741, 745, 750, 751, 1035 755, 757, 763, 764, 768, 770, 772, 774, 780, 781, 1036 785, 786, 790, 792, 794, 799, 801, 806, 808, 812, 1037 815, 819, 822, 826, 828, 832, 834, 841, 843, 845, 1038 854, 856, 858, 860, 862, 867, 869, 871, 873, 878, 1039 891, 892, 897, 899, 904, 908, 910, 912, 914, 916, 1040 922, 923, 929, 930, 934, 935, 940, 942, 948, 949, 1041 951, 956, 958, 965, 967, 971, 972, 977, 979, 983, 1042 984, 988, 990, 994, 995, 999, 1000, 1004, 1005, 1020, 1043 1021, 1022, 1023, 1024, 1028, 1033, 1040, 1050, 1055, 1060, 1044 1068, 1073, 1078, 1083, 1088, 1096, 1118, 1123, 1130, 1132, 1045 1139, 1144, 1149, 1160, 1165, 1170, 1175, 1180, 1189, 1194, 1046 1202, 1203, 1204, 1205, 1211, 1216, 1224, 1225, 1226, 1227, 1047 1231, 1232, 1233, 1234, 1239, 1240, 1249, 1250, 1255, 1256, 1048 1261, 1263, 1265, 1267, 1269, 1272, 1271, 1283, 1284, 1286, 1049 1296, 1297, 1302, 1306, 1308, 1310, 1312, 1314, 1316, 1318, 1050 1320, 1325, 1327, 1329, 1331, 1333, 1335, 1337, 1339, 1341, 1051 1343, 1345, 1347, 1349, 1355, 1356, 1358, 1360, 1362, 1367, 1052 1368, 1374, 1375, 1377, 1379, 1384, 1386, 1388, 1390, 1395, 1053 1396, 1398, 1400, 1405, 1406, 1408, 1413, 1414, 1416, 1418, 1054 1423, 1425, 1427, 1432, 1433, 1437, 1439, 1441, 1443, 1445, 1055 1450, 1452, 1457, 1459, 1464, 1465, 1467, 1468, 1473, 1474, 1056 1476, 1478, 1483, 1485, 1491, 1492, 1494, 1497, 1500, 1505, 1057 1506, 1511, 1516, 1520, 1522, 1524, 1529, 1531, 1537, 1538, 1058 1546, 1547, 1551, 1552, 1553, 1555, 1557, 1564, 1565, 1567, 1059 1569, 1574, 1575, 1581, 1582, 1586, 1587, 1592, 1593, 1594, 1060 1596, 1604, 1605, 1607, 1610, 1612, 1616, 1617, 1618, 1620, 1061 1622, 1626, 1631, 1639, 1640, 1649, 1651, 1656, 1657, 1658, 1062 1662, 1663, 1664, 1668, 1669, 1670, 1674, 1675, 1676, 1681, 1063 1682, 1683, 1684, 1690, 1691, 1693, 1698, 1699, 1704, 1705, 1064 1706, 1707, 1708, 1723, 1724, 1729, 1730, 1738, 1740, 1742, 1065 1745, 1747, 1749, 1772, 1773, 1775, 1777, 1782, 1783, 1785, 1066 1790, 1795, 1796, 1802, 1801, 1805, 1809, 1811, 1813, 1819, 1067 1820, 1825, 1830, 1832, 1837, 1839, 1840, 1842, 1847, 1849, 1068 1851, 1856, 1858, 1863, 1868, 1876, 1882, 1881, 1895, 1896, 1069 1901, 1902, 1906, 1911, 1916, 1924, 1929, 1940, 1941, 1952, 1070 1953, 1959, 1960, 1964, 1965, 1966, 1969, 1968, 1979, 1984, 1071 1989, 1995, 2004, 2010, 2016, 2022, 2028, 2036, 2042, 2050, 1072 2056, 2065, 2066, 2067, 2071, 2075, 2077, 2082, 2083, 2087, 1073 2088, 2093, 2099, 2100, 2103, 2105, 2106, 2110, 2111, 2112, 1074 2113, 2147, 2149, 2150, 2152, 2157, 2162, 2167, 2169, 2171, 1075 2176, 2178, 2180, 2182, 2187, 2189, 2199, 2201, 2202, 2207, 1076 2209, 2211, 2216, 2218, 2220, 2225, 2227, 2229, 2238, 2239, 1077 2240, 2244, 2246, 2248, 2253, 2255, 2257, 2262, 2264, 2266, 1078 2281, 2283, 2284, 2286, 2291, 2292, 2297, 2299, 2301, 2306, 1079 2308, 2310, 2312, 2317, 2319, 2321, 2331, 2333, 2334, 2336, 1080 2341, 2343, 2345, 2350, 2352, 2354, 2356, 2361, 2363, 2365, 1081 2396, 2398, 2399, 2401, 2406, 2411, 2419, 2421, 2423, 2428, 1082 2430, 2435, 2437, 2451, 2452, 2454, 2459, 2461, 2463, 2465, 1083 2467, 2472, 2473, 2475, 2477, 2482, 2484, 2486, 2492, 2494, 1084 2496, 2500, 2502, 2504, 2506, 2520, 2521, 2523, 2528, 2530, 1085 2532, 2534, 2536, 2541, 2542, 2544, 2546, 2551, 2553, 2555, 1086 2561, 2562, 2564, 2573, 2576, 2578, 2581, 2583, 2585, 2598, 1087 2599, 2601, 2606, 2608, 2610, 2612, 2614, 2619, 2620, 2622, 1088 2624, 2629, 2631, 2639, 2640, 2641, 2646, 2647, 2651, 2653, 1089 2655, 2657, 2659, 2661, 2668, 2670, 2672, 2674, 2676, 2678, 1090 2680, 2682, 2684, 2686, 2691, 2693, 2695, 2700, 2726, 2727, 1091 2729, 2733, 2734, 2738, 2740, 2742, 2744, 2746, 2748, 2755, 1092 2757, 2759, 2761, 2763, 2765, 2770, 2775, 2777, 2779, 2797, 1093 2799, 2804, 2805 1093 1094 }; 1094 1095 #endif … … 5055 5056 5056 5057 /* Line 1806 of yacc.c */ 5057 #line 29 1"parser.yy"5058 #line 292 "parser.yy" 5058 5059 { 5059 5060 typedefTable.enterScope(); … … 5064 5065 5065 5066 /* Line 1806 of yacc.c */ 5066 #line 29 7"parser.yy"5067 #line 298 "parser.yy" 5067 5068 { 5068 5069 typedefTable.leaveScope(); … … 5073 5074 5074 5075 /* Line 1806 of yacc.c */ 5075 #line 30 6"parser.yy"5076 #line 307 "parser.yy" 5076 5077 { (yyval.constant) = new ConstantNode( ConstantNode::Integer, (yyvsp[(1) - (1)].tok) ); } 5077 5078 break; … … 5080 5081 5081 5082 /* Line 1806 of yacc.c */ 5082 #line 30 7"parser.yy"5083 #line 308 "parser.yy" 5083 5084 { (yyval.constant) = new ConstantNode( ConstantNode::Float, (yyvsp[(1) - (1)].tok) ); } 5084 5085 break; … … 5087 5088 5088 5089 /* Line 1806 of yacc.c */ 5089 #line 30 8"parser.yy"5090 #line 309 "parser.yy" 5090 5091 { (yyval.constant) = new ConstantNode( ConstantNode::Character, (yyvsp[(1) - (1)].tok) ); } 5091 5092 break; … … 5094 5095 5095 5096 /* Line 1806 of yacc.c */ 5096 #line 33 3"parser.yy"5097 #line 334 "parser.yy" 5097 5098 { (yyval.constant) = new ConstantNode( ConstantNode::String, (yyvsp[(1) - (1)].tok) ); } 5098 5099 break; … … 5101 5102 5102 5103 /* Line 1806 of yacc.c */ 5103 #line 33 4"parser.yy"5104 #line 335 "parser.yy" 5104 5105 { (yyval.constant) = (yyvsp[(1) - (2)].constant)->appendstr( (yyvsp[(2) - (2)].tok) ); } 5105 5106 break; … … 5108 5109 5109 5110 /* Line 1806 of yacc.c */ 5110 #line 34 1"parser.yy"5111 #line 342 "parser.yy" 5111 5112 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (1)].tok) ); } 5112 5113 break; … … 5115 5116 5116 5117 /* Line 1806 of yacc.c */ 5117 #line 34 3"parser.yy"5118 #line 344 "parser.yy" 5118 5119 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (1)].tok) ); } 5119 5120 break; … … 5122 5123 5123 5124 /* Line 1806 of yacc.c */ 5124 #line 34 5"parser.yy"5125 #line 346 "parser.yy" 5125 5126 { (yyval.en) = (yyvsp[(2) - (3)].en); } 5126 5127 break; … … 5129 5130 5130 5131 /* Line 1806 of yacc.c */ 5131 #line 34 7"parser.yy"5132 #line 348 "parser.yy" 5132 5133 { (yyval.en) = new ValofExprNode( (yyvsp[(2) - (3)].sn) ); } 5133 5134 break; … … 5136 5137 5137 5138 /* Line 1806 of yacc.c */ 5138 #line 35 7"parser.yy"5139 #line 358 "parser.yy" 5139 5140 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Index ), (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en) ); } 5140 5141 break; … … 5143 5144 5144 5145 /* Line 1806 of yacc.c */ 5145 #line 3 59"parser.yy"5146 #line 360 "parser.yy" 5146 5147 { (yyval.en) = new CompositeExprNode( (yyvsp[(1) - (4)].en), (yyvsp[(3) - (4)].en) ); } 5147 5148 break; … … 5150 5151 5151 5152 /* Line 1806 of yacc.c */ 5152 #line 36 3"parser.yy"5153 #line 364 "parser.yy" 5153 5154 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::FieldSel ), (yyvsp[(1) - (3)].en), new VarRefNode( (yyvsp[(3) - (3)].tok) )); } 5154 5155 break; … … 5157 5158 5158 5159 /* Line 1806 of yacc.c */ 5159 #line 36 6"parser.yy"5160 #line 367 "parser.yy" 5160 5161 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::PFieldSel ), (yyvsp[(1) - (3)].en), new VarRefNode( (yyvsp[(3) - (3)].tok) )); } 5161 5162 break; … … 5164 5165 5165 5166 /* Line 1806 of yacc.c */ 5166 #line 3 69"parser.yy"5167 #line 370 "parser.yy" 5167 5168 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::IncrPost ), (yyvsp[(1) - (2)].en) ); } 5168 5169 break; … … 5171 5172 5172 5173 /* Line 1806 of yacc.c */ 5173 #line 37 1"parser.yy"5174 #line 372 "parser.yy" 5174 5175 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::DecrPost ), (yyvsp[(1) - (2)].en) ); } 5175 5176 break; … … 5178 5179 5179 5180 /* Line 1806 of yacc.c */ 5180 #line 37 3"parser.yy"5181 #line 374 "parser.yy" 5181 5182 { (yyval.en) = 0; } 5182 5183 break; … … 5185 5186 5186 5187 /* Line 1806 of yacc.c */ 5187 #line 37 5"parser.yy"5188 #line 376 "parser.yy" 5188 5189 { 5189 5190 Token fn; fn.str = new std::string( "?{}" ); // location undefined … … 5195 5196 5196 5197 /* Line 1806 of yacc.c */ 5197 #line 38 4"parser.yy"5198 #line 385 "parser.yy" 5198 5199 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) )); } 5199 5200 break; … … 5202 5203 5203 5204 /* Line 1806 of yacc.c */ 5204 #line 3 89"parser.yy"5205 #line 390 "parser.yy" 5205 5206 { (yyval.en) = 0; } 5206 5207 break; … … 5209 5210 5210 5211 /* Line 1806 of yacc.c */ 5211 #line 39 2"parser.yy"5212 #line 393 "parser.yy" 5212 5213 { (yyval.en) = (yyvsp[(3) - (3)].en)->set_argName( (yyvsp[(1) - (3)].tok) ); } 5213 5214 break; … … 5216 5217 5217 5218 /* Line 1806 of yacc.c */ 5218 #line 39 7"parser.yy"5219 #line 398 "parser.yy" 5219 5220 { (yyval.en) = (yyvsp[(7) - (7)].en)->set_argName( (yyvsp[(3) - (7)].en) ); } 5220 5221 break; … … 5223 5224 5224 5225 /* Line 1806 of yacc.c */ 5225 #line 399"parser.yy"5226 #line 400 "parser.yy" 5226 5227 { (yyval.en) = (yyvsp[(9) - (9)].en)->set_argName( new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(yyvsp[(3) - (9)].en)->set_link( flattenCommas( (yyvsp[(5) - (9)].en) )))); } 5227 5228 break; … … 5230 5231 5231 5232 /* Line 1806 of yacc.c */ 5232 #line 40 4"parser.yy"5233 #line 405 "parser.yy" 5233 5234 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); } 5234 5235 break; … … 5237 5238 5238 5239 /* Line 1806 of yacc.c */ 5239 #line 4 09"parser.yy"5240 #line 410 "parser.yy" 5240 5241 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (1)].tok) ); } 5241 5242 break; … … 5244 5245 5245 5246 /* Line 1806 of yacc.c */ 5246 #line 41 3"parser.yy"5247 #line 414 "parser.yy" 5247 5248 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::FieldSel ), new VarRefNode( (yyvsp[(1) - (3)].tok) ), (yyvsp[(3) - (3)].en) ); } 5248 5249 break; … … 5251 5252 5252 5253 /* Line 1806 of yacc.c */ 5253 #line 41 5"parser.yy"5254 #line 416 "parser.yy" 5254 5255 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::FieldSel ), new VarRefNode( (yyvsp[(1) - (7)].tok) ), (yyvsp[(5) - (7)].en) ); } 5255 5256 break; … … 5258 5259 5259 5260 /* Line 1806 of yacc.c */ 5260 #line 41 7"parser.yy"5261 #line 418 "parser.yy" 5261 5262 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::PFieldSel ), new VarRefNode( (yyvsp[(1) - (3)].tok) ), (yyvsp[(3) - (3)].en) ); } 5262 5263 break; … … 5265 5266 5266 5267 /* Line 1806 of yacc.c */ 5267 #line 4 19"parser.yy"5268 #line 420 "parser.yy" 5268 5269 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::PFieldSel ), new VarRefNode( (yyvsp[(1) - (7)].tok) ), (yyvsp[(5) - (7)].en) ); } 5269 5270 break; … … 5272 5273 5273 5274 /* Line 1806 of yacc.c */ 5274 #line 42 7"parser.yy"5275 #line 428 "parser.yy" 5275 5276 { (yyval.en) = (yyvsp[(1) - (1)].constant); } 5276 5277 break; … … 5279 5280 5280 5281 /* Line 1806 of yacc.c */ 5281 #line 4 29"parser.yy"5282 #line 430 "parser.yy" 5282 5283 { (yyval.en) = (yyvsp[(1) - (1)].constant); } 5283 5284 break; … … 5286 5287 5287 5288 /* Line 1806 of yacc.c */ 5288 #line 43 1"parser.yy"5289 #line 432 "parser.yy" 5289 5290 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Incr ), (yyvsp[(2) - (2)].en) ); } 5290 5291 break; … … 5293 5294 5294 5295 /* Line 1806 of yacc.c */ 5295 #line 43 3"parser.yy"5296 #line 434 "parser.yy" 5296 5297 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Decr ), (yyvsp[(2) - (2)].en) ); } 5297 5298 break; … … 5300 5301 5301 5302 /* Line 1806 of yacc.c */ 5302 #line 43 5"parser.yy"5303 #line 436 "parser.yy" 5303 5304 { (yyval.en) = (yyvsp[(2) - (2)].en); } 5304 5305 break; … … 5307 5308 5308 5309 /* Line 1806 of yacc.c */ 5309 #line 43 7"parser.yy"5310 #line 438 "parser.yy" 5310 5311 { (yyval.en) = new CompositeExprNode( (yyvsp[(1) - (2)].en), (yyvsp[(2) - (2)].en) ); } 5311 5312 break; … … 5314 5315 5315 5316 /* Line 1806 of yacc.c */ 5316 #line 4 39"parser.yy"5317 #line 440 "parser.yy" 5317 5318 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Neg ), (yyvsp[(2) - (2)].en) ); } 5318 5319 break; … … 5321 5322 5322 5323 /* Line 1806 of yacc.c */ 5323 #line 44 1"parser.yy"5324 #line 442 "parser.yy" 5324 5325 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::PointTo ), (yyvsp[(2) - (2)].en) ); } 5325 5326 break; … … 5328 5329 5329 5330 /* Line 1806 of yacc.c */ 5330 #line 44 7"parser.yy"5331 #line 448 "parser.yy" 5331 5332 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::SizeOf ), (yyvsp[(2) - (2)].en) ); } 5332 5333 break; … … 5335 5336 5336 5337 /* Line 1806 of yacc.c */ 5337 #line 4 49"parser.yy"5338 #line 450 "parser.yy" 5338 5339 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::SizeOf ), new TypeValueNode( (yyvsp[(3) - (4)].decl) )); } 5339 5340 break; … … 5342 5343 5343 5344 /* Line 1806 of yacc.c */ 5344 #line 45 1"parser.yy"5345 #line 452 "parser.yy" 5345 5346 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::OffsetOf ), new TypeValueNode( (yyvsp[(3) - (6)].decl) ), new VarRefNode( (yyvsp[(5) - (6)].tok) )); } 5346 5347 break; … … 5349 5350 5350 5351 /* Line 1806 of yacc.c */ 5351 #line 45 3"parser.yy"5352 #line 454 "parser.yy" 5352 5353 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Attr ), new VarRefNode( (yyvsp[(1) - (1)].tok) )); } 5353 5354 break; … … 5356 5357 5357 5358 /* Line 1806 of yacc.c */ 5358 #line 45 5"parser.yy"5359 #line 456 "parser.yy" 5359 5360 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Attr ), new VarRefNode( (yyvsp[(1) - (4)].tok) ), new TypeValueNode( (yyvsp[(3) - (4)].decl) )); } 5360 5361 break; … … 5363 5364 5364 5365 /* Line 1806 of yacc.c */ 5365 #line 45 7"parser.yy"5366 #line 458 "parser.yy" 5366 5367 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Attr ), new VarRefNode( (yyvsp[(1) - (4)].tok) ), (yyvsp[(3) - (4)].en) ); } 5367 5368 break; … … 5370 5371 5371 5372 /* Line 1806 of yacc.c */ 5372 #line 4 59"parser.yy"5373 #line 460 "parser.yy" 5373 5374 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::AlignOf ), (yyvsp[(2) - (2)].en) ); } 5374 5375 break; … … 5377 5378 5378 5379 /* Line 1806 of yacc.c */ 5379 #line 46 1"parser.yy"5380 #line 462 "parser.yy" 5380 5381 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::AlignOf ), new TypeValueNode( (yyvsp[(3) - (4)].decl) ) ); } 5381 5382 break; … … 5384 5385 5385 5386 /* Line 1806 of yacc.c */ 5386 #line 46 3"parser.yy"5387 #line 464 "parser.yy" 5387 5388 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LabelAddress ), new VarRefNode( (yyvsp[(2) - (2)].tok), true ) ); } 5388 5389 break; … … 5391 5392 5392 5393 /* Line 1806 of yacc.c */ 5393 #line 46 7"parser.yy"5394 #line 468 "parser.yy" 5394 5395 { (yyval.en) = new OperatorNode( OperatorNode::AddressOf ); } 5395 5396 break; … … 5398 5399 5399 5400 /* Line 1806 of yacc.c */ 5400 #line 46 8"parser.yy"5401 #line 469 "parser.yy" 5401 5402 { (yyval.en) = new OperatorNode( OperatorNode::UnPlus ); } 5402 5403 break; … … 5405 5406 5406 5407 /* Line 1806 of yacc.c */ 5407 #line 4 69"parser.yy"5408 #line 470 "parser.yy" 5408 5409 { (yyval.en) = new OperatorNode( OperatorNode::UnMinus ); } 5409 5410 break; … … 5412 5413 5413 5414 /* Line 1806 of yacc.c */ 5414 #line 47 0"parser.yy"5415 #line 471 "parser.yy" 5415 5416 { (yyval.en) = new OperatorNode( OperatorNode::BitNeg ); } 5416 5417 break; … … 5419 5420 5420 5421 /* Line 1806 of yacc.c */ 5421 #line 47 6"parser.yy"5422 #line 477 "parser.yy" 5422 5423 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cast ), new TypeValueNode( (yyvsp[(2) - (4)].decl) ), (yyvsp[(4) - (4)].en) ); } 5423 5424 break; … … 5426 5427 5427 5428 /* Line 1806 of yacc.c */ 5428 #line 47 8"parser.yy"5429 #line 479 "parser.yy" 5429 5430 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cast ), new TypeValueNode( (yyvsp[(2) - (4)].decl) ), (yyvsp[(4) - (4)].en) ); } 5430 5431 break; … … 5433 5434 5434 5435 /* Line 1806 of yacc.c */ 5435 #line 48 4"parser.yy"5436 #line 485 "parser.yy" 5436 5437 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Mul ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5437 5438 break; … … 5440 5441 5441 5442 /* Line 1806 of yacc.c */ 5442 #line 48 6"parser.yy"5443 #line 487 "parser.yy" 5443 5444 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Div ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5444 5445 break; … … 5447 5448 5448 5449 /* Line 1806 of yacc.c */ 5449 #line 48 8"parser.yy"5450 #line 489 "parser.yy" 5450 5451 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Mod ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5451 5452 break; … … 5454 5455 5455 5456 /* Line 1806 of yacc.c */ 5456 #line 49 4"parser.yy"5457 #line 495 "parser.yy" 5457 5458 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Plus ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5458 5459 break; … … 5461 5462 5462 5463 /* Line 1806 of yacc.c */ 5463 #line 49 6"parser.yy"5464 #line 497 "parser.yy" 5464 5465 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Minus ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5465 5466 break; … … 5468 5469 5469 5470 /* Line 1806 of yacc.c */ 5470 #line 50 2"parser.yy"5471 #line 503 "parser.yy" 5471 5472 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LShift ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5472 5473 break; … … 5475 5476 5476 5477 /* Line 1806 of yacc.c */ 5477 #line 50 4"parser.yy"5478 #line 505 "parser.yy" 5478 5479 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::RShift ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5479 5480 break; … … 5482 5483 5483 5484 /* Line 1806 of yacc.c */ 5484 #line 51 0"parser.yy"5485 #line 511 "parser.yy" 5485 5486 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5486 5487 break; … … 5489 5490 5490 5491 /* Line 1806 of yacc.c */ 5491 #line 51 2"parser.yy"5492 #line 513 "parser.yy" 5492 5493 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::GThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5493 5494 break; … … 5496 5497 5497 5498 /* Line 1806 of yacc.c */ 5498 #line 51 4"parser.yy"5499 #line 515 "parser.yy" 5499 5500 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::LEThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5500 5501 break; … … 5503 5504 5504 5505 /* Line 1806 of yacc.c */ 5505 #line 51 6"parser.yy"5506 #line 517 "parser.yy" 5506 5507 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::GEThan ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5507 5508 break; … … 5510 5511 5511 5512 /* Line 1806 of yacc.c */ 5512 #line 52 2"parser.yy"5513 #line 523 "parser.yy" 5513 5514 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Eq ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5514 5515 break; … … 5517 5518 5518 5519 /* Line 1806 of yacc.c */ 5519 #line 52 4"parser.yy"5520 #line 525 "parser.yy" 5520 5521 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Neq ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5521 5522 break; … … 5524 5525 5525 5526 /* Line 1806 of yacc.c */ 5526 #line 53 0"parser.yy"5527 #line 531 "parser.yy" 5527 5528 { (yyval.en) =new CompositeExprNode( new OperatorNode( OperatorNode::BitAnd ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5528 5529 break; … … 5531 5532 5532 5533 /* Line 1806 of yacc.c */ 5533 #line 53 6"parser.yy"5534 #line 537 "parser.yy" 5534 5535 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Xor ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5535 5536 break; … … 5538 5539 5539 5540 /* Line 1806 of yacc.c */ 5540 #line 54 2"parser.yy"5541 #line 543 "parser.yy" 5541 5542 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::BitOr ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5542 5543 break; … … 5545 5546 5546 5547 /* Line 1806 of yacc.c */ 5547 #line 54 8"parser.yy"5548 #line 549 "parser.yy" 5548 5549 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::And ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5549 5550 break; … … 5552 5553 5553 5554 /* Line 1806 of yacc.c */ 5554 #line 55 4"parser.yy"5555 #line 555 "parser.yy" 5555 5556 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Or ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5556 5557 break; … … 5559 5560 5560 5561 /* Line 1806 of yacc.c */ 5561 #line 56 0"parser.yy"5562 #line 561 "parser.yy" 5562 5563 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cond ), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en) ) ) ); } 5563 5564 break; … … 5566 5567 5567 5568 /* Line 1806 of yacc.c */ 5568 #line 56 2"parser.yy"5569 #line 563 "parser.yy" 5569 5570 { (yyval.en)=new CompositeExprNode( new OperatorNode( OperatorNode::NCond ), (yyvsp[(1) - (4)].en), (yyvsp[(4) - (4)].en) ); } 5570 5571 break; … … 5573 5574 5574 5575 /* Line 1806 of yacc.c */ 5575 #line 56 4"parser.yy"5576 #line 565 "parser.yy" 5576 5577 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Cond ), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en) ) ) ); } 5577 5578 break; … … 5580 5581 5581 5582 /* Line 1806 of yacc.c */ 5582 #line 57 5"parser.yy"5583 #line 576 "parser.yy" 5583 5584 { (yyval.en) =new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5584 5585 break; … … 5587 5588 5588 5589 /* Line 1806 of yacc.c */ 5589 #line 57 7"parser.yy"5590 #line 578 "parser.yy" 5590 5591 { (yyval.en) =new CompositeExprNode( (yyvsp[(2) - (3)].en), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5591 5592 break; … … 5594 5595 5595 5596 /* Line 1806 of yacc.c */ 5596 #line 5 79"parser.yy"5597 #line 580 "parser.yy" 5597 5598 { (yyval.en) = ( (yyvsp[(2) - (2)].en) == 0 ) ? (yyvsp[(1) - (2)].en) : new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (2)].en), (yyvsp[(2) - (2)].en) ); } 5598 5599 break; … … 5601 5602 5602 5603 /* Line 1806 of yacc.c */ 5603 #line 58 4"parser.yy"5604 #line 585 "parser.yy" 5604 5605 { (yyval.en) = new NullExprNode; } 5605 5606 break; … … 5608 5609 5609 5610 /* Line 1806 of yacc.c */ 5610 #line 59 2"parser.yy"5611 #line 593 "parser.yy" 5611 5612 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ) ); } 5612 5613 break; … … 5615 5616 5616 5617 /* Line 1806 of yacc.c */ 5617 #line 59 4"parser.yy"5618 #line 595 "parser.yy" 5618 5619 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (yyvsp[(3) - (5)].en) ); } 5619 5620 break; … … 5622 5623 5623 5624 /* Line 1806 of yacc.c */ 5624 #line 59 6"parser.yy"5625 #line 597 "parser.yy" 5625 5626 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(new NullExprNode)->set_link( (yyvsp[(4) - (6)].en) ) ); } 5626 5627 break; … … 5629 5630 5630 5631 /* Line 1806 of yacc.c */ 5631 #line 59 8"parser.yy"5632 #line 599 "parser.yy" 5632 5633 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(yyvsp[(3) - (7)].en)->set_link( flattenCommas( (yyvsp[(5) - (7)].en) ) ) ); } 5633 5634 break; … … 5636 5637 5637 5638 /* Line 1806 of yacc.c */ 5638 #line 60 4"parser.yy"5639 #line 605 "parser.yy" 5639 5640 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); } 5640 5641 break; … … 5643 5644 5644 5645 /* Line 1806 of yacc.c */ 5645 #line 60 8"parser.yy"5646 #line 609 "parser.yy" 5646 5647 { (yyval.en) = new OperatorNode( OperatorNode::MulAssn ); } 5647 5648 break; … … 5650 5651 5651 5652 /* Line 1806 of yacc.c */ 5652 #line 6 09"parser.yy"5653 #line 610 "parser.yy" 5653 5654 { (yyval.en) = new OperatorNode( OperatorNode::DivAssn ); } 5654 5655 break; … … 5657 5658 5658 5659 /* Line 1806 of yacc.c */ 5659 #line 61 0"parser.yy"5660 #line 611 "parser.yy" 5660 5661 { (yyval.en) = new OperatorNode( OperatorNode::ModAssn ); } 5661 5662 break; … … 5664 5665 5665 5666 /* Line 1806 of yacc.c */ 5666 #line 61 1"parser.yy"5667 #line 612 "parser.yy" 5667 5668 { (yyval.en) = new OperatorNode( OperatorNode::PlusAssn ); } 5668 5669 break; … … 5671 5672 5672 5673 /* Line 1806 of yacc.c */ 5673 #line 61 2"parser.yy"5674 #line 613 "parser.yy" 5674 5675 { (yyval.en) = new OperatorNode( OperatorNode::MinusAssn ); } 5675 5676 break; … … 5678 5679 5679 5680 /* Line 1806 of yacc.c */ 5680 #line 61 3"parser.yy"5681 #line 614 "parser.yy" 5681 5682 { (yyval.en) = new OperatorNode( OperatorNode::LSAssn ); } 5682 5683 break; … … 5685 5686 5686 5687 /* Line 1806 of yacc.c */ 5687 #line 61 4"parser.yy"5688 #line 615 "parser.yy" 5688 5689 { (yyval.en) = new OperatorNode( OperatorNode::RSAssn ); } 5689 5690 break; … … 5692 5693 5693 5694 /* Line 1806 of yacc.c */ 5694 #line 61 5"parser.yy"5695 #line 616 "parser.yy" 5695 5696 { (yyval.en) = new OperatorNode( OperatorNode::AndAssn ); } 5696 5697 break; … … 5699 5700 5700 5701 /* Line 1806 of yacc.c */ 5701 #line 61 6"parser.yy"5702 #line 617 "parser.yy" 5702 5703 { (yyval.en) = new OperatorNode( OperatorNode::ERAssn ); } 5703 5704 break; … … 5706 5707 5707 5708 /* Line 1806 of yacc.c */ 5708 #line 61 7"parser.yy"5709 #line 618 "parser.yy" 5709 5710 { (yyval.en) = new OperatorNode( OperatorNode::OrAssn ); } 5710 5711 break; … … 5713 5714 5714 5715 /* Line 1806 of yacc.c */ 5715 #line 62 3"parser.yy"5716 #line 624 "parser.yy" 5716 5717 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Comma ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5717 5718 break; … … 5720 5721 5721 5722 /* Line 1806 of yacc.c */ 5722 #line 62 8"parser.yy"5723 #line 629 "parser.yy" 5723 5724 { (yyval.en) = 0; } 5724 5725 break; … … 5727 5728 5728 5729 /* Line 1806 of yacc.c */ 5729 #line 63 7"parser.yy"5730 #line 638 "parser.yy" 5730 5731 { (yyval.sn) = (yyvsp[(1) - (1)].sn); } 5731 5732 break; … … 5734 5735 5735 5736 /* Line 1806 of yacc.c */ 5736 #line 64 4"parser.yy"5737 #line 645 "parser.yy" 5737 5738 { 5738 5739 Token fn; fn.str = new std::string( "^?{}" ); // location undefined … … 5745 5746 5746 5747 /* Line 1806 of yacc.c */ 5747 #line 65 3"parser.yy"5748 #line 654 "parser.yy" 5748 5749 { 5749 5750 (yyval.sn) = (yyvsp[(4) - (4)].sn)->add_label( (yyvsp[(1) - (4)].tok) ); … … 5754 5755 5755 5756 /* Line 1806 of yacc.c */ 5756 #line 66 0"parser.yy"5757 #line 661 "parser.yy" 5757 5758 { (yyval.sn) = new CompoundStmtNode( (StatementNode *)0 ); } 5758 5759 break; … … 5761 5762 5762 5763 /* Line 1806 of yacc.c */ 5763 #line 66 7"parser.yy"5764 #line 668 "parser.yy" 5764 5765 { (yyval.sn) = new CompoundStmtNode( (yyvsp[(5) - (7)].sn) ); } 5765 5766 break; … … 5768 5769 5769 5770 /* Line 1806 of yacc.c */ 5770 #line 67 3"parser.yy"5771 #line 674 "parser.yy" 5771 5772 { if ( (yyvsp[(1) - (3)].sn) != 0 ) { (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(3) - (3)].sn) ); (yyval.sn) = (yyvsp[(1) - (3)].sn); } } 5772 5773 break; … … 5775 5776 5776 5777 /* Line 1806 of yacc.c */ 5777 #line 67 8"parser.yy"5778 #line 679 "parser.yy" 5778 5779 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5779 5780 break; … … 5782 5783 5783 5784 /* Line 1806 of yacc.c */ 5784 #line 68 0"parser.yy"5785 #line 681 "parser.yy" 5785 5786 { (yyval.sn) = new StatementNode( (yyvsp[(2) - (2)].decl) ); } 5786 5787 break; … … 5789 5790 5790 5791 /* Line 1806 of yacc.c */ 5791 #line 68 2"parser.yy"5792 #line 683 "parser.yy" 5792 5793 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5793 5794 break; … … 5796 5797 5797 5798 /* Line 1806 of yacc.c */ 5798 #line 6 89"parser.yy"5799 #line 690 "parser.yy" 5799 5800 { if ( (yyvsp[(1) - (2)].sn) != 0 ) { (yyvsp[(1) - (2)].sn)->set_link( (yyvsp[(2) - (2)].sn) ); (yyval.sn) = (yyvsp[(1) - (2)].sn); } } 5800 5801 break; … … 5803 5804 5804 5805 /* Line 1806 of yacc.c */ 5805 #line 69 4"parser.yy"5806 #line 695 "parser.yy" 5806 5807 { (yyval.sn) = new StatementNode( StatementNode::Exp, (yyvsp[(1) - (2)].en), 0 ); } 5807 5808 break; … … 5810 5811 5811 5812 /* Line 1806 of yacc.c */ 5812 #line 70 0"parser.yy"5813 #line 701 "parser.yy" 5813 5814 { (yyval.sn) = new StatementNode( StatementNode::If, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); } 5814 5815 break; … … 5817 5818 5818 5819 /* Line 1806 of yacc.c */ 5819 #line 70 2"parser.yy"5820 #line 703 "parser.yy" 5820 5821 { (yyval.sn) = new StatementNode( StatementNode::If, (yyvsp[(3) - (7)].en), (StatementNode *)mkList((*(yyvsp[(5) - (7)].sn), *(yyvsp[(7) - (7)].sn) )) ); } 5821 5822 break; … … 5824 5825 5825 5826 /* Line 1806 of yacc.c */ 5826 #line 70 4"parser.yy"5827 #line 705 "parser.yy" 5827 5828 { (yyval.sn) = new StatementNode( StatementNode::Switch, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); } 5828 5829 break; … … 5831 5832 5832 5833 /* Line 1806 of yacc.c */ 5833 #line 70 6"parser.yy"5834 #line 707 "parser.yy" 5834 5835 { (yyval.sn) = new StatementNode( StatementNode::Switch, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ); /* xxx */ } 5835 5836 break; … … 5838 5839 5839 5840 /* Line 1806 of yacc.c */ 5840 #line 71 1"parser.yy"5841 #line 712 "parser.yy" 5841 5842 { (yyval.sn) = new StatementNode( StatementNode::Choose, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); } 5842 5843 break; … … 5845 5846 5846 5847 /* Line 1806 of yacc.c */ 5847 #line 71 3"parser.yy"5848 #line 714 "parser.yy" 5848 5849 { (yyval.sn) = new StatementNode( StatementNode::Choose, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn) ); } 5849 5850 break; … … 5852 5853 5853 5854 /* Line 1806 of yacc.c */ 5854 #line 72 0"parser.yy"5855 #line 721 "parser.yy" 5855 5856 { (yyval.en) = (yyvsp[(1) - (1)].en); } 5856 5857 break; … … 5859 5860 5860 5861 /* Line 1806 of yacc.c */ 5861 #line 72 2"parser.yy"5862 #line 723 "parser.yy" 5862 5863 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 5863 5864 break; … … 5866 5867 5867 5868 /* Line 1806 of yacc.c */ 5868 #line 7 29"parser.yy"5869 #line 730 "parser.yy" 5869 5870 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(tupleContents( (yyvsp[(1) - (3)].en) ))->set_link( (yyvsp[(3) - (3)].en) ) ); } 5870 5871 break; … … 5873 5874 5874 5875 /* Line 1806 of yacc.c */ 5875 #line 73 3"parser.yy"5876 #line 734 "parser.yy" 5876 5877 { (yyval.sn) = new StatementNode( StatementNode::Case, (yyvsp[(2) - (3)].en), 0 ); } 5877 5878 break; … … 5880 5881 5881 5882 /* Line 1806 of yacc.c */ 5882 #line 73 4"parser.yy"5883 #line 735 "parser.yy" 5883 5884 { (yyval.sn) = new StatementNode( StatementNode::Default ); } 5884 5885 break; … … 5887 5888 5888 5889 /* Line 1806 of yacc.c */ 5889 #line 74 0"parser.yy"5890 #line 741 "parser.yy" 5890 5891 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (2)].sn)->set_link( (yyvsp[(2) - (2)].sn) )); } 5891 5892 break; … … 5894 5895 5895 5896 /* Line 1806 of yacc.c */ 5896 #line 74 4"parser.yy"5897 #line 745 "parser.yy" 5897 5898 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); } 5898 5899 break; … … 5901 5902 5902 5903 /* Line 1806 of yacc.c */ 5903 #line 7 49"parser.yy"5904 #line 750 "parser.yy" 5904 5905 { (yyval.sn) = 0; } 5905 5906 break; … … 5908 5909 5909 5910 /* Line 1806 of yacc.c */ 5910 #line 75 5"parser.yy"5911 #line 756 "parser.yy" 5911 5912 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); } 5912 5913 break; … … 5915 5916 5916 5917 /* Line 1806 of yacc.c */ 5917 #line 75 7"parser.yy"5918 #line 758 "parser.yy" 5918 5919 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(2) - (3)].sn)->append_last_case( (yyvsp[(3) - (3)].sn) ))); } 5919 5920 break; … … 5922 5923 5923 5924 /* Line 1806 of yacc.c */ 5924 #line 76 2"parser.yy"5925 #line 763 "parser.yy" 5925 5926 { (yyval.sn) = 0; } 5926 5927 break; … … 5929 5930 5930 5931 /* Line 1806 of yacc.c */ 5931 #line 76 8"parser.yy"5932 #line 769 "parser.yy" 5932 5933 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case( (yyvsp[(2) - (2)].sn) ); } 5933 5934 break; … … 5936 5937 5937 5938 /* Line 1806 of yacc.c */ 5938 #line 77 0"parser.yy"5939 #line 771 "parser.yy" 5939 5940 { (yyval.sn) = (yyvsp[(1) - (3)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].sn) ))); } 5940 5941 break; … … 5943 5944 5944 5945 /* Line 1806 of yacc.c */ 5945 #line 77 2"parser.yy"5946 #line 773 "parser.yy" 5946 5947 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (3)].sn)->set_link( (yyvsp[(2) - (3)].sn)->append_last_case( (yyvsp[(3) - (3)].sn) ))); } 5947 5948 break; … … 5950 5951 5951 5952 /* Line 1806 of yacc.c */ 5952 #line 77 4"parser.yy"5953 #line 775 "parser.yy" 5953 5954 { (yyval.sn) = (StatementNode *)( (yyvsp[(1) - (4)].sn)->set_link( (yyvsp[(2) - (4)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(3) - (4)].sn),*(yyvsp[(4) - (4)].sn) ))))); } 5954 5955 break; … … 5957 5958 5958 5959 /* Line 1806 of yacc.c */ 5959 #line 7 79"parser.yy"5960 #line 780 "parser.yy" 5960 5961 { (yyval.sn) = 0; } 5961 5962 break; 5962 5963 5963 5964 case 180: 5964 5965 /* Line 1806 of yacc.c */5966 #line 784 "parser.yy"5967 { (yyval.sn) = new StatementNode( StatementNode::Fallthru ); }5968 break;5969 5970 case 181:5971 5965 5972 5966 /* Line 1806 of yacc.c */ … … 5975 5969 break; 5976 5970 5971 case 181: 5972 5973 /* Line 1806 of yacc.c */ 5974 #line 786 "parser.yy" 5975 { (yyval.sn) = new StatementNode( StatementNode::Fallthru ); } 5976 break; 5977 5977 5978 case 182: 5978 5979 5979 5980 /* Line 1806 of yacc.c */ 5980 #line 79 0"parser.yy"5981 #line 791 "parser.yy" 5981 5982 { (yyval.sn) = new StatementNode( StatementNode::While, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn) ); } 5982 5983 break; … … 5985 5986 5986 5987 /* Line 1806 of yacc.c */ 5987 #line 79 2"parser.yy"5988 #line 793 "parser.yy" 5988 5989 { (yyval.sn) = new StatementNode( StatementNode::Do, (yyvsp[(5) - (7)].en), (yyvsp[(2) - (7)].sn) ); } 5989 5990 break; … … 5992 5993 5993 5994 /* Line 1806 of yacc.c */ 5994 #line 79 4"parser.yy"5995 #line 795 "parser.yy" 5995 5996 { (yyval.sn) = new StatementNode( StatementNode::For, (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].sn) ); } 5996 5997 break; … … 5999 6000 6000 6001 /* Line 1806 of yacc.c */ 6001 #line 799"parser.yy"6002 #line 800 "parser.yy" 6002 6003 { (yyval.en) = new ForCtlExprNode( (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].en) ); } 6003 6004 break; … … 6006 6007 6007 6008 /* Line 1806 of yacc.c */ 6008 #line 80 1"parser.yy"6009 #line 802 "parser.yy" 6009 6010 { (yyval.en) = new ForCtlExprNode( (yyvsp[(1) - (4)].decl), (yyvsp[(2) - (4)].en), (yyvsp[(4) - (4)].en) ); } 6010 6011 break; … … 6013 6014 6014 6015 /* Line 1806 of yacc.c */ 6015 #line 80 6"parser.yy"6016 #line 807 "parser.yy" 6016 6017 { (yyval.sn) = new StatementNode( StatementNode::Goto, (yyvsp[(2) - (3)].tok) ); } 6017 6018 break; … … 6020 6021 6021 6022 /* Line 1806 of yacc.c */ 6022 #line 81 0"parser.yy"6023 #line 811 "parser.yy" 6023 6024 { (yyval.sn) = new StatementNode( StatementNode::Goto, (yyvsp[(3) - (4)].en) ); } 6024 6025 break; … … 6027 6028 6028 6029 /* Line 1806 of yacc.c */ 6029 #line 81 3"parser.yy"6030 #line 814 "parser.yy" 6030 6031 { (yyval.sn) = new StatementNode( StatementNode::Continue ); } 6031 6032 break; … … 6034 6035 6035 6036 /* Line 1806 of yacc.c */ 6036 #line 81 7"parser.yy"6037 #line 818 "parser.yy" 6037 6038 { (yyval.sn) = new StatementNode( StatementNode::Continue, (yyvsp[(2) - (3)].tok) ); } 6038 6039 break; … … 6041 6042 6042 6043 /* Line 1806 of yacc.c */ 6043 #line 82 0"parser.yy"6044 #line 821 "parser.yy" 6044 6045 { (yyval.sn) = new StatementNode( StatementNode::Break ); } 6045 6046 break; … … 6048 6049 6049 6050 /* Line 1806 of yacc.c */ 6050 #line 82 4"parser.yy"6051 #line 825 "parser.yy" 6051 6052 { (yyval.sn) = new StatementNode( StatementNode::Break, (yyvsp[(2) - (3)].tok) ); } 6052 6053 break; … … 6055 6056 6056 6057 /* Line 1806 of yacc.c */ 6057 #line 82 6"parser.yy"6058 #line 827 "parser.yy" 6058 6059 { (yyval.sn) = new StatementNode( StatementNode::Return, (yyvsp[(2) - (3)].en), 0 ); } 6059 6060 break; … … 6062 6063 6063 6064 /* Line 1806 of yacc.c */ 6064 #line 82 8"parser.yy"6065 #line 829 "parser.yy" 6065 6066 { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (3)].en), 0 ); } 6066 6067 break; … … 6069 6070 6070 6071 /* Line 1806 of yacc.c */ 6071 #line 83 2"parser.yy"6072 #line 833 "parser.yy" 6072 6073 { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (3)].en), 0 ); } 6073 6074 break; … … 6076 6077 6077 6078 /* Line 1806 of yacc.c */ 6078 #line 83 4"parser.yy"6079 #line 835 "parser.yy" 6079 6080 { (yyval.sn) = new StatementNode( StatementNode::Throw, (yyvsp[(2) - (5)].en), 0 ); } 6080 6081 break; … … 6083 6084 6084 6085 /* Line 1806 of yacc.c */ 6085 #line 84 1"parser.yy"6086 #line 842 "parser.yy" 6086 6087 { (yyval.sn) = new StatementNode( StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn) )))); } 6087 6088 break; … … 6090 6091 6091 6092 /* Line 1806 of yacc.c */ 6092 #line 84 3"parser.yy"6093 #line 844 "parser.yy" 6093 6094 { (yyval.sn) = new StatementNode( StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn) )))); } 6094 6095 break; … … 6097 6098 6098 6099 /* Line 1806 of yacc.c */ 6099 #line 84 5"parser.yy"6100 #line 846 "parser.yy" 6100 6101 { 6101 6102 (yyvsp[(3) - (4)].pn)->set_link( (yyvsp[(4) - (4)].pn) ); … … 6107 6108 6108 6109 /* Line 1806 of yacc.c */ 6109 #line 85 6"parser.yy"6110 #line 857 "parser.yy" 6110 6111 { (yyval.pn) = StatementNode::newCatchStmt( 0, (yyvsp[(5) - (5)].sn), true ); } 6111 6112 break; … … 6114 6115 6115 6116 /* Line 1806 of yacc.c */ 6116 #line 85 8"parser.yy"6117 #line 859 "parser.yy" 6117 6118 { (yyval.pn) = (yyvsp[(1) - (6)].pn)->set_link( StatementNode::newCatchStmt( 0, (yyvsp[(6) - (6)].sn), true ) ); } 6118 6119 break; … … 6121 6122 6122 6123 /* Line 1806 of yacc.c */ 6123 #line 86 0"parser.yy"6124 #line 861 "parser.yy" 6124 6125 { (yyval.pn) = StatementNode::newCatchStmt( 0, (yyvsp[(5) - (5)].sn), true ); } 6125 6126 break; … … 6128 6129 6129 6130 /* Line 1806 of yacc.c */ 6130 #line 86 2"parser.yy"6131 #line 863 "parser.yy" 6131 6132 { (yyval.pn) = (yyvsp[(1) - (6)].pn)->set_link( StatementNode::newCatchStmt( 0, (yyvsp[(6) - (6)].sn), true ) ); } 6132 6133 break; … … 6135 6136 6136 6137 /* Line 1806 of yacc.c */ 6137 #line 86 7"parser.yy"6138 #line 868 "parser.yy" 6138 6139 { (yyval.pn) = StatementNode::newCatchStmt( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ); } 6139 6140 break; … … 6142 6143 6143 6144 /* Line 1806 of yacc.c */ 6144 #line 8 69"parser.yy"6145 #line 870 "parser.yy" 6145 6146 { (yyval.pn) = (yyvsp[(1) - (10)].pn)->set_link( StatementNode::newCatchStmt( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ); } 6146 6147 break; … … 6149 6150 6150 6151 /* Line 1806 of yacc.c */ 6151 #line 87 1"parser.yy"6152 #line 872 "parser.yy" 6152 6153 { (yyval.pn) = StatementNode::newCatchStmt( (yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn) ); } 6153 6154 break; … … 6156 6157 6157 6158 /* Line 1806 of yacc.c */ 6158 #line 87 3"parser.yy"6159 #line 874 "parser.yy" 6159 6160 { (yyval.pn) = (yyvsp[(1) - (10)].pn)->set_link( StatementNode::newCatchStmt( (yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn) ) ); } 6160 6161 break; … … 6163 6164 6164 6165 /* Line 1806 of yacc.c */ 6165 #line 87 8"parser.yy"6166 #line 879 "parser.yy" 6166 6167 { 6167 6168 (yyval.pn) = new StatementNode( StatementNode::Finally, 0, (yyvsp[(2) - (2)].sn) ); … … 6173 6174 6174 6175 /* Line 1806 of yacc.c */ 6175 #line 89 2"parser.yy"6176 #line 893 "parser.yy" 6176 6177 { 6177 6178 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6183 6184 6184 6185 /* Line 1806 of yacc.c */ 6185 #line 89 7"parser.yy"6186 #line 898 "parser.yy" 6186 6187 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 6187 6188 break; … … 6190 6191 6191 6192 /* Line 1806 of yacc.c */ 6192 #line 899"parser.yy"6193 #line 900 "parser.yy" 6193 6194 { 6194 6195 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6200 6201 6201 6202 /* Line 1806 of yacc.c */ 6202 #line 90 8"parser.yy"6203 #line 909 "parser.yy" 6203 6204 { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (6)].flag), (yyvsp[(4) - (6)].constant), 0 ); } 6204 6205 break; … … 6207 6208 6208 6209 /* Line 1806 of yacc.c */ 6209 #line 91 0"parser.yy"6210 #line 911 "parser.yy" 6210 6211 { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (8)].flag), (yyvsp[(4) - (8)].constant), (yyvsp[(6) - (8)].en) ); } 6211 6212 break; … … 6214 6215 6215 6216 /* Line 1806 of yacc.c */ 6216 #line 91 2"parser.yy"6217 #line 913 "parser.yy" 6217 6218 { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (10)].flag), (yyvsp[(4) - (10)].constant), (yyvsp[(6) - (10)].en), (yyvsp[(8) - (10)].en) ); } 6218 6219 break; … … 6221 6222 6222 6223 /* Line 1806 of yacc.c */ 6223 #line 91 4"parser.yy"6224 #line 915 "parser.yy" 6224 6225 { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (12)].flag), (yyvsp[(4) - (12)].constant), (yyvsp[(6) - (12)].en), (yyvsp[(8) - (12)].en), (yyvsp[(10) - (12)].constant) ); } 6225 6226 break; … … 6228 6229 6229 6230 /* Line 1806 of yacc.c */ 6230 #line 91 6"parser.yy"6231 #line 917 "parser.yy" 6231 6232 { (yyval.sn) = new AsmStmtNode( StatementNode::Asm, (yyvsp[(2) - (14)].flag), (yyvsp[(5) - (14)].constant), 0, (yyvsp[(8) - (14)].en), (yyvsp[(10) - (14)].constant), (yyvsp[(12) - (14)].label) ); } 6232 6233 break; … … 6235 6236 6236 6237 /* Line 1806 of yacc.c */ 6237 #line 92 1"parser.yy"6238 #line 922 "parser.yy" 6238 6239 { (yyval.flag) = false; } 6239 6240 break; … … 6242 6243 6243 6244 /* Line 1806 of yacc.c */ 6244 #line 92 3"parser.yy"6245 #line 924 "parser.yy" 6245 6246 { (yyval.flag) = true; } 6246 6247 break; … … 6249 6250 6250 6251 /* Line 1806 of yacc.c */ 6251 #line 92 8"parser.yy"6252 #line 929 "parser.yy" 6252 6253 { (yyval.en) = 0; } 6253 6254 break; … … 6256 6257 6257 6258 /* Line 1806 of yacc.c */ 6258 #line 93 5"parser.yy"6259 #line 936 "parser.yy" 6259 6260 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); } 6260 6261 break; … … 6263 6264 6264 6265 /* Line 1806 of yacc.c */ 6265 #line 94 0"parser.yy"6266 #line 941 "parser.yy" 6266 6267 { (yyval.en) = new AsmExprNode( 0, (yyvsp[(1) - (4)].constant), (yyvsp[(3) - (4)].en) ); } 6267 6268 break; … … 6270 6271 6271 6272 /* Line 1806 of yacc.c */ 6272 #line 94 2"parser.yy"6273 #line 943 "parser.yy" 6273 6274 { (yyval.en) = new AsmExprNode( (yyvsp[(2) - (7)].en), (yyvsp[(4) - (7)].constant), (yyvsp[(6) - (7)].en) ); } 6274 6275 break; … … 6277 6278 6278 6279 /* Line 1806 of yacc.c */ 6279 #line 94 7"parser.yy"6280 #line 948 "parser.yy" 6280 6281 { (yyval.constant) = 0; } 6281 6282 break; … … 6284 6285 6285 6286 /* Line 1806 of yacc.c */ 6286 #line 9 49"parser.yy"6287 #line 950 "parser.yy" 6287 6288 { (yyval.constant) = (yyvsp[(1) - (1)].constant); } 6288 6289 break; … … 6291 6292 6292 6293 /* Line 1806 of yacc.c */ 6293 #line 95 1"parser.yy"6294 #line 952 "parser.yy" 6294 6295 { (yyval.constant) = (ConstantNode *)(yyvsp[(1) - (3)].constant)->set_link( (yyvsp[(3) - (3)].constant) ); } 6295 6296 break; … … 6298 6299 6299 6300 /* Line 1806 of yacc.c */ 6300 #line 95 6"parser.yy"6301 #line 957 "parser.yy" 6301 6302 { (yyval.label) = new LabelNode(); (yyval.label)->append_label( (yyvsp[(1) - (1)].tok) ); } 6302 6303 break; … … 6305 6306 6306 6307 /* Line 1806 of yacc.c */ 6307 #line 95 8"parser.yy"6308 #line 959 "parser.yy" 6308 6309 { (yyval.label) = (yyvsp[(1) - (3)].label); (yyvsp[(1) - (3)].label)->append_label( (yyvsp[(3) - (3)].tok) ); } 6309 6310 break; … … 6312 6313 6313 6314 /* Line 1806 of yacc.c */ 6314 #line 96 5"parser.yy"6315 #line 966 "parser.yy" 6315 6316 { (yyval.decl) = 0; } 6316 6317 break; … … 6319 6320 6320 6321 /* Line 1806 of yacc.c */ 6321 #line 97 2"parser.yy"6322 #line 973 "parser.yy" 6322 6323 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6323 6324 break; … … 6326 6327 6327 6328 /* Line 1806 of yacc.c */ 6328 #line 97 7"parser.yy"6329 #line 978 "parser.yy" 6329 6330 { (yyval.decl) = 0; } 6330 6331 break; … … 6333 6334 6334 6335 /* Line 1806 of yacc.c */ 6335 #line 98 4"parser.yy"6336 #line 985 "parser.yy" 6336 6337 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6337 6338 break; 6338 6339 6339 6340 case 245: 6340 6341 /* Line 1806 of yacc.c */6342 #line 998 "parser.yy"6343 {}6344 break;6345 6346 case 246:6347 6341 6348 6342 /* Line 1806 of yacc.c */ … … 6351 6345 break; 6352 6346 6347 case 246: 6348 6349 /* Line 1806 of yacc.c */ 6350 #line 1000 "parser.yy" 6351 {} 6352 break; 6353 6353 6354 case 254: 6354 6355 6355 6356 /* Line 1806 of yacc.c */ 6356 #line 102 8"parser.yy"6357 #line 1029 "parser.yy" 6357 6358 { 6358 6359 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6364 6365 6365 6366 /* Line 1806 of yacc.c */ 6366 #line 103 5"parser.yy"6367 #line 1036 "parser.yy" 6367 6368 { 6368 6369 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6374 6375 6375 6376 /* Line 1806 of yacc.c */ 6376 #line 104 0"parser.yy"6377 #line 1041 "parser.yy" 6377 6378 { 6378 6379 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (6)].tok), TypedefTable::ID ); … … 6384 6385 6385 6386 /* Line 1806 of yacc.c */ 6386 #line 105 0"parser.yy"6387 #line 1051 "parser.yy" 6387 6388 { 6388 6389 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6394 6395 6395 6396 /* Line 1806 of yacc.c */ 6396 #line 105 5"parser.yy"6397 #line 1056 "parser.yy" 6397 6398 { 6398 6399 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6404 6405 6405 6406 /* Line 1806 of yacc.c */ 6406 #line 106 0"parser.yy"6407 #line 1061 "parser.yy" 6407 6408 { 6408 6409 typedefTable.setNextIdentifier( *(yyvsp[(3) - (4)].tok) ); … … 6414 6415 6415 6416 /* Line 1806 of yacc.c */ 6416 #line 106 8"parser.yy"6417 #line 1069 "parser.yy" 6417 6418 { 6418 6419 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6424 6425 6425 6426 /* Line 1806 of yacc.c */ 6426 #line 107 3"parser.yy"6427 #line 1074 "parser.yy" 6427 6428 { 6428 6429 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6434 6435 6435 6436 /* Line 1806 of yacc.c */ 6436 #line 107 8"parser.yy"6437 #line 1079 "parser.yy" 6437 6438 { 6438 6439 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6444 6445 6445 6446 /* Line 1806 of yacc.c */ 6446 #line 108 3"parser.yy"6447 #line 1084 "parser.yy" 6447 6448 { 6448 6449 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6454 6455 6455 6456 /* Line 1806 of yacc.c */ 6456 #line 108 8"parser.yy"6457 #line 1089 "parser.yy" 6457 6458 { 6458 6459 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::ID ); … … 6464 6465 6465 6466 /* Line 1806 of yacc.c */ 6466 #line 109 6"parser.yy"6467 #line 1097 "parser.yy" 6467 6468 { 6468 6469 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(3) - (8)].tok), DeclarationNode::newTuple( 0 ), (yyvsp[(6) - (8)].decl), 0, true ); … … 6473 6474 6474 6475 /* Line 1806 of yacc.c */ 6475 #line 11 19"parser.yy"6476 #line 1120 "parser.yy" 6476 6477 { 6477 6478 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6482 6483 6483 6484 /* Line 1806 of yacc.c */ 6484 #line 112 3"parser.yy"6485 #line 1124 "parser.yy" 6485 6486 { 6486 6487 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6491 6492 6492 6493 /* Line 1806 of yacc.c */ 6493 #line 113 0"parser.yy"6494 #line 1131 "parser.yy" 6494 6495 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 6495 6496 break; … … 6498 6499 6499 6500 /* Line 1806 of yacc.c */ 6500 #line 113 4"parser.yy"6501 #line 1135 "parser.yy" 6501 6502 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (9)].decl)->appendList( (yyvsp[(7) - (9)].decl) ) ); } 6502 6503 break; … … 6505 6506 6506 6507 /* Line 1806 of yacc.c */ 6507 #line 11 39"parser.yy"6508 #line 1140 "parser.yy" 6508 6509 { 6509 6510 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6515 6516 6516 6517 /* Line 1806 of yacc.c */ 6517 #line 114 4"parser.yy"6518 #line 1145 "parser.yy" 6518 6519 { 6519 6520 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6525 6526 6526 6527 /* Line 1806 of yacc.c */ 6527 #line 11 49"parser.yy"6528 #line 1150 "parser.yy" 6528 6529 { 6529 6530 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::TD ); … … 6535 6536 6536 6537 /* Line 1806 of yacc.c */ 6537 #line 116 0"parser.yy"6538 #line 1161 "parser.yy" 6538 6539 { 6539 6540 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6545 6546 6546 6547 /* Line 1806 of yacc.c */ 6547 #line 116 5"parser.yy"6548 #line 1166 "parser.yy" 6548 6549 { 6549 6550 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6555 6556 6556 6557 /* Line 1806 of yacc.c */ 6557 #line 117 0"parser.yy"6558 #line 1171 "parser.yy" 6558 6559 { 6559 6560 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6565 6566 6566 6567 /* Line 1806 of yacc.c */ 6567 #line 117 5"parser.yy"6568 #line 1176 "parser.yy" 6568 6569 { 6569 6570 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6575 6576 6576 6577 /* Line 1806 of yacc.c */ 6577 #line 118 0"parser.yy"6578 #line 1181 "parser.yy" 6578 6579 { 6579 6580 typedefTable.addToEnclosingScope( TypedefTable::TD ); … … 6585 6586 6586 6587 /* Line 1806 of yacc.c */ 6587 #line 11 89"parser.yy"6588 #line 1190 "parser.yy" 6588 6589 { 6589 6590 typedefTable.addToEnclosingScope( *(yyvsp[(2) - (4)].tok), TypedefTable::TD ); … … 6595 6596 6596 6597 /* Line 1806 of yacc.c */ 6597 #line 119 4"parser.yy"6598 #line 1195 "parser.yy" 6598 6599 { 6599 6600 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (7)].tok), TypedefTable::TD ); … … 6605 6606 6606 6607 /* Line 1806 of yacc.c */ 6607 #line 121 1"parser.yy"6608 #line 1212 "parser.yy" 6608 6609 { 6609 6610 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6615 6616 6616 6617 /* Line 1806 of yacc.c */ 6617 #line 121 6"parser.yy"6618 #line 1217 "parser.yy" 6618 6619 { 6619 6620 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6625 6626 6626 6627 /* Line 1806 of yacc.c */ 6627 #line 123 8"parser.yy"6628 #line 1239 "parser.yy" 6628 6629 { (yyval.decl) = 0; } 6629 6630 break; … … 6632 6633 6633 6634 /* Line 1806 of yacc.c */ 6634 #line 125 0"parser.yy"6635 #line 1251 "parser.yy" 6635 6636 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6636 6637 break; … … 6639 6640 6640 6641 /* Line 1806 of yacc.c */ 6641 #line 126 1"parser.yy"6642 #line 1262 "parser.yy" 6642 6643 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Const ); } 6643 6644 break; … … 6646 6647 6647 6648 /* Line 1806 of yacc.c */ 6648 #line 126 3"parser.yy"6649 #line 1264 "parser.yy" 6649 6650 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Restrict ); } 6650 6651 break; … … 6653 6654 6654 6655 /* Line 1806 of yacc.c */ 6655 #line 126 5"parser.yy"6656 #line 1266 "parser.yy" 6656 6657 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Volatile ); } 6657 6658 break; … … 6660 6661 6661 6662 /* Line 1806 of yacc.c */ 6662 #line 126 7"parser.yy"6663 #line 1268 "parser.yy" 6663 6664 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Lvalue ); } 6664 6665 break; … … 6667 6668 6668 6669 /* Line 1806 of yacc.c */ 6669 #line 12 69"parser.yy"6670 #line 1270 "parser.yy" 6670 6671 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Atomic ); } 6671 6672 break; … … 6674 6675 6675 6676 /* Line 1806 of yacc.c */ 6676 #line 127 1"parser.yy"6677 #line 1272 "parser.yy" 6677 6678 { 6678 6679 typedefTable.enterScope(); … … 6683 6684 6684 6685 /* Line 1806 of yacc.c */ 6685 #line 127 5"parser.yy"6686 #line 1276 "parser.yy" 6686 6687 { 6687 6688 typedefTable.leaveScope(); … … 6693 6694 6694 6695 /* Line 1806 of yacc.c */ 6695 #line 128 4"parser.yy"6696 #line 1285 "parser.yy" 6696 6697 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6697 6698 break; … … 6700 6701 6701 6702 /* Line 1806 of yacc.c */ 6702 #line 128 6"parser.yy"6703 #line 1287 "parser.yy" 6703 6704 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6704 6705 break; … … 6707 6708 6708 6709 /* Line 1806 of yacc.c */ 6709 #line 129 7"parser.yy"6710 #line 1298 "parser.yy" 6710 6711 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6711 6712 break; … … 6714 6715 6715 6716 /* Line 1806 of yacc.c */ 6716 #line 130 6"parser.yy"6717 #line 1307 "parser.yy" 6717 6718 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Extern ); } 6718 6719 break; … … 6721 6722 6722 6723 /* Line 1806 of yacc.c */ 6723 #line 130 8"parser.yy"6724 #line 1309 "parser.yy" 6724 6725 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Static ); } 6725 6726 break; … … 6728 6729 6729 6730 /* Line 1806 of yacc.c */ 6730 #line 131 0"parser.yy"6731 #line 1311 "parser.yy" 6731 6732 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Auto ); } 6732 6733 break; … … 6735 6736 6736 6737 /* Line 1806 of yacc.c */ 6737 #line 131 2"parser.yy"6738 #line 1313 "parser.yy" 6738 6739 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Register ); } 6739 6740 break; … … 6742 6743 6743 6744 /* Line 1806 of yacc.c */ 6744 #line 131 4"parser.yy"6745 #line 1315 "parser.yy" 6745 6746 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Inline ); } 6746 6747 break; … … 6749 6750 6750 6751 /* Line 1806 of yacc.c */ 6751 #line 131 6"parser.yy"6752 #line 1317 "parser.yy" 6752 6753 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Fortran ); } 6753 6754 break; … … 6756 6757 6757 6758 /* Line 1806 of yacc.c */ 6758 #line 131 8"parser.yy"6759 #line 1319 "parser.yy" 6759 6760 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Noreturn ); } 6760 6761 break; … … 6763 6764 6764 6765 /* Line 1806 of yacc.c */ 6765 #line 132 0"parser.yy"6766 #line 1321 "parser.yy" 6766 6767 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Threadlocal ); } 6767 6768 break; … … 6770 6771 6771 6772 /* Line 1806 of yacc.c */ 6772 #line 132 5"parser.yy"6773 #line 1326 "parser.yy" 6773 6774 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Char ); } 6774 6775 break; … … 6777 6778 6778 6779 /* Line 1806 of yacc.c */ 6779 #line 132 7"parser.yy"6780 #line 1328 "parser.yy" 6780 6781 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Double ); } 6781 6782 break; … … 6784 6785 6785 6786 /* Line 1806 of yacc.c */ 6786 #line 13 29"parser.yy"6787 #line 1330 "parser.yy" 6787 6788 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Float ); } 6788 6789 break; … … 6791 6792 6792 6793 /* Line 1806 of yacc.c */ 6793 #line 133 1"parser.yy"6794 #line 1332 "parser.yy" 6794 6795 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Int ); } 6795 6796 break; … … 6798 6799 6799 6800 /* Line 1806 of yacc.c */ 6800 #line 133 3"parser.yy"6801 #line 1334 "parser.yy" 6801 6802 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Long ); } 6802 6803 break; … … 6805 6806 6806 6807 /* Line 1806 of yacc.c */ 6807 #line 133 5"parser.yy"6808 #line 1336 "parser.yy" 6808 6809 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Short ); } 6809 6810 break; … … 6812 6813 6813 6814 /* Line 1806 of yacc.c */ 6814 #line 133 7"parser.yy"6815 #line 1338 "parser.yy" 6815 6816 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Signed ); } 6816 6817 break; … … 6819 6820 6820 6821 /* Line 1806 of yacc.c */ 6821 #line 13 39"parser.yy"6822 #line 1340 "parser.yy" 6822 6823 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Unsigned ); } 6823 6824 break; … … 6826 6827 6827 6828 /* Line 1806 of yacc.c */ 6828 #line 134 1"parser.yy"6829 #line 1342 "parser.yy" 6829 6830 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Void ); } 6830 6831 break; … … 6833 6834 6834 6835 /* Line 1806 of yacc.c */ 6835 #line 134 3"parser.yy"6836 #line 1344 "parser.yy" 6836 6837 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Bool ); } 6837 6838 break; … … 6840 6841 6841 6842 /* Line 1806 of yacc.c */ 6842 #line 134 5"parser.yy"6843 #line 1346 "parser.yy" 6843 6844 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Complex ); } 6844 6845 break; … … 6847 6848 6848 6849 /* Line 1806 of yacc.c */ 6849 #line 134 7"parser.yy"6850 #line 1348 "parser.yy" 6850 6851 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Imaginary ); } 6851 6852 break; … … 6854 6855 6855 6856 /* Line 1806 of yacc.c */ 6856 #line 13 49"parser.yy"6857 #line 1350 "parser.yy" 6857 6858 { (yyval.decl) = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); } 6858 6859 break; … … 6861 6862 6862 6863 /* Line 1806 of yacc.c */ 6863 #line 135 6"parser.yy"6864 #line 1357 "parser.yy" 6864 6865 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6865 6866 break; … … 6868 6869 6869 6870 /* Line 1806 of yacc.c */ 6870 #line 135 8"parser.yy"6871 #line 1359 "parser.yy" 6871 6872 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6872 6873 break; … … 6875 6876 6876 6877 /* Line 1806 of yacc.c */ 6877 #line 136 0"parser.yy"6878 #line 1361 "parser.yy" 6878 6879 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6879 6880 break; … … 6882 6883 6883 6884 /* Line 1806 of yacc.c */ 6884 #line 136 2"parser.yy"6885 #line 1363 "parser.yy" 6885 6886 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addType( (yyvsp[(1) - (3)].decl) ); } 6886 6887 break; … … 6889 6890 6890 6891 /* Line 1806 of yacc.c */ 6891 #line 136 8"parser.yy"6892 #line 1369 "parser.yy" 6892 6893 { (yyval.decl) = (yyvsp[(2) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6893 6894 break; … … 6896 6897 6897 6898 /* Line 1806 of yacc.c */ 6898 #line 137 5"parser.yy"6899 #line 1376 "parser.yy" 6899 6900 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6900 6901 break; … … 6903 6904 6904 6905 /* Line 1806 of yacc.c */ 6905 #line 137 7"parser.yy"6906 #line 1378 "parser.yy" 6906 6907 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6907 6908 break; … … 6910 6911 6911 6912 /* Line 1806 of yacc.c */ 6912 #line 13 79"parser.yy"6913 #line 1380 "parser.yy" 6913 6914 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addType( (yyvsp[(2) - (2)].decl) ); } 6914 6915 break; … … 6917 6918 6918 6919 /* Line 1806 of yacc.c */ 6919 #line 138 4"parser.yy"6920 #line 1385 "parser.yy" 6920 6921 { (yyval.decl) = (yyvsp[(3) - (4)].decl); } 6921 6922 break; … … 6924 6925 6925 6926 /* Line 1806 of yacc.c */ 6926 #line 138 6"parser.yy"6927 #line 1387 "parser.yy" 6927 6928 { (yyval.decl) = DeclarationNode::newTypeof( (yyvsp[(3) - (4)].en) ); } 6928 6929 break; … … 6931 6932 6932 6933 /* Line 1806 of yacc.c */ 6933 #line 138 8"parser.yy"6934 #line 1389 "parser.yy" 6934 6935 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); } 6935 6936 break; … … 6938 6939 6939 6940 /* Line 1806 of yacc.c */ 6940 #line 139 0"parser.yy"6941 #line 1391 "parser.yy" 6941 6942 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 6942 6943 break; … … 6945 6946 6946 6947 /* Line 1806 of yacc.c */ 6947 #line 139 6"parser.yy"6948 #line 1397 "parser.yy" 6948 6949 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6949 6950 break; … … 6952 6953 6953 6954 /* Line 1806 of yacc.c */ 6954 #line 139 8"parser.yy"6955 #line 1399 "parser.yy" 6955 6956 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6956 6957 break; … … 6959 6960 6960 6961 /* Line 1806 of yacc.c */ 6961 #line 140 0"parser.yy"6962 #line 1401 "parser.yy" 6962 6963 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6963 6964 break; … … 6966 6967 6967 6968 /* Line 1806 of yacc.c */ 6968 #line 140 6"parser.yy"6969 #line 1407 "parser.yy" 6969 6970 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6970 6971 break; … … 6973 6974 6974 6975 /* Line 1806 of yacc.c */ 6975 #line 140 8"parser.yy"6976 #line 1409 "parser.yy" 6976 6977 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6977 6978 break; … … 6980 6981 6981 6982 /* Line 1806 of yacc.c */ 6982 #line 141 4"parser.yy"6983 #line 1415 "parser.yy" 6983 6984 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6984 6985 break; … … 6987 6988 6988 6989 /* Line 1806 of yacc.c */ 6989 #line 141 6"parser.yy"6990 #line 1417 "parser.yy" 6990 6991 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6991 6992 break; … … 6994 6995 6995 6996 /* Line 1806 of yacc.c */ 6996 #line 141 8"parser.yy"6997 #line 1419 "parser.yy" 6997 6998 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6998 6999 break; … … 7001 7002 7002 7003 /* Line 1806 of yacc.c */ 7003 #line 142 3"parser.yy"7004 #line 1424 "parser.yy" 7004 7005 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(1) - (1)].tok) ); } 7005 7006 break; … … 7008 7009 7009 7010 /* Line 1806 of yacc.c */ 7010 #line 142 5"parser.yy"7011 #line 1426 "parser.yy" 7011 7012 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(2) - (2)].tok) )->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7012 7013 break; … … 7015 7016 7016 7017 /* Line 1806 of yacc.c */ 7017 #line 142 7"parser.yy"7018 #line 1428 "parser.yy" 7018 7019 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7019 7020 break; … … 7022 7023 7023 7024 /* Line 1806 of yacc.c */ 7024 #line 143 7"parser.yy"7025 #line 1438 "parser.yy" 7025 7026 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (4)].aggKey), 0, 0, (yyvsp[(3) - (4)].decl) ); } 7026 7027 break; … … 7029 7030 7030 7031 /* Line 1806 of yacc.c */ 7031 #line 14 39"parser.yy"7032 #line 1440 "parser.yy" 7032 7033 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (2)].aggKey), (yyvsp[(2) - (2)].tok), 0, 0 ); } 7033 7034 break; … … 7036 7037 7037 7038 /* Line 1806 of yacc.c */ 7038 #line 144 1"parser.yy"7039 #line 1442 "parser.yy" 7039 7040 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (5)].aggKey), (yyvsp[(2) - (5)].tok), 0, (yyvsp[(4) - (5)].decl) ); } 7040 7041 break; … … 7043 7044 7044 7045 /* Line 1806 of yacc.c */ 7045 #line 144 3"parser.yy"7046 #line 1444 "parser.yy" 7046 7047 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), 0, (yyvsp[(3) - (7)].en), (yyvsp[(6) - (7)].decl) ); } 7047 7048 break; … … 7050 7051 7051 7052 /* Line 1806 of yacc.c */ 7052 #line 144 5"parser.yy"7053 #line 1446 "parser.yy" 7053 7054 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7054 7055 break; … … 7057 7058 7058 7059 /* Line 1806 of yacc.c */ 7059 #line 145 0"parser.yy"7060 #line 1451 "parser.yy" 7060 7061 { (yyval.aggKey) = DeclarationNode::Struct; } 7061 7062 break; … … 7064 7065 7065 7066 /* Line 1806 of yacc.c */ 7066 #line 145 2"parser.yy"7067 #line 1453 "parser.yy" 7067 7068 { (yyval.aggKey) = DeclarationNode::Union; } 7068 7069 break; … … 7071 7072 7072 7073 /* Line 1806 of yacc.c */ 7073 #line 145 7"parser.yy"7074 #line 1458 "parser.yy" 7074 7075 { (yyval.decl) = (yyvsp[(1) - (1)].decl); } 7075 7076 break; … … 7078 7079 7079 7080 /* Line 1806 of yacc.c */ 7080 #line 14 59"parser.yy"7081 #line 1460 "parser.yy" 7081 7082 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); } 7082 7083 break; … … 7085 7086 7086 7087 /* Line 1806 of yacc.c */ 7087 #line 146 5"parser.yy"7088 #line 1466 "parser.yy" 7088 7089 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 7089 7090 break; … … 7092 7093 7093 7094 /* Line 1806 of yacc.c */ 7094 #line 146 8"parser.yy"7095 #line 1469 "parser.yy" 7095 7096 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 7096 7097 break; … … 7099 7100 7100 7101 /* Line 1806 of yacc.c */ 7101 #line 147 4"parser.yy"7102 #line 1475 "parser.yy" 7102 7103 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addName( (yyvsp[(2) - (2)].tok) ); } 7103 7104 break; … … 7106 7107 7107 7108 /* Line 1806 of yacc.c */ 7108 #line 147 6"parser.yy"7109 #line 1477 "parser.yy" 7109 7110 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(1) - (3)].decl)->cloneType( (yyvsp[(3) - (3)].tok) ) ); } 7110 7111 break; … … 7113 7114 7114 7115 /* Line 1806 of yacc.c */ 7115 #line 147 8"parser.yy"7116 #line 1479 "parser.yy" 7116 7117 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(1) - (2)].decl)->cloneType( 0 ) ); } 7117 7118 break; … … 7120 7121 7121 7122 /* Line 1806 of yacc.c */ 7122 #line 148 3"parser.yy"7123 #line 1484 "parser.yy" 7123 7124 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7124 7125 break; … … 7127 7128 7128 7129 /* Line 1806 of yacc.c */ 7129 #line 148 5"parser.yy"7130 #line 1486 "parser.yy" 7130 7131 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(1) - (4)].decl)->cloneBaseType( (yyvsp[(4) - (4)].decl) ) ); } 7131 7132 break; … … 7134 7135 7135 7136 /* Line 1806 of yacc.c */ 7136 #line 149 0"parser.yy"7137 #line 1491 "parser.yy" 7137 7138 { (yyval.decl) = DeclarationNode::newName( 0 ); /* XXX */ } 7138 7139 break; … … 7141 7142 7142 7143 /* Line 1806 of yacc.c */ 7143 #line 149 2"parser.yy"7144 #line 1493 "parser.yy" 7144 7145 { (yyval.decl) = DeclarationNode::newBitfield( (yyvsp[(1) - (1)].en) ); } 7145 7146 break; … … 7148 7149 7149 7150 /* Line 1806 of yacc.c */ 7150 #line 149 5"parser.yy"7151 #line 1496 "parser.yy" 7151 7152 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7152 7153 break; … … 7155 7156 7156 7157 /* Line 1806 of yacc.c */ 7157 #line 149 8"parser.yy"7158 #line 1499 "parser.yy" 7158 7159 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7159 7160 break; … … 7162 7163 7163 7164 /* Line 1806 of yacc.c */ 7164 #line 150 4"parser.yy"7165 #line 1505 "parser.yy" 7165 7166 { (yyval.en) = 0; } 7166 7167 break; … … 7169 7170 7170 7171 /* Line 1806 of yacc.c */ 7171 #line 150 6"parser.yy"7172 #line 1507 "parser.yy" 7172 7173 { (yyval.en) = (yyvsp[(1) - (1)].en); } 7173 7174 break; … … 7176 7177 7177 7178 /* Line 1806 of yacc.c */ 7178 #line 151 1"parser.yy"7179 #line 1512 "parser.yy" 7179 7180 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7180 7181 break; … … 7183 7184 7184 7185 /* Line 1806 of yacc.c */ 7185 #line 152 0"parser.yy"7186 #line 1521 "parser.yy" 7186 7187 { (yyval.decl) = DeclarationNode::newEnum( 0, (yyvsp[(3) - (5)].decl) ); } 7187 7188 break; … … 7190 7191 7191 7192 /* Line 1806 of yacc.c */ 7192 #line 152 2"parser.yy"7193 #line 1523 "parser.yy" 7193 7194 { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (6)].tok), (yyvsp[(4) - (6)].decl) ); } 7194 7195 break; … … 7197 7198 7198 7199 /* Line 1806 of yacc.c */ 7199 #line 152 4"parser.yy"7200 #line 1525 "parser.yy" 7200 7201 { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (2)].tok), 0 ); } 7201 7202 break; … … 7204 7205 7205 7206 /* Line 1806 of yacc.c */ 7206 #line 15 29"parser.yy"7207 #line 1530 "parser.yy" 7207 7208 { (yyval.decl) = DeclarationNode::newEnumConstant( (yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].en) ); } 7208 7209 break; … … 7211 7212 7212 7213 /* Line 1806 of yacc.c */ 7213 #line 153 1"parser.yy"7214 #line 1532 "parser.yy" 7214 7215 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( DeclarationNode::newEnumConstant( (yyvsp[(3) - (4)].tok), (yyvsp[(4) - (4)].en) ) ); } 7215 7216 break; … … 7218 7219 7219 7220 /* Line 1806 of yacc.c */ 7220 #line 153 6"parser.yy"7221 #line 1537 "parser.yy" 7221 7222 { (yyval.en) = 0; } 7222 7223 break; … … 7225 7226 7226 7227 /* Line 1806 of yacc.c */ 7227 #line 153 8"parser.yy"7228 #line 1539 "parser.yy" 7228 7229 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7229 7230 break; … … 7232 7233 7233 7234 /* Line 1806 of yacc.c */ 7234 #line 154 5"parser.yy"7235 #line 1546 "parser.yy" 7235 7236 { (yyval.decl) = 0; } 7236 7237 break; … … 7239 7240 7240 7241 /* Line 1806 of yacc.c */ 7241 #line 155 3"parser.yy"7242 #line 1554 "parser.yy" 7242 7243 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7243 7244 break; … … 7246 7247 7247 7248 /* Line 1806 of yacc.c */ 7248 #line 155 5"parser.yy"7249 #line 1556 "parser.yy" 7249 7250 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7250 7251 break; … … 7253 7254 7254 7255 /* Line 1806 of yacc.c */ 7255 #line 155 7"parser.yy"7256 #line 1558 "parser.yy" 7256 7257 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7257 7258 break; … … 7260 7261 7261 7262 /* Line 1806 of yacc.c */ 7262 #line 156 5"parser.yy"7263 #line 1566 "parser.yy" 7263 7264 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7264 7265 break; … … 7267 7268 7268 7269 /* Line 1806 of yacc.c */ 7269 #line 156 7"parser.yy"7270 #line 1568 "parser.yy" 7270 7271 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7271 7272 break; … … 7274 7275 7275 7276 /* Line 1806 of yacc.c */ 7276 #line 15 69"parser.yy"7277 #line 1570 "parser.yy" 7277 7278 { (yyval.decl) = (yyvsp[(1) - (9)].decl)->appendList( (yyvsp[(5) - (9)].decl) )->appendList( (yyvsp[(9) - (9)].decl) ); } 7278 7279 break; … … 7281 7282 7282 7283 /* Line 1806 of yacc.c */ 7283 #line 157 5"parser.yy"7284 #line 1576 "parser.yy" 7284 7285 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7285 7286 break; … … 7288 7289 7289 7290 /* Line 1806 of yacc.c */ 7290 #line 158 0"parser.yy"7291 #line 1581 "parser.yy" 7291 7292 { (yyval.decl) = 0; } 7292 7293 break; … … 7295 7296 7296 7297 /* Line 1806 of yacc.c */ 7297 #line 158 7"parser.yy"7298 #line 1588 "parser.yy" 7298 7299 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7299 7300 break; … … 7302 7303 7303 7304 /* Line 1806 of yacc.c */ 7304 #line 159 4"parser.yy"7305 #line 1595 "parser.yy" 7305 7306 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7306 7307 break; … … 7309 7310 7310 7311 /* Line 1806 of yacc.c */ 7311 #line 159 6"parser.yy"7312 #line 1597 "parser.yy" 7312 7313 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7313 7314 break; … … 7316 7317 7317 7318 /* Line 1806 of yacc.c */ 7318 #line 160 5"parser.yy"7319 #line 1606 "parser.yy" 7319 7320 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7320 7321 break; … … 7323 7324 7324 7325 /* Line 1806 of yacc.c */ 7325 #line 160 8"parser.yy"7326 #line 1609 "parser.yy" 7326 7327 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7327 7328 break; … … 7330 7331 7331 7332 /* Line 1806 of yacc.c */ 7332 #line 161 0"parser.yy"7333 #line 1611 "parser.yy" 7333 7334 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addName( (yyvsp[(3) - (4)].tok) )->addQualifiers( (yyvsp[(1) - (4)].decl) ); } 7334 7335 break; … … 7337 7338 7338 7339 /* Line 1806 of yacc.c */ 7339 #line 162 0"parser.yy"7340 #line 1621 "parser.yy" 7340 7341 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7341 7342 break; … … 7344 7345 7345 7346 /* Line 1806 of yacc.c */ 7346 #line 162 6"parser.yy"7347 #line 1627 "parser.yy" 7347 7348 { 7348 7349 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7354 7355 7355 7356 /* Line 1806 of yacc.c */ 7356 #line 163 1"parser.yy"7357 #line 1632 "parser.yy" 7357 7358 { 7358 7359 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7364 7365 7365 7366 /* Line 1806 of yacc.c */ 7366 #line 164 0"parser.yy"7367 #line 1641 "parser.yy" 7367 7368 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7368 7369 break; … … 7371 7372 7372 7373 /* Line 1806 of yacc.c */ 7373 #line 16 49"parser.yy"7374 #line 1650 "parser.yy" 7374 7375 { (yyval.decl) = DeclarationNode::newName( (yyvsp[(1) - (1)].tok) ); } 7375 7376 break; … … 7378 7379 7379 7380 /* Line 1806 of yacc.c */ 7380 #line 165 1"parser.yy"7381 #line 1652 "parser.yy" 7381 7382 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( DeclarationNode::newName( (yyvsp[(3) - (3)].tok) ) ); } 7382 7383 break; … … 7385 7386 7386 7387 /* Line 1806 of yacc.c */ 7387 #line 167 6"parser.yy"7388 #line 1677 "parser.yy" 7388 7389 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7389 7390 break; … … 7392 7393 7393 7394 /* Line 1806 of yacc.c */ 7394 #line 168 4"parser.yy"7395 #line 1685 "parser.yy" 7395 7396 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7396 7397 break; … … 7399 7400 7400 7401 /* Line 1806 of yacc.c */ 7401 #line 16 89"parser.yy"7402 #line 1690 "parser.yy" 7402 7403 { (yyval.in) = 0; } 7403 7404 break; … … 7406 7407 7407 7408 /* Line 1806 of yacc.c */ 7408 #line 169 1"parser.yy"7409 #line 1692 "parser.yy" 7409 7410 { (yyval.in) = (yyvsp[(2) - (2)].in); } 7410 7411 break; … … 7413 7414 7414 7415 /* Line 1806 of yacc.c */ 7415 #line 169 3"parser.yy"7416 #line 1694 "parser.yy" 7416 7417 { (yyval.in) = (yyvsp[(2) - (2)].in); } 7417 7418 break; … … 7420 7421 7421 7422 /* Line 1806 of yacc.c */ 7422 #line 169 7"parser.yy"7423 #line 1698 "parser.yy" 7423 7424 { (yyval.in) = new InitializerNode( (yyvsp[(1) - (1)].en) ); } 7424 7425 break; … … 7427 7428 7428 7429 /* Line 1806 of yacc.c */ 7429 #line 169 8"parser.yy"7430 #line 1699 "parser.yy" 7430 7431 { (yyval.in) = new InitializerNode( (yyvsp[(2) - (4)].in), true ); } 7431 7432 break; … … 7434 7435 7435 7436 /* Line 1806 of yacc.c */ 7436 #line 170 3"parser.yy"7437 #line 1704 "parser.yy" 7437 7438 { (yyval.in) = 0; } 7438 7439 break; … … 7441 7442 7442 7443 /* Line 1806 of yacc.c */ 7443 #line 170 5"parser.yy"7444 #line 1706 "parser.yy" 7444 7445 { (yyval.in) = (yyvsp[(2) - (2)].in)->set_designators( (yyvsp[(1) - (2)].en) ); } 7445 7446 break; … … 7448 7449 7449 7450 /* Line 1806 of yacc.c */ 7450 #line 170 6"parser.yy"7451 #line 1707 "parser.yy" 7451 7452 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_link( (yyvsp[(3) - (3)].in) ) ); } 7452 7453 break; … … 7455 7456 7456 7457 /* Line 1806 of yacc.c */ 7457 #line 170 8"parser.yy"7458 #line 1709 "parser.yy" 7458 7459 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (4)].in)->set_link( (yyvsp[(4) - (4)].in)->set_designators( (yyvsp[(3) - (4)].en) ) ) ); } 7459 7460 break; … … 7462 7463 7463 7464 /* Line 1806 of yacc.c */ 7464 #line 172 4"parser.yy"7465 #line 1725 "parser.yy" 7465 7466 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (2)].tok) ); } 7466 7467 break; … … 7469 7470 7470 7471 /* Line 1806 of yacc.c */ 7471 #line 173 0"parser.yy"7472 #line 1731 "parser.yy" 7472 7473 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (2)].en)->set_link( (yyvsp[(2) - (2)].en) )); } 7473 7474 break; … … 7476 7477 7477 7478 /* Line 1806 of yacc.c */ 7478 #line 173 8"parser.yy"7479 #line 1739 "parser.yy" 7479 7480 { (yyval.en) = new DesignatorNode( new VarRefNode( (yyvsp[(1) - (1)].tok) ) ); } 7480 7481 break; … … 7483 7484 7484 7485 /* Line 1806 of yacc.c */ 7485 #line 174 0"parser.yy"7486 #line 1741 "parser.yy" 7486 7487 { (yyval.en) = new DesignatorNode( new VarRefNode( (yyvsp[(2) - (2)].tok) ) ); } 7487 7488 break; … … 7490 7491 7491 7492 /* Line 1806 of yacc.c */ 7492 #line 174 3"parser.yy"7493 #line 1744 "parser.yy" 7493 7494 { (yyval.en) = new DesignatorNode( (yyvsp[(3) - (5)].en), true ); } 7494 7495 break; … … 7497 7498 7498 7499 /* Line 1806 of yacc.c */ 7499 #line 174 5"parser.yy"7500 #line 1746 "parser.yy" 7500 7501 { (yyval.en) = new DesignatorNode( (yyvsp[(3) - (5)].en), true ); } 7501 7502 break; … … 7504 7505 7505 7506 /* Line 1806 of yacc.c */ 7506 #line 174 7"parser.yy"7507 #line 1748 "parser.yy" 7507 7508 { (yyval.en) = new DesignatorNode( new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].en) ), true ); } 7508 7509 break; … … 7511 7512 7512 7513 /* Line 1806 of yacc.c */ 7513 #line 17 49"parser.yy"7514 #line 1750 "parser.yy" 7514 7515 { (yyval.en) = new DesignatorNode( (yyvsp[(4) - (6)].en) ); } 7515 7516 break; … … 7518 7519 7519 7520 /* Line 1806 of yacc.c */ 7520 #line 177 3"parser.yy"7521 #line 1774 "parser.yy" 7521 7522 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7522 7523 break; … … 7525 7526 7526 7527 /* Line 1806 of yacc.c */ 7527 #line 177 5"parser.yy"7528 #line 1776 "parser.yy" 7528 7529 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7529 7530 break; … … 7532 7533 7533 7534 /* Line 1806 of yacc.c */ 7534 #line 177 7"parser.yy"7535 #line 1778 "parser.yy" 7535 7536 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 7536 7537 break; … … 7539 7540 7540 7541 /* Line 1806 of yacc.c */ 7541 #line 178 3"parser.yy"7542 #line 1784 "parser.yy" 7542 7543 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7543 7544 break; … … 7546 7547 7547 7548 /* Line 1806 of yacc.c */ 7548 #line 178 5"parser.yy"7549 #line 1786 "parser.yy" 7549 7550 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7550 7551 break; … … 7553 7554 7554 7555 /* Line 1806 of yacc.c */ 7555 #line 179 0"parser.yy"7556 #line 1791 "parser.yy" 7556 7557 { (yyval.decl) = DeclarationNode::newFromTypeGen( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 7557 7558 break; … … 7560 7561 7561 7562 /* Line 1806 of yacc.c */ 7562 #line 179 6"parser.yy"7563 #line 1797 "parser.yy" 7563 7564 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(3) - (4)].decl) ); } 7564 7565 break; … … 7567 7568 7568 7569 /* Line 1806 of yacc.c */ 7569 #line 180 1"parser.yy"7570 #line 1802 "parser.yy" 7570 7571 { typedefTable.addToEnclosingScope( *(yyvsp[(2) - (2)].tok), TypedefTable::TD ); } 7571 7572 break; … … 7574 7575 7575 7576 /* Line 1806 of yacc.c */ 7576 #line 180 3"parser.yy"7577 #line 1804 "parser.yy" 7577 7578 { (yyval.decl) = DeclarationNode::newTypeParam( (yyvsp[(1) - (4)].tclass), (yyvsp[(2) - (4)].tok) )->addAssertions( (yyvsp[(4) - (4)].decl) ); } 7578 7579 break; … … 7581 7582 7582 7583 /* Line 1806 of yacc.c */ 7583 #line 18 09"parser.yy"7584 #line 1810 "parser.yy" 7584 7585 { (yyval.tclass) = DeclarationNode::Type; } 7585 7586 break; … … 7588 7589 7589 7590 /* Line 1806 of yacc.c */ 7590 #line 181 1"parser.yy"7591 #line 1812 "parser.yy" 7591 7592 { (yyval.tclass) = DeclarationNode::Ftype; } 7592 7593 break; … … 7595 7596 7596 7597 /* Line 1806 of yacc.c */ 7597 #line 181 3"parser.yy"7598 #line 1814 "parser.yy" 7598 7599 { (yyval.tclass) = DeclarationNode::Dtype; } 7599 7600 break; … … 7602 7603 7603 7604 /* Line 1806 of yacc.c */ 7604 #line 181 8"parser.yy"7605 #line 1819 "parser.yy" 7605 7606 { (yyval.decl) = 0; } 7606 7607 break; … … 7609 7610 7610 7611 /* Line 1806 of yacc.c */ 7611 #line 182 0"parser.yy"7612 #line 1821 "parser.yy" 7612 7613 { (yyval.decl) = (yyvsp[(1) - (2)].decl) == 0 ? (yyvsp[(2) - (2)].decl) : (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); } 7613 7614 break; … … 7616 7617 7617 7618 /* Line 1806 of yacc.c */ 7618 #line 182 5"parser.yy"7619 #line 1826 "parser.yy" 7619 7620 { 7620 7621 typedefTable.openTrait( *(yyvsp[(2) - (5)].tok) ); … … 7626 7627 7627 7628 /* Line 1806 of yacc.c */ 7628 #line 183 0"parser.yy"7629 #line 1831 "parser.yy" 7629 7630 { (yyval.decl) = (yyvsp[(4) - (5)].decl); } 7630 7631 break; … … 7633 7634 7634 7635 /* Line 1806 of yacc.c */ 7635 #line 183 2"parser.yy"7636 #line 1833 "parser.yy" 7636 7637 { (yyval.decl) = 0; } 7637 7638 break; … … 7640 7641 7641 7642 /* Line 1806 of yacc.c */ 7642 #line 183 7"parser.yy"7643 #line 1838 "parser.yy" 7643 7644 { (yyval.en) = new TypeValueNode( (yyvsp[(1) - (1)].decl) ); } 7644 7645 break; … … 7647 7648 7648 7649 /* Line 1806 of yacc.c */ 7649 #line 184 0"parser.yy"7650 #line 1841 "parser.yy" 7650 7651 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_link( new TypeValueNode( (yyvsp[(3) - (3)].decl) ))); } 7651 7652 break; … … 7654 7655 7655 7656 /* Line 1806 of yacc.c */ 7656 #line 184 2"parser.yy"7657 #line 1843 "parser.yy" 7657 7658 { (yyval.en) = (ExpressionNode *)( (yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) )); } 7658 7659 break; … … 7661 7662 7662 7663 /* Line 1806 of yacc.c */ 7663 #line 184 7"parser.yy"7664 #line 1848 "parser.yy" 7664 7665 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7665 7666 break; … … 7668 7669 7669 7670 /* Line 1806 of yacc.c */ 7670 #line 18 49"parser.yy"7671 #line 1850 "parser.yy" 7671 7672 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) ); } 7672 7673 break; … … 7675 7676 7676 7677 /* Line 1806 of yacc.c */ 7677 #line 185 1"parser.yy"7678 #line 1852 "parser.yy" 7678 7679 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl)->copyStorageClasses( (yyvsp[(1) - (3)].decl) ) ); } 7679 7680 break; … … 7682 7683 7683 7684 /* Line 1806 of yacc.c */ 7684 #line 185 6"parser.yy"7685 #line 1857 "parser.yy" 7685 7686 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addAssertions( (yyvsp[(2) - (2)].decl) ); } 7686 7687 break; … … 7689 7690 7690 7691 /* Line 1806 of yacc.c */ 7691 #line 185 8"parser.yy"7692 #line 1859 "parser.yy" 7692 7693 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addAssertions( (yyvsp[(2) - (4)].decl) )->addType( (yyvsp[(4) - (4)].decl) ); } 7693 7694 break; … … 7696 7697 7697 7698 /* Line 1806 of yacc.c */ 7698 #line 186 3"parser.yy"7699 #line 1864 "parser.yy" 7699 7700 { 7700 7701 typedefTable.addToEnclosingScope( *(yyvsp[(1) - (1)].tok), TypedefTable::TD ); … … 7706 7707 7707 7708 /* Line 1806 of yacc.c */ 7708 #line 186 8"parser.yy"7709 #line 1869 "parser.yy" 7709 7710 { 7710 7711 typedefTable.addToEnclosingScope( *(yyvsp[(1) - (6)].tok), TypedefTable::TG ); … … 7716 7717 7717 7718 /* Line 1806 of yacc.c */ 7718 #line 187 6"parser.yy"7719 #line 1877 "parser.yy" 7719 7720 { 7720 7721 typedefTable.addToEnclosingScope( *(yyvsp[(2) - (9)].tok), TypedefTable::ID ); … … 7726 7727 7727 7728 /* Line 1806 of yacc.c */ 7728 #line 188 1"parser.yy"7729 #line 1882 "parser.yy" 7729 7730 { 7730 7731 typedefTable.enterTrait( *(yyvsp[(2) - (8)].tok) ); … … 7736 7737 7737 7738 /* Line 1806 of yacc.c */ 7738 #line 188 6"parser.yy"7739 #line 1887 "parser.yy" 7739 7740 { 7740 7741 typedefTable.leaveTrait(); … … 7747 7748 7748 7749 /* Line 1806 of yacc.c */ 7749 #line 189 6"parser.yy"7750 #line 1897 "parser.yy" 7750 7751 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 7751 7752 break; … … 7754 7755 7755 7756 /* Line 1806 of yacc.c */ 7756 #line 190 6"parser.yy"7757 #line 1907 "parser.yy" 7757 7758 { 7758 7759 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7764 7765 7765 7766 /* Line 1806 of yacc.c */ 7766 #line 191 1"parser.yy"7767 #line 1912 "parser.yy" 7767 7768 { 7768 7769 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7774 7775 7775 7776 /* Line 1806 of yacc.c */ 7776 #line 191 6"parser.yy"7777 #line 1917 "parser.yy" 7777 7778 { 7778 7779 typedefTable.addToEnclosingScope2( *(yyvsp[(5) - (5)].tok), TypedefTable::ID ); … … 7784 7785 7785 7786 /* Line 1806 of yacc.c */ 7786 #line 192 4"parser.yy"7787 #line 1925 "parser.yy" 7787 7788 { 7788 7789 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7794 7795 7795 7796 /* Line 1806 of yacc.c */ 7796 #line 19 29"parser.yy"7797 #line 1930 "parser.yy" 7797 7798 { 7798 7799 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7804 7805 7805 7806 /* Line 1806 of yacc.c */ 7806 #line 19 39"parser.yy"7807 #line 1940 "parser.yy" 7807 7808 {} 7808 7809 break; … … 7811 7812 7812 7813 /* Line 1806 of yacc.c */ 7813 #line 194 1"parser.yy"7814 #line 1942 "parser.yy" 7814 7815 { 7815 7816 if ( theTree ) { … … 7824 7825 7825 7826 /* Line 1806 of yacc.c */ 7826 #line 195 3"parser.yy"7827 #line 1954 "parser.yy" 7827 7828 { (yyval.decl) = ( (yyvsp[(1) - (3)].decl) != NULL ) ? (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ) : (yyvsp[(3) - (3)].decl); } 7828 7829 break; … … 7831 7832 7832 7833 /* Line 1806 of yacc.c */ 7833 #line 195 8"parser.yy"7834 #line 1959 "parser.yy" 7834 7835 { (yyval.decl) = 0; } 7835 7836 break; … … 7838 7839 7839 7840 /* Line 1806 of yacc.c */ 7840 #line 196 6"parser.yy"7841 #line 1967 "parser.yy" 7841 7842 {} 7842 7843 break; … … 7845 7846 7846 7847 /* Line 1806 of yacc.c */ 7847 #line 196 8"parser.yy"7848 #line 1969 "parser.yy" 7848 7849 { 7849 7850 linkageStack.push( linkage ); … … 7855 7856 7856 7857 /* Line 1806 of yacc.c */ 7857 #line 197 3"parser.yy"7858 #line 1974 "parser.yy" 7858 7859 { 7859 7860 linkage = linkageStack.top(); … … 7866 7867 7867 7868 /* Line 1806 of yacc.c */ 7868 #line 19 79"parser.yy"7869 #line 1980 "parser.yy" 7869 7870 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7870 7871 break; … … 7873 7874 7874 7875 /* Line 1806 of yacc.c */ 7875 #line 19 89"parser.yy"7876 #line 1990 "parser.yy" 7876 7877 { 7877 7878 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7884 7885 7885 7886 /* Line 1806 of yacc.c */ 7886 #line 199 5"parser.yy"7887 #line 1996 "parser.yy" 7887 7888 { 7888 7889 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7895 7896 7896 7897 /* Line 1806 of yacc.c */ 7897 #line 200 4"parser.yy"7898 #line 2005 "parser.yy" 7898 7899 { 7899 7900 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7906 7907 7907 7908 /* Line 1806 of yacc.c */ 7908 #line 201 0"parser.yy"7909 #line 2011 "parser.yy" 7909 7910 { 7910 7911 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7917 7918 7918 7919 /* Line 1806 of yacc.c */ 7919 #line 201 6"parser.yy"7920 #line 2017 "parser.yy" 7920 7921 { 7921 7922 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7928 7929 7929 7930 /* Line 1806 of yacc.c */ 7930 #line 202 2"parser.yy"7931 #line 2023 "parser.yy" 7931 7932 { 7932 7933 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7939 7940 7940 7941 /* Line 1806 of yacc.c */ 7941 #line 202 8"parser.yy"7942 #line 2029 "parser.yy" 7942 7943 { 7943 7944 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7950 7951 7951 7952 /* Line 1806 of yacc.c */ 7952 #line 203 6"parser.yy"7953 #line 2037 "parser.yy" 7953 7954 { 7954 7955 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7961 7962 7962 7963 /* Line 1806 of yacc.c */ 7963 #line 204 2"parser.yy"7964 #line 2043 "parser.yy" 7964 7965 { 7965 7966 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7972 7973 7973 7974 /* Line 1806 of yacc.c */ 7974 #line 205 0"parser.yy"7975 #line 2051 "parser.yy" 7975 7976 { 7976 7977 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7983 7984 7984 7985 /* Line 1806 of yacc.c */ 7985 #line 205 6"parser.yy"7986 #line 2057 "parser.yy" 7986 7987 { 7987 7988 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7994 7995 7995 7996 /* Line 1806 of yacc.c */ 7996 #line 207 1"parser.yy"7997 #line 2072 "parser.yy" 7997 7998 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::Range ), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en) ); } 7998 7999 break; … … 8001 8002 8002 8003 /* Line 1806 of yacc.c */ 8003 #line 208 1"parser.yy"8004 #line 2082 "parser.yy" 8004 8005 { (yyval.decl) = 0; } 8005 8006 break; … … 8008 8009 8009 8010 /* Line 1806 of yacc.c */ 8010 #line 208 8"parser.yy"8011 #line 2089 "parser.yy" 8011 8012 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 8012 8013 break; … … 8015 8016 8016 8017 /* Line 1806 of yacc.c */ 8017 #line 209 4"parser.yy"8018 #line 2095 "parser.yy" 8018 8019 { (yyval.decl) = 0; } 8019 8020 break; 8020 8021 8021 8022 case 557: 8022 8023 /* Line 1806 of yacc.c */8024 #line 2109 "parser.yy"8025 {}8026 break;8027 8028 case 558:8029 8023 8030 8024 /* Line 1806 of yacc.c */ … … 8033 8027 break; 8034 8028 8035 case 55 9:8029 case 558: 8036 8030 8037 8031 /* Line 1806 of yacc.c */ … … 8040 8034 break; 8041 8035 8042 case 5 60:8036 case 559: 8043 8037 8044 8038 /* Line 1806 of yacc.c */ … … 8047 8041 break; 8048 8042 8043 case 560: 8044 8045 /* Line 1806 of yacc.c */ 8046 #line 2113 "parser.yy" 8047 {} 8048 break; 8049 8049 8050 case 561: 8050 8051 8051 8052 /* Line 1806 of yacc.c */ 8052 #line 214 7"parser.yy"8053 #line 2148 "parser.yy" 8053 8054 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8054 8055 break; … … 8057 8058 8058 8059 /* Line 1806 of yacc.c */ 8059 #line 215 0"parser.yy"8060 #line 2151 "parser.yy" 8060 8061 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8061 8062 break; … … 8064 8065 8065 8066 /* Line 1806 of yacc.c */ 8066 #line 215 2"parser.yy"8067 #line 2153 "parser.yy" 8067 8068 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8068 8069 break; … … 8071 8072 8072 8073 /* Line 1806 of yacc.c */ 8073 #line 215 7"parser.yy"8074 #line 2158 "parser.yy" 8074 8075 { 8075 8076 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8081 8082 8082 8083 /* Line 1806 of yacc.c */ 8083 #line 216 2"parser.yy"8084 #line 2163 "parser.yy" 8084 8085 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8085 8086 break; … … 8088 8089 8089 8090 /* Line 1806 of yacc.c */ 8090 #line 216 7"parser.yy"8091 #line 2168 "parser.yy" 8091 8092 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8092 8093 break; … … 8095 8096 8096 8097 /* Line 1806 of yacc.c */ 8097 #line 21 69"parser.yy"8098 #line 2170 "parser.yy" 8098 8099 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8099 8100 break; … … 8102 8103 8103 8104 /* Line 1806 of yacc.c */ 8104 #line 217 1"parser.yy"8105 #line 2172 "parser.yy" 8105 8106 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8106 8107 break; … … 8109 8110 8110 8111 /* Line 1806 of yacc.c */ 8111 #line 217 6"parser.yy"8112 #line 2177 "parser.yy" 8112 8113 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8113 8114 break; … … 8116 8117 8117 8118 /* Line 1806 of yacc.c */ 8118 #line 217 8"parser.yy"8119 #line 2179 "parser.yy" 8119 8120 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8120 8121 break; … … 8123 8124 8124 8125 /* Line 1806 of yacc.c */ 8125 #line 218 0"parser.yy"8126 #line 2181 "parser.yy" 8126 8127 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8127 8128 break; … … 8130 8131 8131 8132 /* Line 1806 of yacc.c */ 8132 #line 218 2"parser.yy"8133 #line 2183 "parser.yy" 8133 8134 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8134 8135 break; … … 8137 8138 8138 8139 /* Line 1806 of yacc.c */ 8139 #line 218 7"parser.yy"8140 #line 2188 "parser.yy" 8140 8141 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8141 8142 break; … … 8144 8145 8145 8146 /* Line 1806 of yacc.c */ 8146 #line 21 89"parser.yy"8147 #line 2190 "parser.yy" 8147 8148 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8148 8149 break; … … 8151 8152 8152 8153 /* Line 1806 of yacc.c */ 8153 #line 2 199"parser.yy"8154 #line 2200 "parser.yy" 8154 8155 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8155 8156 break; … … 8158 8159 8159 8160 /* Line 1806 of yacc.c */ 8160 #line 220 2"parser.yy"8161 #line 2203 "parser.yy" 8161 8162 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8162 8163 break; … … 8165 8166 8166 8167 /* Line 1806 of yacc.c */ 8167 #line 220 7"parser.yy"8168 #line 2208 "parser.yy" 8168 8169 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8169 8170 break; … … 8172 8173 8173 8174 /* Line 1806 of yacc.c */ 8174 #line 22 09"parser.yy"8175 #line 2210 "parser.yy" 8175 8176 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8176 8177 break; … … 8179 8180 8180 8181 /* Line 1806 of yacc.c */ 8181 #line 221 1"parser.yy"8182 #line 2212 "parser.yy" 8182 8183 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8183 8184 break; … … 8186 8187 8187 8188 /* Line 1806 of yacc.c */ 8188 #line 221 6"parser.yy"8189 #line 2217 "parser.yy" 8189 8190 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8190 8191 break; … … 8193 8194 8194 8195 /* Line 1806 of yacc.c */ 8195 #line 221 8"parser.yy"8196 #line 2219 "parser.yy" 8196 8197 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8197 8198 break; … … 8200 8201 8201 8202 /* Line 1806 of yacc.c */ 8202 #line 222 0"parser.yy"8203 #line 2221 "parser.yy" 8203 8204 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8204 8205 break; … … 8207 8208 8208 8209 /* Line 1806 of yacc.c */ 8209 #line 222 5"parser.yy"8210 #line 2226 "parser.yy" 8210 8211 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8211 8212 break; … … 8214 8215 8215 8216 /* Line 1806 of yacc.c */ 8216 #line 222 7"parser.yy"8217 #line 2228 "parser.yy" 8217 8218 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8218 8219 break; … … 8221 8222 8222 8223 /* Line 1806 of yacc.c */ 8223 #line 22 29"parser.yy"8224 #line 2230 "parser.yy" 8224 8225 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8225 8226 break; … … 8228 8229 8229 8230 /* Line 1806 of yacc.c */ 8230 #line 224 4"parser.yy"8231 #line 2245 "parser.yy" 8231 8232 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addIdList( (yyvsp[(3) - (4)].decl) ); } 8232 8233 break; … … 8235 8236 8236 8237 /* Line 1806 of yacc.c */ 8237 #line 224 6"parser.yy"8238 #line 2247 "parser.yy" 8238 8239 { (yyval.decl) = (yyvsp[(2) - (6)].decl)->addIdList( (yyvsp[(5) - (6)].decl) ); } 8239 8240 break; … … 8242 8243 8243 8244 /* Line 1806 of yacc.c */ 8244 #line 224 8"parser.yy"8245 #line 2249 "parser.yy" 8245 8246 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8246 8247 break; … … 8249 8250 8250 8251 /* Line 1806 of yacc.c */ 8251 #line 225 3"parser.yy"8252 #line 2254 "parser.yy" 8252 8253 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8253 8254 break; … … 8256 8257 8257 8258 /* Line 1806 of yacc.c */ 8258 #line 225 5"parser.yy"8259 #line 2256 "parser.yy" 8259 8260 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8260 8261 break; … … 8263 8264 8264 8265 /* Line 1806 of yacc.c */ 8265 #line 225 7"parser.yy"8266 #line 2258 "parser.yy" 8266 8267 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8267 8268 break; … … 8270 8271 8271 8272 /* Line 1806 of yacc.c */ 8272 #line 226 2"parser.yy"8273 #line 2263 "parser.yy" 8273 8274 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8274 8275 break; … … 8277 8278 8278 8279 /* Line 1806 of yacc.c */ 8279 #line 226 4"parser.yy"8280 #line 2265 "parser.yy" 8280 8281 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8281 8282 break; … … 8284 8285 8285 8286 /* Line 1806 of yacc.c */ 8286 #line 226 6"parser.yy"8287 #line 2267 "parser.yy" 8287 8288 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8288 8289 break; … … 8291 8292 8292 8293 /* Line 1806 of yacc.c */ 8293 #line 228 1"parser.yy"8294 #line 2282 "parser.yy" 8294 8295 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8295 8296 break; … … 8298 8299 8299 8300 /* Line 1806 of yacc.c */ 8300 #line 228 4"parser.yy"8301 #line 2285 "parser.yy" 8301 8302 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8302 8303 break; … … 8305 8306 8306 8307 /* Line 1806 of yacc.c */ 8307 #line 228 6"parser.yy"8308 #line 2287 "parser.yy" 8308 8309 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8309 8310 break; … … 8312 8313 8313 8314 /* Line 1806 of yacc.c */ 8314 #line 229 2"parser.yy"8315 #line 2293 "parser.yy" 8315 8316 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8316 8317 break; … … 8319 8320 8320 8321 /* Line 1806 of yacc.c */ 8321 #line 229 7"parser.yy"8322 #line 2298 "parser.yy" 8322 8323 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8323 8324 break; … … 8326 8327 8327 8328 /* Line 1806 of yacc.c */ 8328 #line 2 299"parser.yy"8329 #line 2300 "parser.yy" 8329 8330 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8330 8331 break; … … 8333 8334 8334 8335 /* Line 1806 of yacc.c */ 8335 #line 230 1"parser.yy"8336 #line 2302 "parser.yy" 8336 8337 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8337 8338 break; … … 8340 8341 8341 8342 /* Line 1806 of yacc.c */ 8342 #line 230 6"parser.yy"8343 #line 2307 "parser.yy" 8343 8344 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8344 8345 break; … … 8347 8348 8348 8349 /* Line 1806 of yacc.c */ 8349 #line 230 8"parser.yy"8350 #line 2309 "parser.yy" 8350 8351 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8351 8352 break; … … 8354 8355 8355 8356 /* Line 1806 of yacc.c */ 8356 #line 231 0"parser.yy"8357 #line 2311 "parser.yy" 8357 8358 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8358 8359 break; … … 8361 8362 8362 8363 /* Line 1806 of yacc.c */ 8363 #line 231 2"parser.yy"8364 #line 2313 "parser.yy" 8364 8365 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8365 8366 break; … … 8368 8369 8369 8370 /* Line 1806 of yacc.c */ 8370 #line 231 7"parser.yy"8371 #line 2318 "parser.yy" 8371 8372 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8372 8373 break; … … 8375 8376 8376 8377 /* Line 1806 of yacc.c */ 8377 #line 23 19"parser.yy"8378 #line 2320 "parser.yy" 8378 8379 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8379 8380 break; … … 8382 8383 8383 8384 /* Line 1806 of yacc.c */ 8384 #line 232 1"parser.yy"8385 #line 2322 "parser.yy" 8385 8386 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8386 8387 break; … … 8389 8390 8390 8391 /* Line 1806 of yacc.c */ 8391 #line 233 1"parser.yy"8392 #line 2332 "parser.yy" 8392 8393 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8393 8394 break; … … 8396 8397 8397 8398 /* Line 1806 of yacc.c */ 8398 #line 233 4"parser.yy"8399 #line 2335 "parser.yy" 8399 8400 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8400 8401 break; … … 8403 8404 8404 8405 /* Line 1806 of yacc.c */ 8405 #line 233 6"parser.yy"8406 #line 2337 "parser.yy" 8406 8407 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8407 8408 break; … … 8410 8411 8411 8412 /* Line 1806 of yacc.c */ 8412 #line 234 1"parser.yy"8413 #line 2342 "parser.yy" 8413 8414 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8414 8415 break; … … 8417 8418 8418 8419 /* Line 1806 of yacc.c */ 8419 #line 234 3"parser.yy"8420 #line 2344 "parser.yy" 8420 8421 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8421 8422 break; … … 8424 8425 8425 8426 /* Line 1806 of yacc.c */ 8426 #line 234 5"parser.yy"8427 #line 2346 "parser.yy" 8427 8428 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8428 8429 break; … … 8431 8432 8432 8433 /* Line 1806 of yacc.c */ 8433 #line 235 0"parser.yy"8434 #line 2351 "parser.yy" 8434 8435 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8435 8436 break; … … 8438 8439 8439 8440 /* Line 1806 of yacc.c */ 8440 #line 235 2"parser.yy"8441 #line 2353 "parser.yy" 8441 8442 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8442 8443 break; … … 8445 8446 8446 8447 /* Line 1806 of yacc.c */ 8447 #line 235 4"parser.yy"8448 #line 2355 "parser.yy" 8448 8449 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8449 8450 break; … … 8452 8453 8453 8454 /* Line 1806 of yacc.c */ 8454 #line 235 6"parser.yy"8455 #line 2357 "parser.yy" 8455 8456 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8456 8457 break; … … 8459 8460 8460 8461 /* Line 1806 of yacc.c */ 8461 #line 236 1"parser.yy"8462 #line 2362 "parser.yy" 8462 8463 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8463 8464 break; … … 8466 8467 8467 8468 /* Line 1806 of yacc.c */ 8468 #line 236 3"parser.yy"8469 #line 2364 "parser.yy" 8469 8470 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8470 8471 break; … … 8473 8474 8474 8475 /* Line 1806 of yacc.c */ 8475 #line 236 5"parser.yy"8476 #line 2366 "parser.yy" 8476 8477 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8477 8478 break; … … 8480 8481 8481 8482 /* Line 1806 of yacc.c */ 8482 #line 239 6"parser.yy"8483 #line 2397 "parser.yy" 8483 8484 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8484 8485 break; … … 8487 8488 8488 8489 /* Line 1806 of yacc.c */ 8489 #line 2 399"parser.yy"8490 #line 2400 "parser.yy" 8490 8491 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8491 8492 break; … … 8494 8495 8495 8496 /* Line 1806 of yacc.c */ 8496 #line 240 1"parser.yy"8497 #line 2402 "parser.yy" 8497 8498 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8498 8499 break; … … 8501 8502 8502 8503 /* Line 1806 of yacc.c */ 8503 #line 240 6"parser.yy"8504 #line 2407 "parser.yy" 8504 8505 { 8505 8506 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8511 8512 8512 8513 /* Line 1806 of yacc.c */ 8513 #line 241 1"parser.yy"8514 #line 2412 "parser.yy" 8514 8515 { 8515 8516 typedefTable.setNextIdentifier( *(yyvsp[(1) - (1)].tok) ); … … 8521 8522 8522 8523 /* Line 1806 of yacc.c */ 8523 #line 24 19"parser.yy"8524 #line 2420 "parser.yy" 8524 8525 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8525 8526 break; … … 8528 8529 8529 8530 /* Line 1806 of yacc.c */ 8530 #line 242 1"parser.yy"8531 #line 2422 "parser.yy" 8531 8532 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8532 8533 break; … … 8535 8536 8536 8537 /* Line 1806 of yacc.c */ 8537 #line 242 3"parser.yy"8538 #line 2424 "parser.yy" 8538 8539 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8539 8540 break; … … 8542 8543 8543 8544 /* Line 1806 of yacc.c */ 8544 #line 242 8"parser.yy"8545 #line 2429 "parser.yy" 8545 8546 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8546 8547 break; … … 8549 8550 8550 8551 /* Line 1806 of yacc.c */ 8551 #line 243 0"parser.yy"8552 #line 2431 "parser.yy" 8552 8553 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8553 8554 break; … … 8556 8557 8557 8558 /* Line 1806 of yacc.c */ 8558 #line 243 5"parser.yy"8559 #line 2436 "parser.yy" 8559 8560 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8560 8561 break; … … 8563 8564 8564 8565 /* Line 1806 of yacc.c */ 8565 #line 243 7"parser.yy"8566 #line 2438 "parser.yy" 8566 8567 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8567 8568 break; … … 8570 8571 8571 8572 /* Line 1806 of yacc.c */ 8572 #line 245 2"parser.yy"8573 #line 2453 "parser.yy" 8573 8574 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8574 8575 break; … … 8577 8578 8578 8579 /* Line 1806 of yacc.c */ 8579 #line 245 4"parser.yy"8580 #line 2455 "parser.yy" 8580 8581 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8581 8582 break; … … 8584 8585 8585 8586 /* Line 1806 of yacc.c */ 8586 #line 24 59"parser.yy"8587 #line 2460 "parser.yy" 8587 8588 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8588 8589 break; … … 8591 8592 8592 8593 /* Line 1806 of yacc.c */ 8593 #line 246 1"parser.yy"8594 #line 2462 "parser.yy" 8594 8595 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8595 8596 break; … … 8598 8599 8599 8600 /* Line 1806 of yacc.c */ 8600 #line 246 3"parser.yy"8601 #line 2464 "parser.yy" 8601 8602 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8602 8603 break; … … 8605 8606 8606 8607 /* Line 1806 of yacc.c */ 8607 #line 246 5"parser.yy"8608 #line 2466 "parser.yy" 8608 8609 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8609 8610 break; … … 8612 8613 8613 8614 /* Line 1806 of yacc.c */ 8614 #line 246 7"parser.yy"8615 #line 2468 "parser.yy" 8615 8616 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8616 8617 break; … … 8619 8620 8620 8621 /* Line 1806 of yacc.c */ 8621 #line 247 3"parser.yy"8622 #line 2474 "parser.yy" 8622 8623 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8623 8624 break; … … 8626 8627 8627 8628 /* Line 1806 of yacc.c */ 8628 #line 247 5"parser.yy"8629 #line 2476 "parser.yy" 8629 8630 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8630 8631 break; … … 8633 8634 8634 8635 /* Line 1806 of yacc.c */ 8635 #line 247 7"parser.yy"8636 #line 2478 "parser.yy" 8636 8637 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8637 8638 break; … … 8640 8641 8641 8642 /* Line 1806 of yacc.c */ 8642 #line 248 2"parser.yy"8643 #line 2483 "parser.yy" 8643 8644 { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); } 8644 8645 break; … … 8647 8648 8648 8649 /* Line 1806 of yacc.c */ 8649 #line 248 4"parser.yy"8650 #line 2485 "parser.yy" 8650 8651 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8651 8652 break; … … 8654 8655 8655 8656 /* Line 1806 of yacc.c */ 8656 #line 248 6"parser.yy"8657 #line 2487 "parser.yy" 8657 8658 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8658 8659 break; … … 8661 8662 8662 8663 /* Line 1806 of yacc.c */ 8663 #line 249 2"parser.yy"8664 #line 2493 "parser.yy" 8664 8665 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8665 8666 break; … … 8668 8669 8669 8670 /* Line 1806 of yacc.c */ 8670 #line 249 4"parser.yy"8671 #line 2495 "parser.yy" 8671 8672 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false )->addArray( (yyvsp[(3) - (3)].decl) ); } 8672 8673 break; … … 8675 8676 8676 8677 /* Line 1806 of yacc.c */ 8677 #line 250 0"parser.yy"8678 #line 2501 "parser.yy" 8678 8679 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(3) - (5)].en), 0, false ); } 8679 8680 break; … … 8682 8683 8683 8684 /* Line 1806 of yacc.c */ 8684 #line 250 2"parser.yy"8685 #line 2503 "parser.yy" 8685 8686 { (yyval.decl) = DeclarationNode::newVarArray( 0 ); } 8686 8687 break; … … 8689 8690 8690 8691 /* Line 1806 of yacc.c */ 8691 #line 250 4"parser.yy"8692 #line 2505 "parser.yy" 8692 8693 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newArray( (yyvsp[(4) - (6)].en), 0, false ) ); } 8693 8694 break; … … 8696 8697 8697 8698 /* Line 1806 of yacc.c */ 8698 #line 250 6"parser.yy"8699 #line 2507 "parser.yy" 8699 8700 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newVarArray( 0 ) ); } 8700 8701 break; … … 8703 8704 8704 8705 /* Line 1806 of yacc.c */ 8705 #line 252 1"parser.yy"8706 #line 2522 "parser.yy" 8706 8707 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8707 8708 break; … … 8710 8711 8711 8712 /* Line 1806 of yacc.c */ 8712 #line 252 3"parser.yy"8713 #line 2524 "parser.yy" 8713 8714 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8714 8715 break; … … 8717 8718 8718 8719 /* Line 1806 of yacc.c */ 8719 #line 252 8"parser.yy"8720 #line 2529 "parser.yy" 8720 8721 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8721 8722 break; … … 8724 8725 8725 8726 /* Line 1806 of yacc.c */ 8726 #line 253 0"parser.yy"8727 #line 2531 "parser.yy" 8727 8728 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8728 8729 break; … … 8731 8732 8732 8733 /* Line 1806 of yacc.c */ 8733 #line 253 2"parser.yy"8734 #line 2533 "parser.yy" 8734 8735 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8735 8736 break; … … 8738 8739 8739 8740 /* Line 1806 of yacc.c */ 8740 #line 253 4"parser.yy"8741 #line 2535 "parser.yy" 8741 8742 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8742 8743 break; … … 8745 8746 8746 8747 /* Line 1806 of yacc.c */ 8747 #line 253 6"parser.yy"8748 #line 2537 "parser.yy" 8748 8749 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8749 8750 break; … … 8752 8753 8753 8754 /* Line 1806 of yacc.c */ 8754 #line 254 2"parser.yy"8755 #line 2543 "parser.yy" 8755 8756 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8756 8757 break; … … 8759 8760 8760 8761 /* Line 1806 of yacc.c */ 8761 #line 254 4"parser.yy"8762 #line 2545 "parser.yy" 8762 8763 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8763 8764 break; … … 8766 8767 8767 8768 /* Line 1806 of yacc.c */ 8768 #line 254 6"parser.yy"8769 #line 2547 "parser.yy" 8769 8770 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8770 8771 break; … … 8773 8774 8774 8775 /* Line 1806 of yacc.c */ 8775 #line 255 1"parser.yy"8776 #line 2552 "parser.yy" 8776 8777 { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); } 8777 8778 break; … … 8780 8781 8781 8782 /* Line 1806 of yacc.c */ 8782 #line 255 3"parser.yy"8783 #line 2554 "parser.yy" 8783 8784 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8784 8785 break; … … 8787 8788 8788 8789 /* Line 1806 of yacc.c */ 8789 #line 255 5"parser.yy"8790 #line 2556 "parser.yy" 8790 8791 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8791 8792 break; … … 8794 8795 8795 8796 /* Line 1806 of yacc.c */ 8796 #line 256 2"parser.yy"8797 #line 2563 "parser.yy" 8797 8798 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8798 8799 break; … … 8801 8802 8802 8803 /* Line 1806 of yacc.c */ 8803 #line 257 3"parser.yy"8804 #line 2574 "parser.yy" 8804 8805 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8805 8806 break; … … 8808 8809 8809 8810 /* Line 1806 of yacc.c */ 8810 #line 257 6"parser.yy"8811 #line 2577 "parser.yy" 8811 8812 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 8812 8813 break; … … 8815 8816 8816 8817 /* Line 1806 of yacc.c */ 8817 #line 257 8"parser.yy"8818 #line 2579 "parser.yy" 8818 8819 { (yyval.decl) = DeclarationNode::newArray( 0, (yyvsp[(3) - (5)].decl), false ); } 8819 8820 break; … … 8822 8823 8823 8824 /* Line 1806 of yacc.c */ 8824 #line 258 1"parser.yy"8825 #line 2582 "parser.yy" 8825 8826 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 8826 8827 break; … … 8829 8830 8830 8831 /* Line 1806 of yacc.c */ 8831 #line 258 3"parser.yy"8832 #line 2584 "parser.yy" 8832 8833 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl), true ); } 8833 8834 break; … … 8836 8837 8837 8838 /* Line 1806 of yacc.c */ 8838 #line 258 5"parser.yy"8839 #line 2586 "parser.yy" 8839 8840 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(3) - (7)].decl), true ); } 8840 8841 break; … … 8843 8844 8844 8845 /* Line 1806 of yacc.c */ 8845 #line 2 599"parser.yy"8846 #line 2600 "parser.yy" 8846 8847 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8847 8848 break; … … 8850 8851 8851 8852 /* Line 1806 of yacc.c */ 8852 #line 260 1"parser.yy"8853 #line 2602 "parser.yy" 8853 8854 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 8854 8855 break; … … 8857 8858 8858 8859 /* Line 1806 of yacc.c */ 8859 #line 260 6"parser.yy"8860 #line 2607 "parser.yy" 8860 8861 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8861 8862 break; … … 8864 8865 8865 8866 /* Line 1806 of yacc.c */ 8866 #line 260 8"parser.yy"8867 #line 2609 "parser.yy" 8867 8868 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8868 8869 break; … … 8871 8872 8872 8873 /* Line 1806 of yacc.c */ 8873 #line 261 0"parser.yy"8874 #line 2611 "parser.yy" 8874 8875 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8875 8876 break; … … 8878 8879 8879 8880 /* Line 1806 of yacc.c */ 8880 #line 261 2"parser.yy"8881 #line 2613 "parser.yy" 8881 8882 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8882 8883 break; … … 8885 8886 8886 8887 /* Line 1806 of yacc.c */ 8887 #line 261 4"parser.yy"8888 #line 2615 "parser.yy" 8888 8889 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8889 8890 break; … … 8892 8893 8893 8894 /* Line 1806 of yacc.c */ 8894 #line 262 0"parser.yy"8895 #line 2621 "parser.yy" 8895 8896 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8896 8897 break; … … 8899 8900 8900 8901 /* Line 1806 of yacc.c */ 8901 #line 262 2"parser.yy"8902 #line 2623 "parser.yy" 8902 8903 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8903 8904 break; … … 8906 8907 8907 8908 /* Line 1806 of yacc.c */ 8908 #line 262 4"parser.yy"8909 #line 2625 "parser.yy" 8909 8910 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8910 8911 break; … … 8913 8914 8914 8915 /* Line 1806 of yacc.c */ 8915 #line 26 29"parser.yy"8916 #line 2630 "parser.yy" 8916 8917 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8917 8918 break; … … 8920 8921 8921 8922 /* Line 1806 of yacc.c */ 8922 #line 263 1"parser.yy"8923 #line 2632 "parser.yy" 8923 8924 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8924 8925 break; … … 8927 8928 8928 8929 /* Line 1806 of yacc.c */ 8929 #line 264 1"parser.yy"8930 #line 2642 "parser.yy" 8930 8931 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 8931 8932 break; … … 8934 8935 8935 8936 /* Line 1806 of yacc.c */ 8936 #line 265 1"parser.yy"8937 #line 2652 "parser.yy" 8937 8938 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8938 8939 break; … … 8941 8942 8942 8943 /* Line 1806 of yacc.c */ 8943 #line 265 3"parser.yy"8944 #line 2654 "parser.yy" 8944 8945 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8945 8946 break; … … 8948 8949 8949 8950 /* Line 1806 of yacc.c */ 8950 #line 265 5"parser.yy"8951 #line 2656 "parser.yy" 8951 8952 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8952 8953 break; … … 8955 8956 8956 8957 /* Line 1806 of yacc.c */ 8957 #line 265 7"parser.yy"8958 #line 2658 "parser.yy" 8958 8959 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8959 8960 break; … … 8962 8963 8963 8964 /* Line 1806 of yacc.c */ 8964 #line 26 59"parser.yy"8965 #line 2660 "parser.yy" 8965 8966 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8966 8967 break; … … 8969 8970 8970 8971 /* Line 1806 of yacc.c */ 8971 #line 266 1"parser.yy"8972 #line 2662 "parser.yy" 8972 8973 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8973 8974 break; … … 8976 8977 8977 8978 /* Line 1806 of yacc.c */ 8978 #line 266 8"parser.yy"8979 #line 2669 "parser.yy" 8979 8980 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8980 8981 break; … … 8983 8984 8984 8985 /* Line 1806 of yacc.c */ 8985 #line 267 0"parser.yy"8986 #line 2671 "parser.yy" 8986 8987 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8987 8988 break; … … 8990 8991 8991 8992 /* Line 1806 of yacc.c */ 8992 #line 267 2"parser.yy"8993 #line 2673 "parser.yy" 8993 8994 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8994 8995 break; … … 8997 8998 8998 8999 /* Line 1806 of yacc.c */ 8999 #line 267 4"parser.yy"9000 #line 2675 "parser.yy" 9000 9001 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 9001 9002 break; … … 9004 9005 9005 9006 /* Line 1806 of yacc.c */ 9006 #line 267 6"parser.yy"9007 #line 2677 "parser.yy" 9007 9008 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9008 9009 break; … … 9011 9012 9012 9013 /* Line 1806 of yacc.c */ 9013 #line 267 8"parser.yy"9014 #line 2679 "parser.yy" 9014 9015 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9015 9016 break; … … 9018 9019 9019 9020 /* Line 1806 of yacc.c */ 9020 #line 268 0"parser.yy"9021 #line 2681 "parser.yy" 9021 9022 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9022 9023 break; … … 9025 9026 9026 9027 /* Line 1806 of yacc.c */ 9027 #line 268 2"parser.yy"9028 #line 2683 "parser.yy" 9028 9029 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9029 9030 break; … … 9032 9033 9033 9034 /* Line 1806 of yacc.c */ 9034 #line 268 4"parser.yy"9035 #line 2685 "parser.yy" 9035 9036 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 9036 9037 break; … … 9039 9040 9040 9041 /* Line 1806 of yacc.c */ 9041 #line 268 6"parser.yy"9042 #line 2687 "parser.yy" 9042 9043 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9043 9044 break; … … 9046 9047 9047 9048 /* Line 1806 of yacc.c */ 9048 #line 269 1"parser.yy"9049 #line 2692 "parser.yy" 9049 9050 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 9050 9051 break; … … 9053 9054 9054 9055 /* Line 1806 of yacc.c */ 9055 #line 269 3"parser.yy"9056 #line 2694 "parser.yy" 9056 9057 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 9057 9058 break; … … 9060 9061 9061 9062 /* Line 1806 of yacc.c */ 9062 #line 269 8"parser.yy"9063 #line 2699 "parser.yy" 9063 9064 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), true ); } 9064 9065 break; … … 9067 9068 9068 9069 /* Line 1806 of yacc.c */ 9069 #line 270 0"parser.yy"9070 #line 2701 "parser.yy" 9070 9071 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl)->addQualifiers( (yyvsp[(3) - (7)].decl) ), true ); } 9071 9072 break; … … 9074 9075 9075 9076 /* Line 1806 of yacc.c */ 9076 #line 272 7"parser.yy"9077 #line 2728 "parser.yy" 9077 9078 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 9078 9079 break; … … 9081 9082 9082 9083 /* Line 1806 of yacc.c */ 9083 #line 273 8"parser.yy"9084 #line 2739 "parser.yy" 9084 9085 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9085 9086 break; … … 9088 9089 9089 9090 /* Line 1806 of yacc.c */ 9090 #line 274 0"parser.yy"9091 #line 2741 "parser.yy" 9091 9092 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9092 9093 break; … … 9095 9096 9096 9097 /* Line 1806 of yacc.c */ 9097 #line 274 2"parser.yy"9098 #line 2743 "parser.yy" 9098 9099 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9099 9100 break; … … 9102 9103 9103 9104 /* Line 1806 of yacc.c */ 9104 #line 274 4"parser.yy"9105 #line 2745 "parser.yy" 9105 9106 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9106 9107 break; … … 9109 9110 9110 9111 /* Line 1806 of yacc.c */ 9111 #line 274 6"parser.yy"9112 #line 2747 "parser.yy" 9112 9113 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 9113 9114 break; … … 9116 9117 9117 9118 /* Line 1806 of yacc.c */ 9118 #line 274 8"parser.yy"9119 #line 2749 "parser.yy" 9119 9120 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 9120 9121 break; … … 9123 9124 9124 9125 /* Line 1806 of yacc.c */ 9125 #line 275 5"parser.yy"9126 #line 2756 "parser.yy" 9126 9127 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9127 9128 break; … … 9130 9131 9131 9132 /* Line 1806 of yacc.c */ 9132 #line 275 7"parser.yy"9133 #line 2758 "parser.yy" 9133 9134 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9134 9135 break; … … 9137 9138 9138 9139 /* Line 1806 of yacc.c */ 9139 #line 27 59"parser.yy"9140 #line 2760 "parser.yy" 9140 9141 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9141 9142 break; … … 9144 9145 9145 9146 /* Line 1806 of yacc.c */ 9146 #line 276 1"parser.yy"9147 #line 2762 "parser.yy" 9147 9148 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9148 9149 break; … … 9151 9152 9152 9153 /* Line 1806 of yacc.c */ 9153 #line 276 3"parser.yy"9154 #line 2764 "parser.yy" 9154 9155 { (yyval.decl) = (yyvsp[(4) - (4)].decl)->addNewArray( (yyvsp[(3) - (4)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 9155 9156 break; … … 9158 9159 9159 9160 /* Line 1806 of yacc.c */ 9160 #line 276 5"parser.yy"9161 #line 2766 "parser.yy" 9161 9162 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 9162 9163 break; … … 9165 9166 9166 9167 /* Line 1806 of yacc.c */ 9167 #line 277 0"parser.yy"9168 #line 2771 "parser.yy" 9168 9169 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 9169 9170 break; … … 9172 9173 9173 9174 /* Line 1806 of yacc.c */ 9174 #line 277 5"parser.yy"9175 #line 2776 "parser.yy" 9175 9176 { (yyval.decl) = DeclarationNode::newFunction( 0, DeclarationNode::newTuple( 0 ), (yyvsp[(4) - (5)].decl), 0 ); } 9176 9177 break; … … 9179 9180 9180 9181 /* Line 1806 of yacc.c */ 9181 #line 277 7"parser.yy"9182 #line 2778 "parser.yy" 9182 9183 { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); } 9183 9184 break; … … 9186 9187 9187 9188 /* Line 1806 of yacc.c */ 9188 #line 27 79"parser.yy"9189 #line 2780 "parser.yy" 9189 9190 { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); } 9190 9191 break; … … 9193 9194 9194 9195 /* Line 1806 of yacc.c */ 9195 #line 280 3"parser.yy"9196 #line 2804 "parser.yy" 9196 9197 { (yyval.en) = 0; } 9197 9198 break; … … 9200 9201 9201 9202 /* Line 1806 of yacc.c */ 9202 #line 280 5"parser.yy"9203 #line 2806 "parser.yy" 9203 9204 { (yyval.en) = (yyvsp[(2) - (2)].en); } 9204 9205 break; … … 9207 9208 9208 9209 /* Line 1806 of yacc.c */ 9209 #line 921 0"Parser/parser.cc"9210 #line 9211 "Parser/parser.cc" 9210 9211 default: break; 9211 9212 } … … 9438 9439 9439 9440 /* Line 2067 of yacc.c */ 9440 #line 280 8"parser.yy"9441 #line 2809 "parser.yy" 9441 9442 9442 9443 // ----end of grammar---- -
src/Parser/parser.h
ra752883 r984dce6 262 262 263 263 /* Line 2068 of yacc.c */ 264 #line 11 1"parser.yy"264 #line 112 "parser.yy" 265 265 266 266 Token tok; -
src/Parser/parser.yy
ra752883 r984dce6 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:24:45201613 // Update Count : 149 512 // Last Modified On : Mon Mar 21 18:18:34 2016 13 // Update Count : 1497 14 14 // 15 15 … … 51 51 #include <cstdio> 52 52 #include <stack> 53 #include "lex.h" 54 #include "parser.h" 55 #include "ParseNode.h" 53 56 #include "TypedefTable.h" 54 #include "lex.h"55 #include "ParseNode.h"56 57 #include "TypeData.h" 57 58 #include "LinkageSpec.h"
Note: See TracChangeset
for help on using the changeset viewer.