diff --git a/res/ael/ael.tab.c b/res/ael/ael.tab.c index b24ee1c1a04ec523fe84a164a37281987be79d1d..34900acb05d144e12fd93f9b0225d82bac76b256 100644 --- a/res/ael/ael.tab.c +++ b/res/ael/ael.tab.c @@ -511,7 +511,7 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 17 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 327 +#define YYLAST 373 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 44 @@ -520,7 +520,7 @@ union yyalloc /* YYNRULES -- Number of rules. */ #define YYNRULES 142 /* YYNRULES -- Number of states. */ -#define YYNSTATES 288 +#define YYNSTATES 281 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -594,17 +594,17 @@ static const yytype_int8 yyrhs[] = -1, 43, -1, 37, -1, 50, 3, 48, 4, 59, 5, -1, 23, -1, -1, 24, -1, 24, 23, -1, 23, 24, -1, 15, 43, 6, 58, 7, 4, 92, - 5, -1, 16, 4, 53, 5, -1, -1, 54, 53, + 5, -1, 16, 4, 53, 5, -1, -1, 53, 54, -1, 1, 53, -1, -1, 43, 9, 55, 43, 8, -1, -1, 42, 43, 9, 57, 43, 8, -1, -1, 43, -1, 58, 10, 43, -1, 58, 1, -1, -1, - 60, 59, -1, 1, 59, -1, 62, -1, 99, -1, + 59, 60, -1, 1, 59, -1, 62, -1, 99, -1, 94, -1, 95, -1, 61, -1, 54, -1, 56, -1, 43, 1, -1, 8, -1, 17, 25, 43, 8, -1, 43, 25, 74, -1, 43, 14, 43, 25, 74, -1, 31, 43, 25, 74, -1, 32, 6, 70, 7, 43, 25, 74, -1, 31, 32, 6, 70, 7, 43, 25, - 74, -1, -1, 74, 63, -1, 1, 63, -1, 71, + 74, -1, -1, 63, 74, -1, 1, 63, -1, 71, 11, 71, 11, 71, -1, 43, -1, 64, 13, 71, 13, 71, 13, 71, -1, -1, 6, 67, 69, 7, -1, 19, 66, -1, 22, 66, -1, 20, 6, 65, @@ -628,12 +628,12 @@ static const yytype_int8 yyrhs[] = 84, 89, 7, -1, 43, 6, 7, -1, -1, 43, 6, 86, -1, 85, 89, 7, -1, 85, 7, -1, 43, -1, -1, 69, -1, -1, 89, 10, 88, -1, - -1, 91, 90, -1, 35, 43, 11, 63, -1, 37, - 11, 63, -1, 36, 43, 11, 63, -1, -1, 93, - 92, -1, 74, -1, 99, -1, 38, 43, 4, 63, + -1, 90, 91, -1, 35, 43, 11, 63, -1, 37, + 11, 63, -1, 36, 43, 11, 63, -1, -1, 92, + 93, -1, 74, -1, 99, -1, 38, 43, 4, 63, 5, -1, 39, 4, 96, 5, -1, 40, 4, 96, - 5, -1, -1, 43, 8, 96, -1, 43, 14, 43, - 8, 96, -1, 1, 96, -1, 48, -1, 48, 13, + 5, -1, -1, 96, 43, 8, -1, 96, 43, 14, + 43, 8, -1, 1, 96, -1, 48, -1, 48, 13, 65, -1, 97, 8, -1, 98, 97, 8, -1, 98, 1, -1, 41, 4, 98, 5, -1, 41, 4, 5, -1 @@ -746,91 +746,91 @@ static const yytype_uint8 yydefact[] = { 14, 9, 0, 0, 13, 15, 0, 0, 3, 6, 0, 7, 8, 0, 0, 17, 16, 1, 5, 4, - 0, 27, 0, 0, 0, 0, 11, 10, 0, 28, - 0, 22, 23, 19, 21, 0, 30, 0, 0, 0, - 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, - 39, 40, 0, 0, 38, 34, 36, 37, 35, 125, - 29, 0, 33, 0, 0, 0, 0, 0, 0, 0, - 0, 41, 0, 0, 12, 32, 0, 94, 0, 0, + 0, 27, 0, 0, 11, 10, 0, 28, 0, 22, + 19, 0, 21, 0, 30, 0, 0, 23, 0, 0, + 125, 29, 0, 33, 12, 42, 0, 0, 0, 0, + 0, 0, 0, 0, 39, 40, 32, 38, 34, 36, + 37, 35, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 41, 0, 0, 0, 18, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 74, 75, 0, 84, 127, 118, 0, 0, - 125, 128, 24, 0, 0, 0, 62, 0, 0, 0, - 0, 0, 142, 136, 0, 0, 25, 0, 44, 0, - 0, 0, 0, 0, 55, 0, 57, 0, 58, 0, - 69, 97, 0, 104, 0, 91, 90, 92, 79, 0, - 0, 111, 87, 78, 96, 114, 60, 117, 0, 86, - 88, 18, 126, 43, 0, 46, 0, 0, 0, 63, - 135, 0, 0, 130, 131, 0, 138, 140, 141, 0, - 0, 0, 51, 73, 50, 108, 85, 0, 120, 53, - 0, 0, 0, 0, 0, 70, 0, 0, 0, 76, - 0, 106, 77, 0, 83, 0, 112, 0, 93, 61, - 113, 116, 0, 0, 0, 64, 65, 133, 0, 137, - 139, 0, 45, 110, 118, 0, 0, 0, 0, 0, - 120, 67, 0, 59, 0, 0, 0, 99, 71, 98, + 0, 0, 74, 75, 0, 84, 127, 118, 0, 126, + 128, 24, 0, 0, 0, 62, 0, 0, 0, 0, + 142, 136, 0, 0, 25, 0, 44, 0, 0, 0, + 0, 55, 0, 57, 0, 58, 0, 69, 97, 0, + 104, 0, 91, 90, 92, 79, 0, 0, 111, 87, + 78, 96, 114, 60, 117, 0, 86, 88, 43, 0, + 46, 0, 0, 0, 63, 135, 130, 0, 131, 0, + 138, 140, 141, 0, 0, 0, 51, 73, 50, 108, + 85, 0, 120, 53, 0, 0, 0, 0, 0, 70, + 0, 0, 0, 76, 0, 106, 77, 0, 83, 0, + 112, 0, 93, 61, 113, 116, 0, 0, 0, 64, + 65, 133, 0, 137, 139, 0, 45, 110, 118, 0, + 0, 67, 0, 59, 0, 0, 0, 99, 71, 98, 105, 0, 0, 0, 95, 115, 119, 0, 0, 0, - 0, 26, 0, 56, 0, 0, 0, 72, 121, 68, + 0, 26, 0, 56, 72, 0, 0, 0, 121, 68, 66, 0, 0, 0, 0, 0, 0, 107, 80, 129, - 89, 0, 47, 134, 109, 0, 0, 123, 0, 0, - 103, 102, 101, 100, 0, 48, 122, 124, 0, 52, - 0, 0, 81, 54, 0, 0, 0, 82 + 89, 0, 47, 134, 109, 0, 0, 0, 0, 0, + 103, 102, 101, 100, 0, 48, 0, 0, 123, 0, + 52, 0, 122, 124, 0, 81, 54, 0, 0, 0, + 82 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 6, 7, 8, 113, 9, 10, 11, 12, 24, - 92, 39, 93, 170, 30, 52, 53, 54, 55, 120, - 180, 181, 125, 177, 94, 147, 107, 182, 131, 95, - 121, 193, 274, 284, 202, 198, 132, 191, 134, 123, - 214, 97, 196, 98, 236, 148, 219, 220, 99, 100, - 56, 57, 110, 114, 115, 58 + -1, 6, 7, 8, 111, 9, 10, 11, 12, 23, + 92, 42, 93, 164, 28, 39, 56, 57, 58, 118, + 174, 175, 122, 171, 94, 144, 106, 176, 128, 95, + 168, 187, 264, 277, 196, 192, 129, 185, 131, 120, + 208, 97, 190, 98, 226, 145, 210, 238, 62, 99, + 59, 60, 108, 112, 113, 61 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -219 +#define YYPACT_NINF -209 static const yytype_int16 yypact[] = { - 102, -219, -25, 40, 24, 29, 70, 249, -219, -219, - 74, -219, -219, 107, 11, -219, -219, -219, -219, -219, - -6, 65, 11, 137, 148, 11, -219, -219, 152, -219, - 87, -219, -219, -219, -219, 123, -219, 173, 126, 136, - 123, -219, 159, -11, 186, 190, 194, 196, 158, 86, - -219, -219, 203, 123, -219, -219, -219, -219, -219, 177, - -219, 201, -219, 170, 208, 191, 179, 12, 12, 19, - 214, -219, 181, 213, -219, -219, 115, -219, 183, 222, - 222, 223, 222, 36, 187, 226, 228, 229, 232, 222, - 202, 182, -219, -219, 213, -219, -219, 16, 113, 239, - 177, -219, -219, 240, 179, 213, -219, 22, 12, 101, - 246, 248, -219, 241, 250, 10, -219, 234, -219, 56, - 255, 56, 256, 253, -219, 259, -219, 224, -219, 26, - 225, 157, 258, 119, 261, -219, -219, -219, -219, 213, - 266, -219, -219, -219, 254, -219, 231, -219, 59, -219, - -219, -219, -219, -219, 60, -219, 233, 235, 236, -219, - -219, 12, 237, -219, -219, 224, -219, -219, -219, 263, - 238, 213, -219, -219, -219, 270, -219, 242, 124, -1, - 269, 276, 273, 187, 187, -219, 187, 243, 187, -219, - 244, 274, -219, 247, -219, 115, -219, 213, -219, -219, - -219, 251, 252, 257, 264, -219, -219, -219, 283, -219, - -219, 284, -219, -219, 242, 286, 260, 262, 285, 292, - 124, 265, 267, -219, 267, 172, 15, 176, -219, 165, - -219, -6, 290, 294, -219, -219, -219, 293, 277, 213, - 12, -219, 129, -219, 295, 296, 56, -219, -219, -219, - 268, 291, 298, 187, 187, 187, 187, -219, -219, -219, - -219, 213, -219, -219, -219, 56, 56, -219, 267, 267, - 301, 301, 301, 301, 271, -219, -219, -219, 300, -219, - 307, 267, -219, -219, 275, 309, 213, -219 + 262, -209, -32, 21, 5, 13, 69, 296, -209, -209, + 112, -209, -209, 115, 14, -209, -209, -209, -209, -209, + -29, 85, 14, 0, -209, -209, 129, -209, 116, 92, + -209, 140, -209, 105, -209, 147, 125, -209, 105, 99, + -209, -209, 132, 252, -209, -209, 163, -25, 159, 182, + 186, 197, 162, 242, -209, -209, -209, -209, -209, -209, + -209, -209, 165, 201, 170, 222, 204, 187, 16, 16, + 68, 223, -209, 190, 246, 59, -209, -209, 193, 234, + 234, 236, 234, -27, 212, 249, 251, 255, 238, 234, + 228, 292, -209, -209, 246, -209, -209, 15, 146, -209, + -209, -209, 273, 187, 246, -209, 107, 16, 25, 29, + -209, 269, 279, 39, -209, 265, -209, 19, 192, 299, + 294, -209, 302, -209, 264, -209, 70, 266, 161, 300, + 168, 305, -209, -209, -209, -209, 246, 306, -209, -209, + -209, 293, -209, 272, -209, 84, -209, -209, -209, 113, + -209, 274, 275, 278, -209, 280, -209, 76, -209, 264, + -209, -209, -209, 308, 281, 246, 246, -209, -209, 315, + -209, 282, -209, 22, 313, 320, 317, 212, 212, -209, + 212, 286, 212, -209, 287, 318, -209, 288, -209, 59, + -209, 246, -209, -209, -209, 290, 291, 295, 310, -209, + -209, -209, 297, -209, -209, 328, -209, -209, 282, 330, + 122, 298, 301, -209, 301, 171, 86, 205, -209, 121, + -209, -29, 331, 219, -209, -209, -209, 334, 321, 246, + 335, -209, 102, -209, -209, 304, 307, 337, -209, -209, + 309, 332, 338, 212, 212, 212, 212, -209, -209, -209, + -209, 246, -209, -209, -209, 340, 342, 19, 301, 301, + 343, 343, 343, 343, 312, -209, 19, 19, 246, 344, + -209, 348, 246, 246, 301, -209, -209, 316, 351, 246, + -209 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -219, -219, -219, 310, -19, -219, -219, -219, -219, 125, - 5, -219, -15, -219, -219, -31, -219, -219, -219, -114, - -219, 154, 25, -219, -219, 143, 217, -218, -82, -219, - -59, -219, -219, -219, -219, -219, -219, -219, -219, -219, - -219, -219, -219, -219, -219, 108, 103, -219, 227, -219, - -219, -219, -65, 209, -219, -51 + -209, -209, -209, 353, -19, -209, -209, -209, -209, 339, + 137, -209, -30, -209, -209, 324, -209, -209, -209, -114, + -209, 206, -54, -209, -209, 195, 260, -208, -82, -209, + -62, -209, -209, -209, -209, -209, -209, -209, -209, -209, + -209, -209, -209, -209, -209, 156, -209, -209, -209, -209, + -209, -209, 1, 254, -209, 311 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -840,76 +840,86 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -133 static const yytype_int16 yytable[] = { - 96, 28, 133, 111, 251, 172, 252, 174, 101, 62, - -66, 167, 22, 108, 118, 168, -20, -132, 13, 25, - 51, 64, 75, 145, 112, 51, 187, 25, 254, 156, - 25, 26, 65, 157, 158, 144, 183, 27, 51, 184, - 50, 96, 221, 160, 14, 50, 155, 26, 15, 101, - 278, 279, 16, 27, 23, 109, 26, 119, 50, 146, - 76, -49, 27, 283, 77, 159, 200, 203, 78, 201, - 17, 157, 158, 129, 79, 80, 81, 20, 82, 130, - 194, 233, 83, 84, 85, 86, 87, 71, 36, 88, - 89, -49, -49, -49, 37, 32, 207, 38, 48, 91, - 72, 225, 226, 159, 227, 126, 229, 128, 29, 161, - 1, 73, 212, 21, 139, 162, 119, 2, 3, 76, - -49, 149, 150, 77, 40, 4, 5, 78, -31, 190, - 187, 41, 267, 79, 80, 81, 264, 82, 234, 201, - 42, 83, 84, 85, 86, 87, 32, 31, 88, 89, - 34, 276, 277, 33, 43, 44, 35, 48, 91, 216, - 217, 218, 45, 46, 47, 48, 49, 186, 187, 60, - 188, 270, 271, 272, 273, 263, 187, 59, 256, 61, - 262, 76, 253, 187, 63, 77, 255, 187, 141, 78, - 142, 32, 66, 143, 67, 79, 80, 81, 68, 82, - 69, 70, 275, 83, 84, 85, 86, 87, 74, 102, - 88, 89, 257, 103, 104, 90, 105, 76, 47, 48, - 91, 77, 106, 116, 117, 78, 122, 287, 124, 127, - 130, 79, 80, 81, 135, 82, 136, 137, 138, 83, - 84, 85, 86, 87, 151, 140, 88, 89, 153, -2, - 18, 163, -14, 164, 165, 48, 91, 1, 166, 171, - 173, 176, 175, 178, 2, 3, 189, 179, 185, 192, - 195, 210, 4, 5, 199, 197, 204, 213, 205, 206, - 208, 211, 222, 223, 224, 146, 228, 230, 231, 239, - 232, 240, 241, 243, 235, 237, 246, 247, 258, 259, - 238, 260, 261, 244, 268, 245, 265, 266, 249, 269, - 250, 221, 187, 281, 280, 282, 286, 19, 285, 209, - 215, 154, 242, 248, 169, 0, 0, 152 + 96, 26, 130, 166, 241, 30, 242, 65, 24, 55, + 126, 13, 116, 55, 25, 22, 127, 107, 66, -20, + 117, -132, 142, -49, -49, 14, 123, -49, 125, 15, + 156, -49, 141, -66, 158, 136, 16, -49, -49, -49, + 161, -49, 150, 31, 162, -49, -49, -49, -49, -49, + 269, 270, -49, -49, -49, -49, -49, -20, 143, -132, + 117, -49, -49, -49, -49, 211, 276, -49, 157, 17, + 109, -49, 157, 110, 188, 223, 24, -49, -49, -49, + 177, -49, 25, 178, 201, -49, -49, -49, -49, -49, + 202, 194, -49, -49, 195, 215, 216, 181, 217, 244, + 219, -49, -49, 206, 44, 24, 38, 45, 155, 254, + -31, 25, 195, -31, 151, 20, 46, 34, 152, 153, + 197, 21, -31, 35, 152, 153, 36, 234, 27, 224, + 47, 48, 181, 33, 246, 31, -31, -31, 49, 50, + 51, 52, 53, 268, -31, -31, -31, -31, -31, 37, + 154, 40, 272, 273, 146, 147, 154, 235, 236, 237, + 32, 260, 261, 262, 263, 67, 32, 252, 41, 75, + 76, 180, 181, 77, 182, 63, 54, 78, 184, 181, + 54, 243, 181, 79, 80, 81, 68, 82, 64, 265, + 69, 83, 84, 85, 86, 87, 75, 167, 88, 89, + 77, 70, 247, 90, 78, 71, 51, 52, 91, 101, + 79, 80, 81, 102, 82, 245, 181, 280, 83, 84, + 85, 86, 87, 75, 249, 88, 89, 77, 103, 104, + 105, 78, 114, 115, 52, 91, 119, 79, 80, 81, + 121, 82, 124, 72, 135, 83, 84, 85, 86, 87, + 75, 37, 88, 89, 77, 127, 73, 132, 78, 133, + 45, 52, 91, 134, 79, 80, 81, 74, 82, 46, + 1, 137, 83, 84, 85, 86, 87, 2, 3, 88, + 89, 148, 159, 47, 48, 4, 5, 160, 52, 91, + 165, 49, 50, 51, 52, 53, -2, 18, 138, -14, + 139, 37, 170, 140, 1, 169, 172, 173, 183, 179, + 189, 2, 3, 186, 191, 193, 204, 198, 199, 4, + 5, 200, 207, 157, 205, 143, 212, 213, 214, 218, + 220, 222, 221, 225, 227, 229, 231, 233, 228, 248, + 230, 239, 250, 253, 240, 258, 251, 255, 257, 259, + 256, 266, 211, 267, 181, 271, 275, 274, 279, 278, + 19, 29, 43, 149, 232, 203, 209, 163, 0, 0, + 0, 0, 0, 100 }; static const yytype_int16 yycheck[] = { - 59, 20, 84, 68, 222, 119, 224, 121, 59, 40, - 11, 1, 1, 1, 73, 5, 5, 5, 43, 14, - 35, 32, 53, 7, 5, 40, 11, 22, 13, 7, - 25, 37, 43, 11, 12, 94, 10, 43, 53, 13, - 35, 100, 43, 108, 4, 40, 105, 37, 24, 100, - 268, 269, 23, 43, 43, 43, 37, 1, 53, 43, - 4, 5, 43, 281, 8, 43, 7, 7, 12, 10, - 0, 11, 12, 37, 18, 19, 20, 3, 22, 43, - 139, 195, 26, 27, 28, 29, 30, 1, 1, 33, - 34, 35, 36, 37, 7, 9, 161, 10, 42, 43, - 14, 183, 184, 43, 186, 80, 188, 82, 43, 8, - 8, 25, 171, 6, 89, 14, 1, 15, 16, 4, - 5, 8, 9, 8, 1, 23, 24, 12, 5, 10, - 11, 8, 246, 18, 19, 20, 7, 22, 197, 10, - 17, 26, 27, 28, 29, 30, 9, 22, 33, 34, - 25, 265, 266, 5, 31, 32, 4, 42, 43, 35, - 36, 37, 39, 40, 41, 42, 43, 10, 11, 43, - 13, 253, 254, 255, 256, 240, 11, 4, 13, 43, - 239, 4, 10, 11, 25, 8, 10, 11, 6, 12, - 8, 9, 6, 11, 4, 18, 19, 20, 4, 22, - 4, 43, 261, 26, 27, 28, 29, 30, 5, 8, - 33, 34, 231, 43, 6, 38, 25, 4, 41, 42, - 43, 8, 43, 9, 43, 12, 43, 286, 6, 6, - 43, 18, 19, 20, 8, 22, 8, 8, 6, 26, - 27, 28, 29, 30, 5, 43, 33, 34, 8, 0, - 1, 5, 3, 5, 13, 42, 43, 8, 8, 25, - 5, 8, 6, 4, 15, 16, 8, 43, 43, 8, - 4, 8, 23, 24, 43, 21, 43, 7, 43, 43, - 43, 43, 13, 7, 11, 43, 43, 43, 14, 25, - 43, 8, 8, 7, 43, 43, 11, 5, 8, 5, - 43, 8, 25, 43, 13, 43, 11, 11, 43, 11, - 43, 43, 11, 13, 43, 8, 7, 7, 43, 165, - 177, 104, 214, 220, 115, -1, -1, 100 + 62, 20, 84, 117, 212, 5, 214, 32, 37, 39, + 37, 43, 74, 43, 43, 1, 43, 1, 43, 5, + 1, 5, 7, 4, 5, 4, 80, 8, 82, 24, + 5, 12, 94, 11, 5, 89, 23, 18, 19, 20, + 1, 22, 104, 43, 5, 26, 27, 28, 29, 30, + 258, 259, 33, 34, 35, 36, 37, 43, 43, 43, + 1, 42, 43, 4, 5, 43, 274, 8, 43, 0, + 69, 12, 43, 5, 136, 189, 37, 18, 19, 20, + 10, 22, 43, 13, 8, 26, 27, 28, 29, 30, + 14, 7, 33, 34, 10, 177, 178, 11, 180, 13, + 182, 42, 43, 165, 5, 37, 1, 8, 107, 7, + 5, 43, 10, 8, 7, 3, 17, 1, 11, 12, + 7, 6, 17, 7, 11, 12, 10, 5, 43, 191, + 31, 32, 11, 4, 13, 43, 31, 32, 39, 40, + 41, 42, 43, 257, 39, 40, 41, 42, 43, 9, + 43, 4, 266, 267, 8, 9, 43, 35, 36, 37, + 23, 243, 244, 245, 246, 6, 29, 229, 43, 4, + 5, 10, 11, 8, 13, 43, 39, 12, 10, 11, + 43, 10, 11, 18, 19, 20, 4, 22, 25, 251, + 4, 26, 27, 28, 29, 30, 4, 5, 33, 34, + 8, 4, 221, 38, 12, 43, 41, 42, 43, 8, + 18, 19, 20, 43, 22, 10, 11, 279, 26, 27, + 28, 29, 30, 4, 5, 33, 34, 8, 6, 25, + 43, 12, 9, 43, 42, 43, 43, 18, 19, 20, + 6, 22, 6, 1, 6, 26, 27, 28, 29, 30, + 4, 9, 33, 34, 8, 43, 14, 8, 12, 8, + 8, 42, 43, 8, 18, 19, 20, 25, 22, 17, + 8, 43, 26, 27, 28, 29, 30, 15, 16, 33, + 34, 8, 13, 31, 32, 23, 24, 8, 42, 43, + 25, 39, 40, 41, 42, 43, 0, 1, 6, 3, + 8, 9, 8, 11, 8, 6, 4, 43, 8, 43, + 4, 15, 16, 8, 21, 43, 8, 43, 43, 23, + 24, 43, 7, 43, 43, 43, 13, 7, 11, 43, + 43, 43, 14, 43, 43, 25, 8, 7, 43, 8, + 43, 43, 8, 8, 43, 13, 25, 43, 11, 11, + 43, 11, 43, 11, 11, 43, 8, 13, 7, 43, + 7, 22, 38, 103, 208, 159, 171, 113, -1, -1, + -1, -1, -1, 62 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -918,33 +928,33 @@ static const yytype_uint8 yystos[] = { 0, 8, 15, 16, 23, 24, 45, 46, 47, 49, 50, 51, 52, 43, 4, 24, 23, 0, 1, 47, - 3, 6, 1, 43, 53, 54, 37, 43, 48, 43, - 58, 53, 9, 5, 53, 4, 1, 7, 10, 55, - 1, 8, 17, 31, 32, 39, 40, 41, 42, 43, - 54, 56, 59, 60, 61, 62, 94, 95, 99, 4, - 43, 43, 59, 25, 32, 43, 6, 4, 4, 4, - 43, 1, 14, 25, 5, 59, 4, 8, 12, 18, + 3, 6, 1, 53, 37, 43, 48, 43, 58, 53, + 5, 43, 54, 4, 1, 7, 10, 9, 1, 59, + 4, 43, 55, 59, 5, 8, 17, 31, 32, 39, + 40, 41, 42, 43, 54, 56, 60, 61, 62, 94, + 95, 99, 92, 43, 25, 32, 43, 6, 4, 4, + 4, 43, 1, 14, 25, 4, 5, 8, 12, 18, 19, 20, 22, 26, 27, 28, 29, 30, 33, 34, - 38, 43, 54, 56, 68, 73, 74, 85, 87, 92, - 93, 99, 8, 43, 6, 25, 43, 70, 1, 43, - 96, 96, 5, 48, 97, 98, 9, 43, 74, 1, - 63, 74, 43, 83, 6, 66, 66, 6, 66, 37, - 43, 72, 80, 72, 82, 8, 8, 8, 6, 66, - 43, 6, 8, 11, 74, 7, 43, 69, 89, 8, - 9, 5, 92, 8, 70, 74, 7, 11, 12, 43, - 96, 8, 14, 5, 5, 13, 8, 1, 5, 97, - 57, 25, 63, 5, 63, 6, 8, 67, 4, 43, - 64, 65, 71, 10, 13, 43, 10, 11, 13, 8, - 10, 81, 8, 75, 74, 4, 86, 21, 79, 43, - 7, 10, 78, 7, 43, 43, 43, 96, 43, 65, - 8, 43, 74, 7, 84, 69, 35, 36, 37, 90, - 91, 43, 13, 7, 11, 72, 72, 72, 43, 72, + 38, 43, 54, 56, 68, 73, 74, 85, 87, 93, + 99, 8, 43, 6, 25, 43, 70, 1, 96, 96, + 5, 48, 97, 98, 9, 43, 74, 1, 63, 43, + 83, 6, 66, 66, 6, 66, 37, 43, 72, 80, + 72, 82, 8, 8, 8, 6, 66, 43, 6, 8, + 11, 74, 7, 43, 69, 89, 8, 9, 8, 70, + 74, 7, 11, 12, 43, 96, 5, 43, 5, 13, + 8, 1, 5, 97, 57, 25, 63, 5, 74, 6, + 8, 67, 4, 43, 64, 65, 71, 10, 13, 43, + 10, 11, 13, 8, 10, 81, 8, 75, 74, 4, + 86, 21, 79, 43, 7, 10, 78, 7, 43, 43, + 43, 8, 14, 65, 8, 43, 74, 7, 84, 69, + 90, 43, 13, 7, 11, 72, 72, 72, 43, 72, 43, 14, 43, 63, 74, 43, 88, 43, 43, 25, - 8, 8, 89, 7, 43, 43, 11, 5, 90, 43, + 43, 8, 89, 7, 5, 35, 36, 37, 91, 43, 43, 71, 71, 10, 13, 10, 13, 48, 8, 5, - 8, 25, 74, 96, 7, 11, 11, 63, 13, 11, - 72, 72, 72, 72, 76, 74, 63, 63, 71, 71, - 43, 13, 8, 71, 77, 43, 7, 74 + 8, 25, 74, 8, 7, 43, 43, 11, 13, 11, + 72, 72, 72, 72, 76, 74, 11, 11, 63, 71, + 71, 43, 63, 63, 13, 8, 71, 77, 43, 7, + 74 }; #define yyerrok (yyerrstatus = 0) @@ -1469,7 +1479,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) case 43: /* "word" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1473 "ael.tab.c" +#line 1483 "ael.tab.c" break; case 46: /* "objects" */ #line 170 "ael.y" @@ -1477,7 +1487,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1481 "ael.tab.c" +#line 1491 "ael.tab.c" break; case 47: /* "object" */ #line 170 "ael.y" @@ -1485,12 +1495,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1489 "ael.tab.c" +#line 1499 "ael.tab.c" break; case 48: /* "context_name" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1494 "ael.tab.c" +#line 1504 "ael.tab.c" break; case 49: /* "context" */ #line 170 "ael.y" @@ -1498,7 +1508,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1502 "ael.tab.c" +#line 1512 "ael.tab.c" break; case 51: /* "macro" */ #line 170 "ael.y" @@ -1506,7 +1516,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1510 "ael.tab.c" +#line 1520 "ael.tab.c" break; case 52: /* "globals" */ #line 170 "ael.y" @@ -1514,7 +1524,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1518 "ael.tab.c" +#line 1528 "ael.tab.c" break; case 53: /* "global_statements" */ #line 170 "ael.y" @@ -1522,7 +1532,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1526 "ael.tab.c" +#line 1536 "ael.tab.c" break; case 54: /* "assignment" */ #line 170 "ael.y" @@ -1530,7 +1540,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1534 "ael.tab.c" +#line 1544 "ael.tab.c" break; case 56: /* "local_assignment" */ #line 170 "ael.y" @@ -1538,7 +1548,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1542 "ael.tab.c" +#line 1552 "ael.tab.c" break; case 58: /* "arglist" */ #line 170 "ael.y" @@ -1546,7 +1556,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1550 "ael.tab.c" +#line 1560 "ael.tab.c" break; case 59: /* "elements" */ #line 170 "ael.y" @@ -1554,7 +1564,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1558 "ael.tab.c" +#line 1568 "ael.tab.c" break; case 60: /* "element" */ #line 170 "ael.y" @@ -1562,7 +1572,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1566 "ael.tab.c" +#line 1576 "ael.tab.c" break; case 61: /* "ignorepat" */ #line 170 "ael.y" @@ -1570,7 +1580,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1574 "ael.tab.c" +#line 1584 "ael.tab.c" break; case 62: /* "extension" */ #line 170 "ael.y" @@ -1578,7 +1588,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1582 "ael.tab.c" +#line 1592 "ael.tab.c" break; case 63: /* "statements" */ #line 170 "ael.y" @@ -1586,12 +1596,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1590 "ael.tab.c" +#line 1600 "ael.tab.c" break; case 64: /* "timerange" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1595 "ael.tab.c" +#line 1605 "ael.tab.c" break; case 65: /* "timespec" */ #line 170 "ael.y" @@ -1599,12 +1609,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1603 "ael.tab.c" +#line 1613 "ael.tab.c" break; case 66: /* "test_expr" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1608 "ael.tab.c" +#line 1618 "ael.tab.c" break; case 68: /* "if_like_head" */ #line 170 "ael.y" @@ -1612,22 +1622,22 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1616 "ael.tab.c" +#line 1626 "ael.tab.c" break; case 69: /* "word_list" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1621 "ael.tab.c" +#line 1631 "ael.tab.c" break; case 71: /* "word3_list" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1626 "ael.tab.c" +#line 1636 "ael.tab.c" break; case 72: /* "goto_word" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1631 "ael.tab.c" +#line 1641 "ael.tab.c" break; case 73: /* "switch_statement" */ #line 170 "ael.y" @@ -1635,7 +1645,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1639 "ael.tab.c" +#line 1649 "ael.tab.c" break; case 74: /* "statement" */ #line 170 "ael.y" @@ -1643,7 +1653,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1647 "ael.tab.c" +#line 1657 "ael.tab.c" break; case 79: /* "opt_else" */ #line 170 "ael.y" @@ -1651,7 +1661,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1655 "ael.tab.c" +#line 1665 "ael.tab.c" break; case 80: /* "target" */ #line 170 "ael.y" @@ -1659,12 +1669,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1663 "ael.tab.c" +#line 1673 "ael.tab.c" break; case 81: /* "opt_pri" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1668 "ael.tab.c" +#line 1678 "ael.tab.c" break; case 82: /* "jumptarget" */ #line 170 "ael.y" @@ -1672,7 +1682,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1676 "ael.tab.c" +#line 1686 "ael.tab.c" break; case 83: /* "macro_call" */ #line 170 "ael.y" @@ -1680,7 +1690,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1684 "ael.tab.c" +#line 1694 "ael.tab.c" break; case 85: /* "application_call_head" */ #line 170 "ael.y" @@ -1688,7 +1698,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1692 "ael.tab.c" +#line 1702 "ael.tab.c" break; case 87: /* "application_call" */ #line 170 "ael.y" @@ -1696,12 +1706,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1700 "ael.tab.c" +#line 1710 "ael.tab.c" break; case 88: /* "opt_word" */ #line 183 "ael.y" { free((yyvaluep->str));}; -#line 1705 "ael.tab.c" +#line 1715 "ael.tab.c" break; case 89: /* "eval_arglist" */ #line 170 "ael.y" @@ -1709,7 +1719,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1713 "ael.tab.c" +#line 1723 "ael.tab.c" break; case 90: /* "case_statements" */ #line 170 "ael.y" @@ -1717,7 +1727,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1721 "ael.tab.c" +#line 1731 "ael.tab.c" break; case 91: /* "case_statement" */ #line 170 "ael.y" @@ -1725,7 +1735,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1729 "ael.tab.c" +#line 1739 "ael.tab.c" break; case 92: /* "macro_statements" */ #line 170 "ael.y" @@ -1733,7 +1743,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1737 "ael.tab.c" +#line 1747 "ael.tab.c" break; case 93: /* "macro_statement" */ #line 170 "ael.y" @@ -1741,7 +1751,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1745 "ael.tab.c" +#line 1755 "ael.tab.c" break; case 94: /* "switches" */ #line 170 "ael.y" @@ -1749,7 +1759,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1753 "ael.tab.c" +#line 1763 "ael.tab.c" break; case 95: /* "eswitches" */ #line 170 "ael.y" @@ -1757,7 +1767,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1761 "ael.tab.c" +#line 1771 "ael.tab.c" break; case 96: /* "switchlist" */ #line 170 "ael.y" @@ -1765,7 +1775,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1769 "ael.tab.c" +#line 1779 "ael.tab.c" break; case 97: /* "included_entry" */ #line 170 "ael.y" @@ -1773,7 +1783,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1777 "ael.tab.c" +#line 1787 "ael.tab.c" break; case 98: /* "includeslist" */ #line 170 "ael.y" @@ -1781,7 +1791,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1785 "ael.tab.c" +#line 1795 "ael.tab.c" break; case 99: /* "includes" */ #line 170 "ael.y" @@ -1789,7 +1799,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1793 "ael.tab.c" +#line 1803 "ael.tab.c" break; default: @@ -3013,20 +3023,20 @@ yyreduce: case 133: #line 665 "ael.y" - { (yyval.pval) = linku1(nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])), (yyvsp[(3) - (3)].pval)); ;} + { (yyval.pval) = linku1((yyvsp[(1) - (3)].pval),nword((yyvsp[(2) - (3)].str), &(yylsp[(2) - (3)]))); ;} break; case 134: #line 666 "ael.y" { char *x; - if (asprintf(&x,"%s@%s", (yyvsp[(1) - (5)].str), (yyvsp[(3) - (5)].str)) < 0) { + if (asprintf(&x,"%s@%s", (yyvsp[(2) - (5)].str), (yyvsp[(4) - (5)].str)) < 0) { ast_log(LOG_WARNING, "asprintf() failed\n"); (yyval.pval) = NULL; } else { - free((yyvsp[(1) - (5)].str)); - free((yyvsp[(3) - (5)].str)); - (yyval.pval) = linku1(nword(x, &(yylsp[(1) - (5)])), (yyvsp[(5) - (5)].pval)); + free((yyvsp[(2) - (5)].str)); + free((yyvsp[(4) - (5)].str)); + (yyval.pval) = linku1((yyvsp[(1) - (5)].pval),nword(x, &(yylsp[(2) - (5)]))); } ;} break; @@ -3079,7 +3089,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 3083 "ael.tab.c" +#line 3093 "ael.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); diff --git a/res/ael/ael.y b/res/ael/ael.y index d16d20dffb97ccc2bf9a20d849cca55ef160739a..f8398dd2e521eacd392f634bc6b12fd3eff6ed53 100644 --- a/res/ael/ael.y +++ b/res/ael/ael.y @@ -159,7 +159,7 @@ static pval *update_last(pval *, YYLTYPE *); /* there will be two shift/reduce conflicts, they involve the if statement, where a single statement occurs not wrapped in curlies in the "true" section the default action to shift will attach the else to the preceeding if. */ -%expect 3 +%expect 30 %error-verbose /* @@ -235,7 +235,7 @@ globals : KW_GLOBALS LC global_statements RC { ; global_statements : { $$ = NULL; } - | assignment global_statements {$$ = linku1($1, $2); } + | global_statements assignment {$$ = linku1($1, $2); } | error global_statements {$$=$2;} ; @@ -259,7 +259,7 @@ arglist : /* empty */ { $$ = NULL; } ; elements : {$$=0;} - | element elements { $$ = linku1($1, $2); } + | elements element { $$ = linku1($1, $2); } | error elements { $$=$2;} ; @@ -311,7 +311,7 @@ extension : word EXTENMARK statement { /* list of statements in a block or after a case label - can be empty */ statements : /* empty */ { $$ = NULL; } - | statement statements { $$ = linku1($1, $2); } + | statements statement { $$ = linku1($1, $2); } | error statements {$$=$2;} ; @@ -622,7 +622,7 @@ eval_arglist : word_list { $$ = nword($1, &@1); } ; case_statements: /* empty */ { $$ = NULL; } - | case_statement case_statements { $$ = linku1($1, $2); } + | case_statements case_statement { $$ = linku1($1, $2); } ; case_statement: KW_CASE word COLON statements { @@ -640,7 +640,7 @@ case_statement: KW_CASE word COLON statements { ; macro_statements: /* empty */ { $$ = NULL; } - | macro_statement macro_statements { $$ = linku1($1, $2); } + | macro_statements macro_statement { $$ = linku1($1, $2); } ; macro_statement : statement {$$=$1;} @@ -662,16 +662,16 @@ eswitches : KW_ESWITCHES LC switchlist RC { ; switchlist : /* empty */ { $$ = NULL; } - | word SEMI switchlist { $$ = linku1(nword($1, &@1), $3); } - | word AT word SEMI switchlist { + | switchlist word SEMI { $$ = linku1($1,nword($2, &@2)); } + | switchlist word AT word SEMI { char *x; - if (asprintf(&x,"%s@%s", $1, $3) < 0) { + if (asprintf(&x,"%s@%s", $2, $4) < 0) { ast_log(LOG_WARNING, "asprintf() failed\n"); $$ = NULL; } else { - free($1); - free($3); - $$ = linku1(nword(x, &@1), $5); + free($2); + free($4); + $$ = linku1($1,nword(x, &@2)); } } | error switchlist {$$=$2;}