Return-Path: Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 6429 invoked by uid 500); 4 Aug 2003 05:20:45 -0000 Mailing-List: contact axis-dev-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@ws.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@ws.apache.org Received: (qmail 6417 invoked by uid 500); 4 Aug 2003 05:20:45 -0000 Delivered-To: apmail-xml-axis-cvs@apache.org Date: 4 Aug 2003 05:21:05 -0000 Message-ID: <20030804052105.11443.qmail@minotaur.apache.org> From: susantha@apache.org To: xml-axis-cvs@apache.org Subject: cvs commit: xml-axis/c/src/wcg cppyacc.hpp cppyacc.cpp cpplex.cpp X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N susantha 2003/08/03 22:21:05 Modified: c/src/wcg cppyacc.hpp cppyacc.cpp cpplex.cpp Log: improved WCG so that it now generates wsdl Revision Changes Path 1.4 +4 -28 xml-axis/c/src/wcg/cppyacc.hpp Index: cppyacc.hpp =================================================================== RCS file: /home/cvs/xml-axis/c/src/wcg/cppyacc.hpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- cppyacc.hpp 25 Jul 2003 14:59:27 -0000 1.3 +++ cppyacc.hpp 4 Aug 2003 05:21:05 -0000 1.4 @@ -5,42 +5,18 @@ #ifndef YYSTYPE typedef union { - void* id_sym; - void* name; - int tcount; - void* dspec; - void* decl; - void* stmt; - void* ctype; + int tokenvalue; expression* expression_ptr; member_declarator* member_declarator_ptr; param_declarator* param_declarator_ptr; string* string_ptr; - void* paramlist; - void* init; - void* tparm; member_declarator_list* member_declarator_list_ptr; - void* expcont; - void* newdecl; - void* arrdims; string_list* string_list_ptr; - void* enumcont; - void* argcont; - base_specifier_list* inhcont; - base_specifier* bclass; - void* typcont; - void* handcont; - void* memdecl; - void* memdecls; - void* tparmlist; - void* cblock; - void* cfcp; - void* obj; - void* endef; - void* tspec; + base_specifier_list* base_specifier_list_ptr; + base_specifier* base_specifier_ptr; + void* any_ptr; param_decl* param_decl_ptr; param_decl_list* param_decl_list_ptr; - void* block; class_head* class_head_ptr; } yystype; # define YYSTYPE yystype 1.3 +605 -769 xml-axis/c/src/wcg/cppyacc.cpp Index: cppyacc.cpp =================================================================== RCS file: /home/cvs/xml-axis/c/src/wcg/cppyacc.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- cppyacc.cpp 22 Jul 2003 13:35:12 -0000 1.2 +++ cppyacc.cpp 4 Aug 2003 05:21:05 -0000 1.3 @@ -75,125 +75,93 @@ # define CHARACTER_LITERAL 326 # define FLOATING_LITERAL 327 # define STRING_LITERAL 328 -# define LEFTPAREN 329 -# define RIGHTPAREN 330 -# define LEFTBRACK 331 -# define RIGHTBRACK 332 -# define LEFTARRAY 333 -# define RIGHTARRAY 334 -# define PLUS 335 -# define MINUS 336 -# define STAR 337 -# define DIVIDE 338 -# define MOD 339 -# define GREATER 340 -# define LESS 341 -# define EQUAL 342 -# define AND 343 -# define OR 344 -# define NOT 345 -# define XOR 346 -# define COMMA 347 -# define SEMI 348 -# define COLON 349 -# define COMPLEMENT 350 -# define DOT 351 -# define QUESTION 352 -# define COLCOL 353 -# define ELLIPSES 354 -# define PLUSEQ 355 -# define MINUSEQ 356 -# define STAREQ 357 -# define DIVEQ 358 -# define MODEQ 359 -# define XOREQ 360 -# define ANDEQ 361 -# define OREQ 362 -# define LTLT 363 -# define GTGT 364 -# define GTGTEQ 365 -# define LTLTEQ 366 -# define EQEQ 367 -# define NOTEQ 368 -# define LEQ 369 -# define GEQ 370 -# define ANDAND 371 -# define OROR 372 -# define PLUSPLUS 373 -# define MINUSMINUS 374 -# define DOTSTAR 375 -# define ARROWSTAR 376 -# define ARROW 377 -# define IDENTIFIER 378 -# define ID_typedef_name 379 -# define ID_original_namespace_name 380 -# define ID_namespace_alias 381 -# define ID_enum_name 382 -# define ID_class_name 383 -# define ID_template_name 384 +# define ACCESSBEAN_MACRO 329 +# define LEFTPAREN 330 +# define RIGHTPAREN 331 +# define LEFTBRACK 332 +# define RIGHTBRACK 333 +# define LEFTARRAY 334 +# define RIGHTARRAY 335 +# define PLUS 336 +# define MINUS 337 +# define STAR 338 +# define DIVIDE 339 +# define MOD 340 +# define GREATER 341 +# define LESS 342 +# define EQUAL 343 +# define AND 344 +# define OR 345 +# define NOT 346 +# define XOR 347 +# define COMMA 348 +# define SEMI 349 +# define COLON 350 +# define COMPLEMENT 351 +# define DOT 352 +# define QUESTION 353 +# define COLCOL 354 +# define ELLIPSES 355 +# define PLUSEQ 356 +# define MINUSEQ 357 +# define STAREQ 358 +# define DIVEQ 359 +# define MODEQ 360 +# define XOREQ 361 +# define ANDEQ 362 +# define OREQ 363 +# define LTLT 364 +# define GTGT 365 +# define GTGTEQ 366 +# define LTLTEQ 367 +# define EQEQ 368 +# define NOTEQ 369 +# define LEQ 370 +# define GEQ 371 +# define ANDAND 372 +# define OROR 373 +# define PLUSPLUS 374 +# define MINUSMINUS 375 +# define DOTSTAR 376 +# define ARROWSTAR 377 +# define ARROW 378 +# define IDENTIFIER 379 +# define ID_typedef_name 380 +# define ID_enum_name 381 +# define ID_class_name 382 #line 1 "cpp.y" - #define YYDELETEVAL(v,n) - #define YYDELETEPOSN(v,n) - // #define _PARSE_DEBUG 1 - #define TRUE 1 + #include "actions.h" + #include extern int yyerror(char *); extern int yylex(); extern int line_number, token_number; extern char* yytext; - bool inTemplate = false; - #include "actions.h" - #include using namespace std; extern int last_seen_cv; extern bool seen_const; extern bool seen_volatile; - extern int last_seen; - + extern int last_seen; extern int line_num_for_abs_decl; -#line 25 "cpp.y" +#line 19 "cpp.y" #ifndef YYSTYPE typedef union { - void* id_sym; - void* name; - int tcount; - void* dspec; - void* decl; - void* stmt; - void* ctype; + int tokenvalue; expression* expression_ptr; member_declarator* member_declarator_ptr; param_declarator* param_declarator_ptr; string* string_ptr; - void* paramlist; - void* init; - void* tparm; member_declarator_list* member_declarator_list_ptr; - void* expcont; - void* newdecl; - void* arrdims; string_list* string_list_ptr; - void* enumcont; - void* argcont; - base_specifier_list* inhcont; - base_specifier* bclass; - void* typcont; - void* handcont; - void* memdecl; - void* memdecls; - void* tparmlist; - void* cblock; - void* cfcp; - void* obj; - void* endef; - void* tspec; + base_specifier_list* base_specifier_list_ptr; + base_specifier* base_specifier_ptr; + void* any_ptr; param_decl* param_decl_ptr; param_decl_list* param_decl_list_ptr; - void* block; class_head* class_head_ptr; } yystype; # define YYSTYPE yystype @@ -205,12 +173,12 @@ -#define YYFINAL 152 +#define YYFINAL 160 #define YYFLAG -32768 -#define YYNTBASE 131 +#define YYNTBASE 129 /* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ -#define YYTRANSLATE(x) ((unsigned)(x) <= 384 ? yytranslate[x] : 192) +#define YYTRANSLATE(x) ((unsigned)(x) <= 382 ? yytranslate[x] : 195) /* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ static const short yytranslate[] = @@ -253,67 +221,63 @@ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130 + 126, 127, 128 }; #if YYDEBUG static const short yyprhs[] = { 0, 0, 2, 4, 6, 8, 10, 12, 14, 16, - 18, 20, 22, 24, 26, 27, 30, 32, 34, 36, - 39, 43, 45, 46, 48, 50, 52, 56, 58, 59, - 61, 63, 65, 66, 68, 71, 73, 74, 76, 78, - 82, 84, 87, 89, 90, 92, 94, 96, 98, 100, - 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, - 122, 124, 126, 128, 130, 131, 138, 140, 144, 146, - 147, 149, 153, 155, 157, 161, 163, 164, 167, 169, - 172, 174, 179, 181, 184, 186, 191, 196, 199, 201, - 204, 206, 207, 209, 211, 213, 214, 217, 219, 221, - 222, 224, 225, 227, 231, 234, 239, 242, 246, 248, - 249, 251, 256, 259, 261, 262, 264, 268, 269, 275, - 279, 281, 284, 288, 290, 291, 292, 297, 299, 300, - 302, 306, 309, 312, 315, 317, 318, 321, 323, 324, - 326, 327, 330, 332, 336, 339, 341, 342, 344, 346, - 348, 350, 351, 353, 354, 356, 357, 359 + 17, 20, 22, 24, 26, 29, 31, 35, 37, 39, + 41, 42, 44, 47, 49, 50, 52, 54, 56, 60, + 62, 64, 67, 69, 70, 72, 74, 76, 78, 80, + 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, + 102, 104, 106, 108, 110, 112, 117, 119, 123, 125, + 126, 129, 131, 134, 136, 141, 143, 146, 148, 153, + 158, 161, 163, 166, 168, 169, 171, 173, 175, 176, + 179, 181, 183, 184, 186, 187, 189, 193, 196, 201, + 204, 208, 210, 211, 213, 218, 221, 223, 224, 226, + 230, 231, 237, 241, 243, 246, 250, 252, 253, 254, + 259, 261, 263, 264, 266, 270, 273, 276, 279, 281, + 282, 285, 287, 288, 290, 291, 294, 296, 300, 303, + 305, 306, 308, 310, 312, 314, 315, 317, 318, 320, + 321, 323 }; static const short yyrhs[] = { - 125, 0, 126, 0, 127, 0, 128, 0, 129, 0, - 124, 0, 125, 0, 194, 0, 195, 0, 126, 0, - 127, 0, 129, 0, 128, 0, 0, 134, 142, 0, - 136, 0, 124, 0, 132, 0, 96, 132, 0, 199, - 99, 198, 0, 197, 0, 0, 132, 0, 193, 0, - 138, 0, 137, 93, 138, 0, 137, 0, 0, 71, - 0, 71, 0, 139, 0, 0, 143, 0, 141, 143, - 0, 141, 0, 0, 144, 0, 145, 0, 148, 153, - 94, 0, 149, 0, 148, 146, 0, 147, 0, 0, - 150, 0, 173, 0, 162, 0, 151, 0, 33, 0, - 67, 0, 47, 0, 13, 0, 6, 0, 68, 0, - 10, 0, 15, 0, 69, 0, 11, 0, 22, 0, - 44, 0, 9, 0, 37, 0, 66, 0, 132, 0, - 0, 24, 214, 202, 77, 204, 78, 0, 205, 0, - 203, 93, 205, 0, 203, 0, 0, 206, 0, 206, - 88, 139, 0, 131, 0, 154, 0, 152, 93, 154, - 0, 152, 0, 0, 157, 169, 0, 156, 0, 159, - 155, 0, 163, 0, 156, 79, 140, 80, 0, 158, - 0, 159, 157, 0, 163, 0, 158, 75, 164, 76, - 0, 158, 79, 140, 80, 0, 83, 161, 0, 89, - 0, 162, 161, 0, 160, 0, 0, 43, 0, 135, - 0, 208, 0, 0, 149, 207, 0, 165, 0, 100, - 0, 0, 166, 0, 0, 167, 0, 166, 93, 167, - 0, 147, 155, 0, 147, 155, 88, 138, 0, 88, - 170, 0, 75, 137, 76, 0, 168, 0, 0, 138, - 0, 77, 172, 171, 78, 0, 77, 78, 0, 93, - 0, 0, 170, 0, 172, 93, 170, 0, 0, 175, - 174, 77, 178, 78, 0, 176, 131, 187, 0, 38, - 0, 179, 178, 0, 191, 95, 178, 0, 177, 0, - 0, 0, 180, 148, 181, 94, 0, 94, 0, 0, - 182, 0, 181, 93, 182, 0, 157, 184, 0, 157, - 186, 0, 88, 71, 0, 183, 0, 0, 88, 139, - 0, 185, 0, 0, 188, 0, 0, 95, 189, 0, - 190, 0, 189, 93, 190, 0, 191, 132, 0, 32, - 0, 0, 50, 0, 45, 0, 40, 0, 191, 0, - 0, 99, 0, 0, 131, 0, 0, 138, 0, 0 + 126, 0, 128, 0, 125, 0, 125, 0, 126, 0, + 132, 0, 130, 0, 128, 0, 0, 135, 143, 0, + 137, 0, 125, 0, 133, 0, 97, 133, 0, 139, + 0, 138, 94, 139, 0, 71, 0, 71, 0, 140, + 0, 0, 144, 0, 142, 144, 0, 142, 0, 0, + 145, 0, 146, 0, 154, 0, 149, 156, 95, 0, + 151, 0, 150, 0, 149, 147, 0, 148, 0, 0, + 32, 0, 152, 0, 176, 0, 165, 0, 153, 0, + 33, 0, 67, 0, 47, 0, 13, 0, 6, 0, + 68, 0, 10, 0, 15, 0, 69, 0, 11, 0, + 22, 0, 44, 0, 9, 0, 37, 0, 66, 0, + 133, 0, 27, 25, 131, 95, 0, 157, 0, 155, + 94, 157, 0, 155, 0, 0, 160, 172, 0, 159, + 0, 162, 158, 0, 166, 0, 159, 80, 141, 81, + 0, 161, 0, 162, 160, 0, 166, 0, 161, 76, + 167, 77, 0, 161, 80, 141, 81, 0, 84, 164, + 0, 90, 0, 165, 164, 0, 163, 0, 0, 43, + 0, 136, 0, 197, 0, 0, 151, 196, 0, 168, + 0, 101, 0, 0, 169, 0, 0, 170, 0, 169, + 94, 170, 0, 148, 158, 0, 148, 158, 89, 139, + 0, 89, 173, 0, 76, 138, 77, 0, 171, 0, + 0, 139, 0, 78, 175, 174, 79, 0, 78, 79, + 0, 94, 0, 0, 173, 0, 175, 94, 173, 0, + 0, 178, 177, 78, 181, 79, 0, 179, 129, 190, + 0, 38, 0, 182, 181, 0, 194, 96, 181, 0, + 180, 0, 0, 0, 183, 149, 184, 95, 0, 75, + 0, 95, 0, 0, 185, 0, 184, 94, 185, 0, + 160, 187, 0, 160, 189, 0, 89, 71, 0, 186, + 0, 0, 89, 140, 0, 188, 0, 0, 191, 0, + 0, 96, 192, 0, 193, 0, 192, 94, 193, 0, + 194, 133, 0, 32, 0, 0, 50, 0, 45, 0, + 40, 0, 194, 0, 0, 100, 0, 0, 129, 0, + 0, 139, 0, 0 }; #endif @@ -322,22 +286,21 @@ /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const short yyrline[] = { - 0, 175, 176, 177, 178, 179, 181, 211, 215, 216, - 220, 224, 228, 233, 248, 248, 270, 276, 277, 280, - 294, 301, 302, 306, 307, 358, 360, 365, 366, 564, - 601, 609, 610, 720, 722, 727, 728, 732, 749, 762, - 769, 784, 792, 794, 822, 824, 830, 836, 843, 845, - 847, 849, 851, 853, 855, 857, 859, 861, 863, 865, - 867, 869, 871, 876, 893, 893, 901, 903, 908, 909, - 913, 915, 920, 1012, 1014, 1020, 1021, 1025, 1030, 1032, - 1041, 1046, 1057, 1059, 1068, 1074, 1083, 1092, 1094, 1101, - 1105, 1106, 1110, 1123, 1135, 1136, 1140, 1175, 1183, 1184, - 1188, 1189, 1193, 1198, 1206, 1213, 1247, 1249, 1254, 1256, - 1260, 1261, 1263, 1267, 1268, 1272, 1274, 1280, 1280, 1309, - 1326, 1333, 1335, 1341, 1342, 1346, 1346, 1365, 1366, 1370, - 1375, 1388, 1396, 1409, 1414, 1415, 1419, 1424, 1425, 1430, - 1431, 1435, 1439, 1444, 1451, 1469, 1470, 1474, 1476, 1478, - 1483, 1485, 1538, 1539, 1659, 1661, 1747, 1748 + 0, 136, 140, 142, 160, 174, 178, 189, 193, 211, + 211, 233, 239, 240, 243, 317, 319, 521, 558, 566, + 567, 671, 673, 678, 679, 683, 700, 708, 713, 720, + 726, 735, 750, 752, 770, 782, 784, 790, 796, 803, + 805, 807, 809, 811, 813, 815, 817, 819, 821, 823, + 825, 827, 829, 831, 836, 949, 973, 975, 981, 982, + 986, 991, 993, 1002, 1007, 1018, 1020, 1029, 1035, 1044, + 1053, 1055, 1062, 1066, 1067, 1071, 1079, 1091, 1092, 1096, + 1129, 1137, 1138, 1142, 1143, 1147, 1152, 1160, 1167, 1201, + 1203, 1208, 1210, 1214, 1215, 1217, 1221, 1222, 1226, 1228, + 1234, 1234, 1273, 1290, 1297, 1299, 1305, 1306, 1310, 1310, + 1327, 1332, 1333, 1337, 1342, 1355, 1363, 1376, 1381, 1382, + 1386, 1391, 1392, 1397, 1398, 1402, 1406, 1411, 1418, 1436, + 1437, 1441, 1443, 1445, 1450, 1452, 1505, 1506, 1612, 1614, + 1694, 1695 }; #endif @@ -362,32 +325,33 @@ "KW_if", "KW_return", "KW_typedef", "KW_export", "KW_string", "KW_unsigned_char", "KW_unsigned_short", "KW_unsigned_long", "KW_long_double", "INTEGER_LITERAL", "CHARACTER_LITERAL", - "FLOATING_LITERAL", "STRING_LITERAL", "LEFTPAREN", "RIGHTPAREN", - "LEFTBRACK", "RIGHTBRACK", "LEFTARRAY", "RIGHTARRAY", "PLUS", "MINUS", - "STAR", "DIVIDE", "MOD", "GREATER", "LESS", "EQUAL", "AND", "OR", "NOT", - "XOR", "COMMA", "SEMI", "COLON", "COMPLEMENT", "DOT", "QUESTION", - "COLCOL", "ELLIPSES", "PLUSEQ", "MINUSEQ", "STAREQ", "DIVEQ", "MODEQ", - "XOREQ", "ANDEQ", "OREQ", "LTLT", "GTGT", "GTGTEQ", "LTLTEQ", "EQEQ", - "NOTEQ", "LEQ", "GEQ", "ANDAND", "OROR", "PLUSPLUS", "MINUSMINUS", - "DOTSTAR", "ARROWSTAR", "ARROW", "IDENTIFIER", "ID_typedef_name", - "ID_original_namespace_name", "ID_namespace_alias", "ID_enum_name", - "ID_class_name", "ID_template_name", "any_identifier", "class_name", + "FLOATING_LITERAL", "STRING_LITERAL", "ACCESSBEAN_MACRO", "LEFTPAREN", + "RIGHTPAREN", "LEFTBRACK", "RIGHTBRACK", "LEFTARRAY", "RIGHTARRAY", + "PLUS", "MINUS", "STAR", "DIVIDE", "MOD", "GREATER", "LESS", "EQUAL", + "AND", "OR", "NOT", "XOR", "COMMA", "SEMI", "COLON", "COMPLEMENT", + "DOT", "QUESTION", "COLCOL", "ELLIPSES", "PLUSEQ", "MINUSEQ", "STAREQ", + "DIVEQ", "MODEQ", "XOREQ", "ANDEQ", "OREQ", "LTLT", "GTGT", "GTGTEQ", + "LTLTEQ", "EQEQ", "NOTEQ", "LEQ", "GEQ", "ANDAND", "OROR", "PLUSPLUS", + "MINUSMINUS", "DOTSTAR", "ARROWSTAR", "ARROW", "IDENTIFIER", + "ID_typedef_name", "ID_enum_name", "ID_class_name", "any_identifier", + "ID_namespace_alias", "namespace_name", "namespace_alias", "class_name", "translation_unit", "@1", "id_expression", "unqualified_id", "expression_list", "assignment_expression", "constant_expression", "constant_expression_opt", "declaration_seq", "declaration_seq_opt", "declaration", "block_declaration", "simple_declaration", "decl_specifier", "decl_specifier_seq", "decl_specifier_seq_opt", - "type_specifier", "simple_type_specifier", "type_name", - "init_declarator_list", "init_declarator_list_opt", "init_declarator", - "parameter_declarator", "direct_parameter_declarator", "declarator", - "direct_declarator", "ptr_operator", "cv_qualifier_seq", - "cv_qualifier_seq_opt", "cv_qualifier", "declarator_id", - "parameter_declaration_clause", "parameter_declaration_list_opt", - "parameter_declaration_list", "parameter_declaration", "initializer", - "initializer_opt", "initializer_clause", "comma_opt", - "initializer_list", "class_specifier", "@3", "class_head", "class_key", + "function_specifier", "type_specifier", "simple_type_specifier", + "type_name", "using_directive", "init_declarator_list", + "init_declarator_list_opt", "init_declarator", "parameter_declarator", + "direct_parameter_declarator", "declarator", "direct_declarator", + "ptr_operator", "cv_qualifier_seq", "cv_qualifier_seq_opt", + "cv_qualifier", "declarator_id", "parameter_declaration_clause", + "parameter_declaration_list_opt", "parameter_declaration_list", + "parameter_declaration", "initializer", "initializer_opt", + "initializer_clause", "comma_opt", "initializer_list", + "class_specifier", "@2", "class_head", "class_key", "member_specification", "member_specification_opt", - "member_declaration", "@4", "member_declarator_list", + "member_declaration", "@3", "member_declarator_list", "member_declarator", "pure_specifier", "pure_specifier_opt", "constant_initializer", "constant_initializer_opt", "base_clause_opt", "base_clause", "base_specifier_list", "base_specifier", @@ -398,43 +362,41 @@ /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const short yyr1[] = { - 0, 131, 131, 131, 131, 131, 131, 192, 193, 193, - 194, 195, 132, 196, 134, 133, 135, 136, 136, 136, - 197, 198, 198, 199, 199, 137, 137, 200, 200, 138, - 139, 140, 140, 141, 141, 142, 142, 143, 144, 145, - 146, 147, 148, 148, 149, 149, 149, 150, 150, 150, - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150, 150, 151, 202, 201, 203, 203, 204, 204, - 205, 205, 206, 152, 152, 153, 153, 154, 155, 155, - 156, 156, 157, 157, 158, 158, 158, 159, 159, 160, - 161, 161, 162, 163, 207, 207, 208, 164, 209, 209, - 165, 165, 166, 166, 167, 167, 168, 168, 169, 169, - 170, 170, 170, 171, 171, 172, 172, 174, 173, 175, - 176, 177, 177, 178, 178, 180, 179, 210, 210, 181, - 181, 182, 182, 183, 184, 184, 185, 186, 186, 187, - 187, 188, 189, 189, 190, 211, 211, 191, 191, 191, - 212, 212, 213, 213, 214, 214, 215, 215 + 0, 129, 129, 129, 130, 195, 131, 132, 133, 135, + 134, 136, 137, 137, 137, 138, 138, 139, 140, 141, + 141, 142, 142, 143, 143, 144, 145, 145, 146, 147, + 147, 148, 149, 149, 150, 151, 151, 151, 152, 152, + 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, + 152, 152, 152, 152, 153, 154, 155, 155, 156, 156, + 157, 158, 158, 159, 159, 160, 160, 161, 161, 161, + 162, 162, 163, 164, 164, 165, 166, 196, 196, 197, + 167, 198, 198, 168, 168, 169, 169, 170, 170, 171, + 171, 172, 172, 173, 173, 173, 174, 174, 175, 175, + 177, 176, 178, 179, 180, 180, 181, 181, 183, 182, + 182, 199, 199, 184, 184, 185, 185, 186, 187, 187, + 188, 189, 189, 190, 190, 191, 192, 192, 193, 200, + 200, 194, 194, 194, 201, 201, 202, 202, 203, 203, + 204, 204 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ static const short yyr2[] = { - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 0, 2, 1, 1, 1, 2, - 3, 1, 0, 1, 1, 1, 3, 1, 0, 1, - 1, 1, 0, 1, 2, 1, 0, 1, 1, 3, + 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 2, 1, 1, 1, 2, 1, 3, 1, 1, 1, + 0, 1, 2, 1, 0, 1, 1, 1, 3, 1, 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 0, 6, 1, 3, 1, 0, - 1, 3, 1, 1, 3, 1, 0, 2, 1, 2, - 1, 4, 1, 2, 1, 4, 4, 2, 1, 2, - 1, 0, 1, 1, 1, 0, 2, 1, 1, 0, - 1, 0, 1, 3, 2, 4, 2, 3, 1, 0, - 1, 4, 2, 1, 0, 1, 3, 0, 5, 3, - 1, 2, 3, 1, 0, 0, 4, 1, 0, 1, - 3, 2, 2, 2, 1, 0, 2, 1, 0, 1, - 0, 2, 1, 3, 2, 1, 0, 1, 1, 1, - 1, 0, 1, 0, 1, 0, 1, 0 + 1, 1, 1, 1, 1, 4, 1, 3, 1, 0, + 2, 1, 2, 1, 4, 1, 2, 1, 4, 4, + 2, 1, 2, 1, 0, 1, 1, 1, 0, 2, + 1, 1, 0, 1, 0, 1, 3, 2, 4, 2, + 3, 1, 0, 1, 4, 2, 1, 0, 1, 3, + 0, 5, 3, 1, 2, 3, 1, 0, 0, 4, + 1, 1, 0, 1, 3, 2, 2, 2, 1, 0, + 2, 1, 0, 1, 0, 2, 1, 3, 2, 1, + 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, + 1, 0 }; /* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE @@ -442,106 +404,108 @@ error. */ static const short yydefact[] = { - 14, 43, 43, 15, 33, 37, 38, 42, 76, 34, - 52, 60, 54, 57, 51, 55, 58, 48, 61, 120, - 92, 59, 50, 62, 49, 53, 56, 91, 88, 0, - 17, 12, 63, 93, 16, 41, 40, 44, 47, 75, - 0, 73, 109, 82, 0, 46, 84, 45, 117, 0, - 90, 87, 91, 19, 0, 39, 0, 0, 108, 77, - 43, 32, 18, 83, 0, 6, 1, 2, 3, 4, - 5, 140, 89, 74, 29, 0, 25, 0, 110, 106, - 42, 0, 0, 97, 100, 102, 30, 31, 0, 125, - 0, 119, 139, 107, 0, 112, 115, 114, 104, 78, - 0, 80, 63, 85, 43, 86, 149, 148, 147, 123, - 0, 125, 43, 0, 141, 142, 0, 26, 113, 0, - 0, 32, 79, 103, 118, 121, 0, 125, 0, 144, - 116, 111, 105, 0, 135, 0, 129, 122, 143, 81, - 0, 134, 131, 137, 132, 0, 126, 30, 136, 130, - 0, 0, 0 + 9, 33, 0, 33, 10, 21, 25, 26, 32, 59, + 27, 0, 22, 43, 51, 45, 48, 42, 46, 49, + 34, 39, 52, 103, 75, 50, 41, 53, 40, 44, + 47, 74, 71, 0, 12, 8, 54, 76, 11, 31, + 30, 29, 35, 38, 58, 0, 56, 92, 65, 0, + 37, 67, 36, 100, 0, 4, 7, 0, 6, 73, + 70, 74, 14, 0, 28, 0, 0, 91, 60, 33, + 20, 13, 66, 0, 3, 1, 2, 124, 55, 72, + 57, 17, 0, 15, 0, 93, 89, 32, 0, 0, + 80, 83, 85, 18, 19, 0, 108, 0, 102, 123, + 90, 0, 95, 98, 97, 87, 61, 0, 63, 54, + 68, 33, 69, 133, 132, 131, 110, 106, 0, 108, + 33, 0, 125, 126, 0, 16, 96, 0, 0, 20, + 62, 86, 101, 104, 0, 108, 0, 128, 99, 94, + 88, 0, 119, 0, 113, 105, 127, 64, 0, 118, + 115, 121, 116, 0, 109, 18, 120, 114, 0, 0, + 0 }; static const short yydefgoto[] = { - 71, 62, 150, 1, 33, 34, 75, 78, 87, 88, - 2, 3, 4, 5, 6, 35, 7, 8, 36, 37, - 38, 39, 40, 41, 98, 99, 42, 43, 44, 50, - 51, 45, 46, 82, 83, 84, 85, 58, 59, 79, - 119, 97, 47, 64, 48, 49, 109, 110, 111, 112, - 135, 136, 141, 142, 143, 144, 91, 92, 114, 115, - 113 + 77, 56, 57, 58, 71, 158, 1, 37, 38, 82, + 85, 94, 95, 3, 4, 5, 6, 7, 39, 8, + 9, 40, 41, 42, 43, 10, 44, 45, 46, 105, + 106, 47, 48, 49, 59, 60, 50, 51, 89, 90, + 91, 92, 67, 68, 86, 127, 104, 52, 73, 53, + 54, 117, 118, 119, 120, 143, 144, 149, 150, 151, + 152, 98, 99, 122, 123, 121 }; static const short yypact[] = { - -32768, 29, 34,-32768,-32768,-32768,-32768,-32768, -6,-32768, + -32768, 49, -24, 58,-32768,-32768,-32768,-32768,-32768, -4, + -32768, -109,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768, 23,-32768, -56, - -32768,-32768, 0,-32768,-32768,-32768,-32768,-32768,-32768, -4, - -18,-32768, -10, -49, -32,-32768,-32768,-32768,-32768, -14, - -32768,-32768, 23,-32768, -32,-32768, 24, 14,-32768,-32768, - 20, 30,-32768,-32768, 25,-32768,-32768,-32768,-32768,-32768, - -32768, 10,-32768,-32768,-32768, -51,-32768, 9,-32768,-32768, - -32, 2, 28,-32768, 7,-32768,-32768,-32768, 26, 3, - -17,-32768,-32768,-32768, 24,-32768,-32768, 15, 19, 37, - -32,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - 39, 3,-32768, 27, 31,-32768, -56,-32768, 14, 42, - 24, 30,-32768,-32768,-32768,-32768, -6, 3, -17,-32768, - -32768,-32768,-32768, 41, 38, 5,-32768,-32768,-32768,-32768, - 54,-32768,-32768,-32768,-32768, -32,-32768,-32768,-32768,-32768, - 127, 128,-32768 + -32768, 25,-32768, -98,-32768,-32768, 1,-32768,-32768,-32768, + -32768,-32768,-32768,-32768, -10, 5,-32768, 2, 23, -59, + -32768,-32768,-32768,-32768, -17,-32768,-32768, 6,-32768,-32768, + -32768, 25,-32768, -59,-32768, 33, 11,-32768,-32768, 35, + 39,-32768,-32768, 36,-32768,-32768,-32768, 17,-32768,-32768, + -32768,-32768, -42,-32768, 27,-32768,-32768, -59, 4, 40, + -32768, 22,-32768,-32768,-32768, 37, -18, 52,-32768,-32768, + -32768, 33,-32768,-32768, 26, 30, 42, -59,-32768,-32768, + -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 44, -18, + -32768, 31, 32,-32768, -98,-32768, 11, 50, 33, 39, + -32768,-32768,-32768,-32768, -4, -18, 52,-32768,-32768,-32768, + -32768, 47, 41, -50,-32768,-32768,-32768,-32768, 60,-32768, + -32768,-32768,-32768, -59,-32768,-32768,-32768,-32768, 133, 134, + -32768 }; static const short yypgoto[] = { - -32768, -7,-32768,-32768,-32768,-32768,-32768, -38, -11, 11, - -32768,-32768, 131,-32768,-32768,-32768, -50, -54,-32768,-32768, - -32768,-32768,-32768, 76, 35,-32768, -42,-32768, -33,-32768, - 82, -8, -28,-32768,-32768,-32768, 32,-32768,-32768, -63, - -32768,-32768,-32768,-32768,-32768,-32768,-32768, -91,-32768,-32768, - -32768, -5,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 13, - -69 + -32768,-32768,-32768,-32768, -9,-32768,-32768,-32768,-32768,-32768, + -45, -12, 8,-32768,-32768, 132,-32768,-32768,-32768, -61, + -65,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 75, 34, + -32768, -46,-32768, -20,-32768, 78, -8, -13,-32768,-32768, + -32768, 29,-32768,-32768, -72,-32768,-32768,-32768,-32768,-32768, + -32768,-32768, -60,-32768,-32768,-32768, -11,-32768,-32768,-32768, + -32768,-32768,-32768,-32768, 7, -76 }; -#define YYLAST 141 +#define YYLAST 143 static const short yytable[] = { - 10, 32, 63, 11, 12, 13, 81, 14, 10, 15, - 80, 11, 12, 13, 96, 14, 16, 15, 76, 52, - 125, 116, 53, 106, 16, 93, 60, 17, 107, -36, - 61, 18, 19, 108, -35, 17, 137, 20, 21, 18, - 19, 22, 94, 106, 52, 20, 21, 100, 107, 22, - 81, 27, 101, 108, 80, 130, 117, 28, 126, 116, - 23, 24, 25, 26, 29, 56, 20, 100, 23, 24, - 25, 26, 101, 31, 102, -18, 55, 27, 57, -18, - 74, -124, 132, 28, 134, 74, 77, 95, -18, 54, - 29, 77, 30, -18, -18, 74, -101, 31, 145, 146, - 104, 86, 89, 134, 103, 90, 105, 120, 118, 129, - 65, 66, 67, 68, 69, 70, 121, 124, 30, 32, - 131, 139, 127, 31, 128, 147, 140, 151, 152, 148, - 73, 31, 133, 9, 72, 122, 123, 0, 0, 0, - 149, 138 + 36, 11, 13, 72, 88, 14, 15, 16, 87, 17, + 13, 18, 103, 14, 15, 16, 55, 17, 19, 18, + 83, 124, 113, 61, 62, 31, 19, 114, 20, 21, + 35, 32, 115, 22, 23, 100, 20, 21, 33, 24, + 25, 22, 23, 26, 153, 154, 88, 24, 25, -24, + 87, 26, 101, 61, 138, 134, 125, 116, -23, 133, + 124, -107, 27, 28, 29, 30, 34, 107, 24, 35, + 27, 28, 29, 30, 108, 145, 2, -13, 65, 109, + 31, -13, 81, 140, 63, 2, 32, 107, 142, 84, + -13, 66, 113, 33, 108, -13, -13, 114, 81, 69, + 64, 78, 115, 70, 81, 84, 102, 142, 74, 75, + 93, 76, -84, 97, 96, 137, 111, 110, 112, 128, + 126, 34, 129, 132, 35, 36, 136, 135, 147, 139, + 148, 155, 35, 159, 160, 12, 156, 141, 80, 79, + 131, 130, 157, 146 }; static const short yycheck[] = { - 6, 8, 44, 9, 10, 11, 60, 13, 6, 15, - 60, 9, 10, 11, 77, 13, 22, 15, 56, 27, - 111, 90, 29, 40, 22, 76, 75, 33, 45, 0, - 79, 37, 38, 50, 0, 33, 127, 43, 44, 37, - 38, 47, 93, 40, 52, 43, 44, 80, 45, 47, - 104, 83, 80, 50, 104, 118, 94, 89, 112, 128, - 66, 67, 68, 69, 96, 75, 43, 100, 66, 67, - 68, 69, 100, 129, 81, 75, 94, 83, 88, 79, - 71, 78, 120, 89, 126, 71, 77, 78, 88, 93, - 96, 77, 124, 93, 94, 71, 76, 129, 93, 94, - 93, 71, 77, 145, 76, 95, 80, 88, 93, 116, - 124, 125, 126, 127, 128, 129, 79, 78, 124, 126, - 78, 80, 95, 129, 93, 71, 88, 0, 0, 140, - 54, 129, 121, 2, 52, 100, 104, -1, -1, -1, - 145, 128 + 9, 25, 6, 49, 69, 9, 10, 11, 69, 13, + 6, 15, 84, 9, 10, 11, 125, 13, 22, 15, + 65, 97, 40, 31, 33, 84, 22, 45, 32, 33, + 128, 90, 50, 37, 38, 77, 32, 33, 97, 43, + 44, 37, 38, 47, 94, 95, 111, 43, 44, 0, + 111, 47, 94, 61, 126, 120, 101, 75, 0, 119, + 136, 79, 66, 67, 68, 69, 125, 87, 43, 128, + 66, 67, 68, 69, 87, 135, 27, 76, 76, 88, + 84, 80, 71, 128, 94, 27, 90, 107, 134, 78, + 89, 89, 40, 97, 107, 94, 95, 45, 71, 76, + 95, 95, 50, 80, 71, 78, 79, 153, 125, 126, + 71, 128, 77, 96, 78, 124, 94, 77, 81, 89, + 94, 125, 80, 79, 128, 134, 94, 96, 81, 79, + 89, 71, 128, 0, 0, 3, 148, 129, 63, 61, + 111, 107, 153, 136 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison/bison.simple" @@ -1251,344 +1215,283 @@ switch (yyn) { case 1: -#line 175 "cpp.y" +#line 136 "cpp.y" {yyval.string_ptr = new string(yytext);; break;} case 2: -#line 176 "cpp.y" +#line 140 "cpp.y" {yyval.string_ptr = new string(yytext);; break;} case 3: -#line 177 "cpp.y" +#line 142 "cpp.y" {yyval.string_ptr = new string(yytext);; break;} case 4: -#line 178 "cpp.y" -{yyval.string_ptr = new string(yytext);; +#line 160 "cpp.y" +{ ; break;} case 5: -#line 179 "cpp.y" -{yyval.string_ptr = new string(yytext);; +#line 174 "cpp.y" +{; break;} case 6: #line 181 "cpp.y" -{yyval.string_ptr = new string(yytext);; +{ ; break;} case 7: -#line 211 "cpp.y" -{/* $$ = $1; */; +#line 189 "cpp.y" +{; break;} case 8: -#line 215 "cpp.y" -{/* $$ = $1; */; +#line 193 "cpp.y" +{yyval.string_ptr = new string(yytext);; break;} case 9: -#line 216 "cpp.y" -{/* $$ = $1; */; +#line 211 "cpp.y" +{ + translation_unit_start(); + ; break;} case 10: -#line 220 "cpp.y" -{/* $$ = $1; */; +#line 215 "cpp.y" +{; break;} case 11: -#line 224 "cpp.y" -{/* $$ = $1; */; +#line 233 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 12: -#line 228 "cpp.y" +#line 239 "cpp.y" {yyval.string_ptr = new string(yytext);; break;} case 13: -#line 233 "cpp.y" -{/* $$ = $1; */; +#line 240 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 14: -#line 248 "cpp.y" -{ - translation_unit_start(); - ; +#line 243 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr; g_bdestructor_seen = true;; break;} case 15: -#line 252 "cpp.y" +#line 318 "cpp.y" {; break;} case 16: -#line 270 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr;; +#line 320 "cpp.y" +{; break;} case 17: -#line 276 "cpp.y" -{yyval.string_ptr = new string(yytext);; +#line 522 "cpp.y" +{ + yyval.expression_ptr = new expression; + yyval.expression_ptr->expr.n = atoi(yytext); + ; break;} case 18: -#line 277 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr;; +#line 559 "cpp.y" +{ + yyval.expression_ptr = new expression; + yyval.expression_ptr->expr.n = atoi(yytext); + ; break;} case 19: -#line 280 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr; g_bdestructor_seen = true;; +#line 566 "cpp.y" +{yyval.expression_ptr = yyvsp[0].expression_ptr;; break;} case 20: -#line 295 "cpp.y" -{/* $$ = nested_name_specifier( $1, false, $3 ); */; +#line 567 "cpp.y" +{yyval.expression_ptr = NULL;; break;} case 21: -#line 301 "cpp.y" -{/* $$ = $1; */; +#line 672 "cpp.y" +{; break;} case 22: -#line 302 "cpp.y" -{/* $$ = NULL; */; +#line 674 "cpp.y" +{; break;} case 23: -#line 306 "cpp.y" -{/* $$ = $1; */; +#line 678 "cpp.y" +{; break;} case 24: -#line 307 "cpp.y" -{/* $$ = class_or_namespace_name( $1 ); */; +#line 679 "cpp.y" +{; break;} case 25: -#line 359 "cpp.y" -{/* $$ = expression_list_start( $1 ); */; +#line 684 "cpp.y" +{; break;} case 26: -#line 361 "cpp.y" -{/* $$ = expression_list_continue( $1, $3 ); */; +#line 701 "cpp.y" +{; break;} case 27: -#line 365 "cpp.y" -{/* $$ = $1; */; +#line 709 "cpp.y" +{ ; break;} case 28: -#line 366 "cpp.y" -{/* $$ = NULL; */; +#line 716 "cpp.y" +{; break;} case 29: -#line 565 "cpp.y" -{ - yyval.expression_ptr = new expression; - yyval.expression_ptr->expr.n = atoi(yytext); - ; +#line 725 "cpp.y" +{; break;} case 30: -#line 602 "cpp.y" -{ - yyval.expression_ptr = new expression; - yyval.expression_ptr->expr.n = atoi(yytext); - ; +#line 727 "cpp.y" +{ yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 31: -#line 609 "cpp.y" -{yyval.expression_ptr = yyvsp[0].expression_ptr;; +#line 736 "cpp.y" +{ + if (yyvsp[0].string_ptr != NULL) + { + if (yyval.string_list_ptr == NULL) {yyval.string_list_ptr = new string_list;} + yyval.string_list_ptr->push_back(yyvsp[0].string_ptr); + } + else + { + yyval.string_list_ptr = NULL; + } + ; break;} case 32: -#line 610 "cpp.y" -{yyval.expression_ptr = NULL;; +#line 751 "cpp.y" +{yyval.string_list_ptr = yyvsp[0].string_list_ptr;; break;} case 33: -#line 721 "cpp.y" -{/* $$ = declaration_seq_1( $1 ); */; +#line 753 "cpp.y" +{yyval.string_list_ptr = NULL;; break;} case 34: -#line 723 "cpp.y" -{/* $$ = declaration_seq_2( $2, $1 ); */; +#line 775 "cpp.y" +{ yyval.string_ptr = NULL;; break;} case 35: -#line 727 "cpp.y" -{/* $$ = $1; */; +#line 783 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 36: -#line 728 "cpp.y" -{/* $$ = NULL; */; +#line 785 "cpp.y" +{; break;} case 37: -#line 733 "cpp.y" -{/* $$ = $1; */; +#line 791 "cpp.y" +{; break;} case 38: -#line 750 "cpp.y" -{/* $$ = $1; */; +#line 799 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 39: -#line 765 "cpp.y" -{/* $$ = simple_declaration( $1, $2 ); */; +#line 804 "cpp.y" +{yyval.string_ptr = new string("char");; break;} case 40: -#line 774 "cpp.y" -{/* $$ = decl_specifier_type( $1 ); */; +#line 806 "cpp.y" +{yyval.string_ptr = new string("unsigned char");; break;} case 41: -#line 785 "cpp.y" -{ - if (yyval.string_list_ptr == NULL) {yyval.string_list_ptr = new string_list;} - yyval.string_list_ptr->push_back(yyvsp[0].string_ptr); - ; +#line 808 "cpp.y" +{yyval.string_ptr = new string("wchar_t");; break;} case 42: -#line 793 "cpp.y" -{yyval.string_list_ptr = yyvsp[0].string_list_ptr;; +#line 810 "cpp.y" +{yyval.string_ptr = new string("bool");; break;} case 43: -#line 795 "cpp.y" -{yyval.string_list_ptr = NULL;; +#line 812 "cpp.y" +{yyval.string_ptr = new string("short");; break;} case 44: -#line 823 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr;; +#line 814 "cpp.y" +{yyval.string_ptr = new string("unsigned short");; break;} case 45: -#line 825 "cpp.y" -{/* $$ = $1; */; +#line 816 "cpp.y" +{yyval.string_ptr = new string("int");; break;} case 46: -#line 831 "cpp.y" -{/* $$ = NULL; */; +#line 818 "cpp.y" +{yyval.string_ptr = new string("long");; break;} case 47: -#line 839 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr;; +#line 820 "cpp.y" +{yyval.string_ptr = new string("unsigned long");; break;} case 48: -#line 844 "cpp.y" -{yyval.string_ptr = new string("char");; +#line 822 "cpp.y" +{yyval.string_ptr = new string("signed");; break;} case 49: -#line 846 "cpp.y" -{yyval.string_ptr = new string("unsigned char");; +#line 824 "cpp.y" +{yyval.string_ptr = new string("unsigned");; break;} case 50: -#line 848 "cpp.y" -{yyval.string_ptr = new string("wchar_t");; +#line 826 "cpp.y" +{yyval.string_ptr = new string("float");; break;} case 51: -#line 850 "cpp.y" -{yyval.string_ptr = new string("bool");; +#line 828 "cpp.y" +{yyval.string_ptr = new string("double");; break;} case 52: -#line 852 "cpp.y" -{yyval.string_ptr = new string("short");; +#line 830 "cpp.y" +{yyval.string_ptr = new string("void");; break;} case 53: -#line 854 "cpp.y" -{yyval.string_ptr = new string("unsigned short");; +#line 832 "cpp.y" +{yyval.string_ptr = new string("string");; break;} case 54: -#line 856 "cpp.y" -{yyval.string_ptr = new string("int");; +#line 836 "cpp.y" +{yyval.string_ptr = yyvsp[0].string_ptr;; break;} case 55: -#line 858 "cpp.y" -{yyval.string_ptr = new string("long");; +#line 953 "cpp.y" +{ ; break;} case 56: -#line 860 "cpp.y" -{yyval.string_ptr = new string("unsigned long");; +#line 974 "cpp.y" +{; break;} case 57: -#line 862 "cpp.y" -{yyval.string_ptr = new string("signed");; +#line 977 "cpp.y" +{; break;} case 58: -#line 864 "cpp.y" -{yyval.string_ptr = new string("unsigned");; +#line 981 "cpp.y" +{; break;} case 59: -#line 866 "cpp.y" -{yyval.string_ptr = new string("float");; +#line 982 "cpp.y" +{; break;} case 60: -#line 868 "cpp.y" -{yyval.string_ptr = new string("double");; +#line 987 "cpp.y" +{; break;} case 61: -#line 870 "cpp.y" -{yyval.string_ptr = new string("void");; - break;} -case 62: -#line 872 "cpp.y" -{yyval.string_ptr = new string("string");; - break;} -case 63: -#line 876 "cpp.y" -{yyval.string_ptr = yyvsp[0].string_ptr;; - break;} -case 64: -#line 894 "cpp.y" -{/* enum_specifier_1($2,$1); */; - break;} -case 65: -#line 896 "cpp.y" -{/* $$ = enum_specifier_2( $5 ); */; - break;} -case 66: -#line 902 "cpp.y" -{/* $$ = enumerator_list_1( $1 ); */; - break;} -case 67: -#line 904 "cpp.y" -{/* $$ = enumerator_list_2( $1, $3 ); */; - break;} -case 68: -#line 908 "cpp.y" -{/* $$ = $1; */; - break;} -case 69: -#line 909 "cpp.y" -{/* $$ = NULL; */; - break;} -case 70: -#line 914 "cpp.y" -{/* $$ = enumerator_definition( $1, NULL ); */; - break;} -case 71: -#line 916 "cpp.y" -{/* $$ = enumerator_definition( $1, $3 ); */; - break;} -case 72: -#line 920 "cpp.y" -{/* $$ = $1; */; - break;} -case 73: -#line 1013 "cpp.y" -{/* $$ = init_declarator_list( $1, NULL ); */; - break;} -case 74: -#line 1016 "cpp.y" -{/* $$ = init_declarator_list( $3, $1 ); */; - break;} -case 75: -#line 1020 "cpp.y" -{/* $$ = $1; */; - break;} -case 76: -#line 1021 "cpp.y" -{/* typedef_list.clear(); $$ = NULL; */; - break;} -case 77: -#line 1026 "cpp.y" -{/* $$ = init_declarator( $1, $2 ); */; - break;} -case 78: -#line 1031 "cpp.y" +#line 992 "cpp.y" {yyval.param_declarator_ptr=yyvsp[0].param_declarator_ptr;; break;} -case 79: -#line 1034 "cpp.y" +case 62: +#line 995 "cpp.y" { yyval.param_declarator_ptr=yyvsp[0].param_declarator_ptr; - yyval.param_declarator_ptr->ptr_ops.push_back(yyvsp[-1].tcount); + yyval.param_declarator_ptr->ptr_ops.push_back(yyvsp[-1].tokenvalue); ; break;} -case 80: -#line 1042 "cpp.y" +case 63: +#line 1003 "cpp.y" { yyval.param_declarator_ptr = new param_declarator; yyval.param_declarator_ptr->decl_id = yyvsp[0].string_ptr->c_str(); ; break;} -case 81: -#line 1047 "cpp.y" +case 64: +#line 1008 "cpp.y" { yyval.param_declarator_ptr = yyvsp[-3].param_declarator_ptr; if (yyvsp[-1].expression_ptr != 0) @@ -1597,117 +1500,115 @@ } ; break;} -case 82: -#line 1058 "cpp.y" +case 65: +#line 1019 "cpp.y" {yyval.member_declarator_ptr = yyvsp[0].member_declarator_ptr;; break;} -case 83: -#line 1061 "cpp.y" +case 66: +#line 1022 "cpp.y" { yyval.member_declarator_ptr = yyvsp[0].member_declarator_ptr; - yyval.member_declarator_ptr->ptr_ops.push_back(yyvsp[-1].tcount); + yyval.member_declarator_ptr->ptr_ops.push_back(yyvsp[-1].tokenvalue); ; break;} -case 84: -#line 1069 "cpp.y" +case 67: +#line 1030 "cpp.y" { yyval.member_declarator_ptr = new member_declarator; yyval.member_declarator_ptr->method = false; yyval.member_declarator_ptr->declarator_id = yyvsp[0].string_ptr; ; break;} -case 85: -#line 1079 "cpp.y" +case 68: +#line 1040 "cpp.y" { yyval.member_declarator_ptr->params = yyvsp[-1].param_decl_list_ptr; yyval.member_declarator_ptr->method = true; ; break;} -case 86: -#line 1084 "cpp.y" +case 69: +#line 1045 "cpp.y" { yyval.member_declarator_ptr->array_indexes.push_back(yyvsp[-1].expression_ptr); ; break;} -case 87: -#line 1093 "cpp.y" -{yyval.tcount = STAR;; +case 70: +#line 1054 "cpp.y" +{yyval.tokenvalue = STAR;; break;} -case 88: -#line 1095 "cpp.y" -{yyval.tcount = AND;; +case 71: +#line 1056 "cpp.y" +{yyval.tokenvalue = AND;; break;} -case 89: -#line 1101 "cpp.y" +case 72: +#line 1062 "cpp.y" {/* $$ = $1 + $2; */; break;} -case 90: -#line 1105 "cpp.y" -{/* $$ = $1; */; +case 73: +#line 1066 "cpp.y" +{; break;} -case 91: -#line 1106 "cpp.y" +case 74: +#line 1067 "cpp.y" {/* $$ = 0; */; break;} -case 92: -#line 1111 "cpp.y" +case 75: +#line 1072 "cpp.y" { - /* seen_const = true; - $$ = 1;*/ -; + ; break;} -case 93: -#line 1124 "cpp.y" +case 76: +#line 1080 "cpp.y" {yyval.string_ptr = yyvsp[0].string_ptr;; break;} -case 94: -#line 1135 "cpp.y" -{/* $$ = $1; */; +case 77: +#line 1091 "cpp.y" +{; break;} -case 95: -#line 1136 "cpp.y" -{/* $$ = NULL; */; +case 78: +#line 1092 "cpp.y" +{; break;} -case 96: -#line 1141 "cpp.y" -{/* $$ = ($1 != NULL ? $1 : $2); */; +case 79: +#line 1097 "cpp.y" +{; break;} -case 97: -#line 1177 "cpp.y" +case 80: +#line 1131 "cpp.y" {yyval.param_decl_list_ptr = yyvsp[0].param_decl_list_ptr;; break;} -case 98: -#line 1183 "cpp.y" +case 81: +#line 1137 "cpp.y" {; break;} -case 99: -#line 1184 "cpp.y" +case 82: +#line 1138 "cpp.y" {; break;} -case 100: -#line 1188 "cpp.y" -{/* $$ = $1; */; +case 83: +#line 1142 "cpp.y" +{; break;} -case 101: -#line 1189 "cpp.y" +case 84: +#line 1143 "cpp.y" {yyval.param_decl_list_ptr = NULL;; break;} -case 102: -#line 1194 "cpp.y" +case 85: +#line 1148 "cpp.y" { yyval.param_decl_list_ptr = new param_decl_list; yyval.param_decl_list_ptr->push_back(yyvsp[0].param_decl_ptr); ; break;} -case 103: -#line 1199 "cpp.y" +case 86: +#line 1153 "cpp.y" { yyval.param_decl_list_ptr = yyvsp[-2].param_decl_list_ptr; yyval.param_decl_list_ptr->push_back(yyvsp[0].param_decl_ptr); ; break;} -case 104: -#line 1207 "cpp.y" +case 87: +#line 1161 "cpp.y" { yyval.param_decl_ptr = new param_decl; yyval.param_decl_ptr->decl_specs = yyvsp[-1].string_list_ptr; @@ -1715,8 +1616,8 @@ yyval.param_decl_ptr->bdef = false; ; break;} -case 105: -#line 1214 "cpp.y" +case 88: +#line 1168 "cpp.y" { yyval.param_decl_ptr = new param_decl; yyval.param_decl_ptr->decl_specs = yyvsp[-3].string_list_ptr; @@ -1725,52 +1626,52 @@ yyval.param_decl_ptr->defval = yyvsp[0].expression_ptr; ; break;} -case 106: -#line 1248 "cpp.y" -{/* $$ = $2; */; +case 89: +#line 1202 "cpp.y" +{; break;} -case 107: -#line 1250 "cpp.y" -{/* $$ = $2; */; +case 90: +#line 1204 "cpp.y" +{; break;} -case 108: -#line 1255 "cpp.y" -{/* $$ = $1; */; +case 91: +#line 1209 "cpp.y" +{; break;} -case 109: -#line 1256 "cpp.y" -{/* $$ = NULL; */; +case 92: +#line 1210 "cpp.y" +{; break;} -case 110: -#line 1260 "cpp.y" -{/* $$ = $1; */; +case 93: +#line 1214 "cpp.y" +{; break;} -case 111: -#line 1262 "cpp.y" +case 94: +#line 1216 "cpp.y" {/* $$ = $3; */; break;} -case 112: -#line 1263 "cpp.y" -{/* $$ = NULL; */; +case 95: +#line 1217 "cpp.y" +{; break;} -case 113: -#line 1267 "cpp.y" +case 96: +#line 1221 "cpp.y" {/* $$ = 1; */; break;} -case 114: -#line 1268 "cpp.y" +case 97: +#line 1222 "cpp.y" {/* $$ = 0; */; break;} -case 115: -#line 1273 "cpp.y" -{/* $$ = initializer_list( $1, NULL ); */; +case 98: +#line 1227 "cpp.y" +{; break;} -case 116: -#line 1275 "cpp.y" -{/* $$ = initializer_list( $3, $1 ); */; +case 99: +#line 1229 "cpp.y" +{; break;} -case 117: -#line 1282 "cpp.y" +case 100: +#line 1236 "cpp.y" { //check if this class should be wrapped or not depending on wsdd information if (is_bean_class(yyvsp[0].class_head_ptr->baselist)) //bean class @@ -1780,6 +1681,11 @@ g_pTranslationUnit->AddBeanClass(pBeanClass); g_pCurrentBeanClass = pBeanClass; g_currentclasstype = BEANCLASS; + g_baccessbeanmacrofound = false; + //following line adds default namespace for this complex type. + //This should be removed when we get the namespace from the wsdd. + string defns = "http://www.opensource.lk/" + (*(yyvsp[0].class_head_ptr->class_name)); + g_ClassNamespaces[*(yyvsp[0].class_head_ptr->class_name)] = defns; } else // we assume that this is the webservice class - there cannot be 2 web service classes { @@ -1788,71 +1694,80 @@ g_pTranslationUnit->SetWSClass(pWSClass); g_pCurrentWSClass = pWSClass; g_currentclasstype = WSCLASS; + g_baccessbeanmacrofound = false; + //following line adds default namespace for this web service. + //This should be removed when we get the namespace from the wsdd. + string defns = "http://www.opensource.lk/" + (*(yyvsp[0].class_head_ptr->class_name)); + g_ClassNamespaces[*(yyvsp[0].class_head_ptr->class_name)] = defns; } g_classesfound.push_back(g_classname); ; break;} -case 118: -#line 1303 "cpp.y" +case 101: +#line 1267 "cpp.y" { g_classname = ""; //end of class scope ; break;} -case 119: -#line 1311 "cpp.y" +case 102: +#line 1275 "cpp.y" { g_classname = yyvsp[-1].string_ptr->c_str(); yyval.class_head_ptr = new class_head; yyval.class_head_ptr->class_name = yyvsp[-1].string_ptr; - yyval.class_head_ptr->baselist = yyvsp[0].inhcont; //may be NULL + yyval.class_head_ptr->baselist = yyvsp[0].base_specifier_list_ptr; //may be NULL ; break;} -case 120: -#line 1326 "cpp.y" -{/* next_access = Access::Private; $$ = AT_CLASS; */; +case 103: +#line 1290 "cpp.y" +{; break;} -case 121: -#line 1334 "cpp.y" +case 104: +#line 1298 "cpp.y" {; break;} -case 122: -#line 1337 "cpp.y" +case 105: +#line 1301 "cpp.y" {; break;} -case 123: -#line 1341 "cpp.y" +case 106: +#line 1305 "cpp.y" {; break;} -case 124: -#line 1342 "cpp.y" +case 107: +#line 1306 "cpp.y" {; break;} -case 125: -#line 1346 "cpp.y" +case 108: +#line 1310 "cpp.y" { g_bdestructor_seen = false;; break;} -case 126: -#line 1350 "cpp.y" +case 109: +#line 1314 "cpp.y" { add_member_declaration(yyvsp[-2].string_list_ptr, yyvsp[-1].member_declarator_list_ptr); ; break;} -case 129: -#line 1371 "cpp.y" +case 110: +#line 1328 "cpp.y" +{ g_baccessbeanmacrofound = true;; + break;} +case 113: +#line 1338 "cpp.y" { yyval.member_declarator_list_ptr = new member_declarator_list; yyval.member_declarator_list_ptr->push_back(yyvsp[0].member_declarator_ptr); ; break;} -case 130: -#line 1376 "cpp.y" +case 114: +#line 1343 "cpp.y" { yyval.member_declarator_list_ptr = yyvsp[-2].member_declarator_list_ptr; yyval.member_declarator_list_ptr->push_back(yyvsp[0].member_declarator_ptr); ; break;} -case 131: -#line 1389 "cpp.y" +case 115: +#line 1356 "cpp.y" { yyval.member_declarator_ptr = yyvsp[-1].member_declarator_ptr; if (yyvsp[-1].member_declarator_ptr != 0) //there is a pure specifier @@ -1861,8 +1776,8 @@ } ; break;} -case 132: -#line 1397 "cpp.y" +case 116: +#line 1364 "cpp.y" { yyval.member_declarator_ptr = yyvsp[-1].member_declarator_ptr; if (yyvsp[0].expression_ptr != NULL) @@ -1871,114 +1786,114 @@ } ; break;} -case 133: -#line 1410 "cpp.y" -{yyval.tcount = 1;; +case 117: +#line 1377 "cpp.y" +{yyval.tokenvalue = 1;; break;} -case 134: -#line 1414 "cpp.y" -{yyval.tcount = yyvsp[0].tcount;; +case 118: +#line 1381 "cpp.y" +{yyval.tokenvalue = yyvsp[0].tokenvalue;; break;} -case 135: -#line 1415 "cpp.y" -{yyval.tcount = 0;; +case 119: +#line 1382 "cpp.y" +{yyval.tokenvalue = 0;; break;} -case 136: -#line 1420 "cpp.y" +case 120: +#line 1387 "cpp.y" {yyval.expression_ptr = yyvsp[0].expression_ptr;; break;} -case 137: -#line 1424 "cpp.y" +case 121: +#line 1391 "cpp.y" {yyval.expression_ptr = yyvsp[0].expression_ptr;; break;} -case 138: -#line 1425 "cpp.y" +case 122: +#line 1392 "cpp.y" {yyval.expression_ptr = NULL;; break;} -case 139: -#line 1430 "cpp.y" -{yyval.inhcont = yyvsp[0].inhcont;; +case 123: +#line 1397 "cpp.y" +{yyval.base_specifier_list_ptr = yyvsp[0].base_specifier_list_ptr;; break;} -case 140: -#line 1431 "cpp.y" -{yyval.inhcont = NULL;; +case 124: +#line 1398 "cpp.y" +{yyval.base_specifier_list_ptr = NULL;; break;} -case 141: -#line 1435 "cpp.y" -{yyval.inhcont = yyvsp[0].inhcont;; +case 125: +#line 1402 "cpp.y" +{yyval.base_specifier_list_ptr = yyvsp[0].base_specifier_list_ptr;; break;} -case 142: -#line 1440 "cpp.y" +case 126: +#line 1407 "cpp.y" { - yyval.inhcont = new base_specifier_list; - yyval.inhcont->push_back(yyvsp[0].bclass); + yyval.base_specifier_list_ptr = new base_specifier_list; + yyval.base_specifier_list_ptr->push_back(yyvsp[0].base_specifier_ptr); ; break;} -case 143: -#line 1445 "cpp.y" +case 127: +#line 1412 "cpp.y" { - yyval.inhcont->push_back(yyvsp[0].bclass); + yyval.base_specifier_list_ptr->push_back(yyvsp[0].base_specifier_ptr); ; break;} -case 144: -#line 1461 "cpp.y" +case 128: +#line 1428 "cpp.y" { - yyval.bclass = new base_specifier; - yyval.bclass->access = yyvsp[-1].tcount; - yyval.bclass->class_name = yyvsp[0].string_ptr; + yyval.base_specifier_ptr = new base_specifier; + yyval.base_specifier_ptr->access = yyvsp[-1].tokenvalue; + yyval.base_specifier_ptr->class_name = yyvsp[0].string_ptr; ; break;} -case 145: -#line 1469 "cpp.y" +case 129: +#line 1436 "cpp.y" {/*$$ = 1; */; break;} -case 146: -#line 1470 "cpp.y" +case 130: +#line 1437 "cpp.y" {/* $$ = 0; */; break;} -case 147: -#line 1475 "cpp.y" -{yyval.tcount = yyvsp[0].tcount; g_currentaccessspecifier = yyvsp[0].tcount;; - break;} -case 148: -#line 1477 "cpp.y" -{yyval.tcount = yyvsp[0].tcount; g_currentaccessspecifier = yyvsp[0].tcount;; - break;} -case 149: -#line 1479 "cpp.y" -{yyval.tcount = yyvsp[0].tcount; g_currentaccessspecifier = yyvsp[0].tcount;; - break;} -case 150: -#line 1484 "cpp.y" -{yyval.tcount=yyvsp[0].tcount;; - break;} -case 151: -#line 1485 "cpp.y" -{yyval.tcount = 0;; +case 131: +#line 1442 "cpp.y" +{yyval.tokenvalue = yyvsp[0].tokenvalue; g_currentaccessspecifier = yyvsp[0].tokenvalue;; break;} -case 152: -#line 1538 "cpp.y" -{/* $$ = 1; */; +case 132: +#line 1444 "cpp.y" +{yyval.tokenvalue = yyvsp[0].tokenvalue; g_currentaccessspecifier = yyvsp[0].tokenvalue;; break;} -case 153: -#line 1539 "cpp.y" -{/* $$ = 0; */; +case 133: +#line 1446 "cpp.y" +{yyval.tokenvalue = yyvsp[0].tokenvalue; g_currentaccessspecifier = yyvsp[0].tokenvalue;; break;} -case 154: -#line 1660 "cpp.y" -{ /*$$ = $1;*/; - break;} -case 155: -#line 1661 "cpp.y" -{/* $$ = NULL; */; +case 134: +#line 1451 "cpp.y" +{yyval.tokenvalue=yyvsp[0].tokenvalue;; break;} -case 156: -#line 1747 "cpp.y" -{/* $$ = $1; */; +case 135: +#line 1452 "cpp.y" +{yyval.tokenvalue = 0;; + break;} +case 136: +#line 1505 "cpp.y" +{; + break;} +case 137: +#line 1506 "cpp.y" +{; + break;} +case 138: +#line 1613 "cpp.y" +{; + break;} +case 139: +#line 1614 "cpp.y" +{; + break;} +case 140: +#line 1694 "cpp.y" +{; break;} -case 157: -#line 1748 "cpp.y" -{/* $$ = NULL; */; +case 141: +#line 1695 "cpp.y" +{; break;} } @@ -2213,84 +2128,5 @@ #endif return yyresult; } -#line 1803 "cpp.y" - -/* -string -makeOperatorName( int op ) { - switch( op ) { - case PLUS: return string("operator+"); - case MINUS: return string("operator-"); - case STAR: return string("operator*"); - case DIVIDE: return string("operator/"); - case MOD: return string("operator%"); - case GREATER: return string("operator>"); - case LESS: return string("operator<"); - case EQUAL: return string("operator="); - case AND: return string("operator&"); - case OR: return string("operator|"); - case NOT: return string("operator!"); - case XOR: return string("operator^"); - case COMMA: return string("operator,"); - case COMPLEMENT: return string("operator~"); - case PLUSEQ: return string("operator+="); - case MINUSEQ: return string("operator-="); - case STAREQ: return string("operator*="); - case DIVEQ: return string("operator/="); - case MODEQ: return string("operator%="); - case XOREQ: return string("operator^="); - case ANDEQ: return string("operator&="); - case OREQ: return string("operator|="); - case LTLT: return string("operator<<"); - case GTGT: return string("operator>>"); - case GTGTEQ: return string("operator>>="); - case LTLTEQ: return string("operator<<="); - case EQEQ: return string("operator=="); - case NOTEQ: return string("operator!="); - case LEQ: return string("operator>="); - case ANDAND: return string("operator||"); - case PLUSPLUS: return string("operator++"); - case MINUSMINUS: return string("operator--"); - case ARROW: return string("operator->"); - } - return string(""); -} - -NameDeclaration * -checkAnon(NameDeclaration *decl, int line) -{ - if (decl == NULL) - return facade.makeAnonIdent(line,0); - return decl; -} - -NameDeclaration * -checkAnonParm(NameDeclaration* decl, int line, int parm_num ) { - if( decl == NULL ) - return facade.makeAnonParmIdent(line,0,parm_num); - return decl; -} - -NameDeclaration * -checkAnonNS(NameDeclaration *decl, int line) -{ - if (decl == NULL) - return facade.makeAnonNSIdent(line,0); - return decl; -} - -NameDeclaration * -checkBinOp(int op, NameDeclaration *d1, NameDeclaration *d2) -{ - string s = makeOperatorName(op); - return facade.lookupBinOp( &s, d1, d2 ); -} - -NameDeclaration * -checkUnaryOp(int op, NameDeclaration *d) -{ - string s = makeOperatorName(op); - return facade.lookupUnaryOp(&s, d); -} -*/ +#line 1747 "cpp.y" 1.4 +3 -11 xml-axis/c/src/wcg/cpplex.cpp Index: cpplex.cpp =================================================================== RCS file: /home/cvs/xml-axis/c/src/wcg/cpplex.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- cpplex.cpp 25 Jul 2003 18:18:02 -0000 1.3 +++ cpplex.cpp 4 Aug 2003 05:21:05 -0000 1.4 @@ -570,9 +570,9 @@ int line_number = 1; - #define MAX_INCLUDE_DEPTH 10 - YY_BUFFER_STATE include_stack[MAX_INCLUDE_DEPTH]; - int include_stack_ptr = 0; + #define MAX_INCLUDE_DEPTH 10 + YY_BUFFER_STATE include_stack[MAX_INCLUDE_DEPTH]; + int include_stack_ptr = 0; /***** Start state for comments *****/ #define COMMENT 1 @@ -1804,7 +1804,6 @@ b->yy_is_interactive = 0; #else b->yy_is_interactive = 1; - //b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; #endif #endif } @@ -2232,10 +2231,3 @@ printf(yytext); return 0; } -/* -int main() -{ - init_keyword_map(); - yyparse(); -} -*/ \ No newline at end of file