diff options
Diffstat (limited to 'pbx')
-rw-r--r-- | pbx/ael/ael.tab.c | 421 | ||||
-rw-r--r-- | pbx/ael/ael.y | 24 |
2 files changed, 225 insertions, 220 deletions
diff --git a/pbx/ael/ael.tab.c b/pbx/ael/ael.tab.c index 189537017..44ca3f2a9 100644 --- a/pbx/ael/ael.tab.c +++ b/pbx/ael/ael.tab.c @@ -506,7 +506,7 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 17 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 311 +#define YYLAST 350 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 43 @@ -515,7 +515,7 @@ union yyalloc /* YYNRULES -- Number of rules. */ #define YYNRULES 137 /* YYNRULES -- Number of states. */ -#define YYNSTATES 276 +#define YYNSTATES 269 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -588,15 +588,15 @@ static const yytype_int8 yyrhs[] = -1, 42, -1, 37, -1, 49, 3, 47, 4, 56, 5, -1, 23, -1, -1, 24, -1, 24, 23, -1, 23, 24, -1, 15, 42, 6, 55, 7, 4, 89, - 5, -1, 16, 4, 52, 5, -1, -1, 53, 52, + 5, -1, 16, 4, 52, 5, -1, -1, 52, 53, -1, 1, 52, -1, -1, 42, 9, 54, 42, 8, -1, -1, 42, -1, 55, 10, 42, -1, 55, 1, - -1, -1, 57, 56, -1, 1, 56, -1, 59, -1, + -1, -1, 56, 57, -1, 1, 56, -1, 59, -1, 96, -1, 91, -1, 92, -1, 58, -1, 53, -1, 42, 1, -1, 8, -1, 17, 25, 42, 8, -1, 42, 25, 71, -1, 31, 42, 25, 71, -1, 32, 6, 67, 7, 42, 25, 71, -1, 31, 32, 6, - 67, 7, 42, 25, 71, -1, -1, 71, 60, -1, + 67, 7, 42, 25, 71, -1, -1, 60, 71, -1, 1, 60, -1, 68, 11, 68, 11, 68, -1, 42, -1, 61, 13, 68, 13, 68, 13, 68, -1, -1, 6, 64, 66, 7, -1, 19, 63, -1, 22, 63, @@ -620,12 +620,12 @@ static const yytype_int8 yyrhs[] = 42, 6, 81, 86, 7, -1, 42, 6, 7, -1, -1, 42, 6, 83, -1, 82, 86, 7, -1, 82, 7, -1, 42, -1, -1, 66, -1, -1, 86, 10, - 85, -1, -1, 88, 87, -1, 35, 42, 11, 60, + 85, -1, -1, 87, 88, -1, 35, 42, 11, 60, -1, 37, 11, 60, -1, 36, 42, 11, 60, -1, - -1, 90, 89, -1, 71, -1, 96, -1, 38, 42, + -1, 89, 90, -1, 71, -1, 96, -1, 38, 42, 4, 60, 5, -1, 39, 4, 93, 5, -1, 40, - 4, 93, 5, -1, -1, 42, 8, 93, -1, 42, - 14, 42, 8, 93, -1, 1, 93, -1, 47, -1, + 4, 93, 5, -1, -1, 93, 42, 8, -1, 93, + 42, 14, 42, 8, -1, 1, 93, -1, 47, -1, 47, 13, 62, -1, 94, 8, -1, 95, 94, 8, -1, 95, 1, -1, 41, 4, 95, 5, -1, 41, 4, 5, -1 @@ -735,89 +735,87 @@ 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, 25, 0, 0, 0, 0, 11, 10, 0, 26, - 0, 22, 23, 19, 21, 0, 28, 0, 0, 0, - 0, 39, 0, 0, 0, 0, 0, 0, 0, 37, - 0, 0, 36, 32, 34, 35, 33, 120, 27, 0, - 31, 0, 0, 0, 0, 0, 0, 0, 38, 0, - 12, 30, 0, 89, 0, 0, 0, 0, 0, 0, + 0, 25, 0, 0, 11, 10, 0, 26, 0, 22, + 19, 0, 21, 0, 28, 0, 0, 23, 0, 0, + 120, 27, 0, 31, 12, 39, 0, 0, 0, 0, + 0, 0, 0, 37, 30, 36, 32, 34, 35, 33, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, + 0, 0, 18, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 0, - 79, 122, 113, 0, 0, 120, 123, 24, 0, 0, - 0, 58, 0, 0, 0, 0, 0, 137, 131, 0, - 0, 41, 0, 0, 0, 0, 0, 51, 0, 53, - 0, 54, 0, 65, 92, 0, 99, 0, 86, 85, - 87, 74, 0, 0, 106, 82, 73, 91, 109, 56, - 112, 0, 81, 83, 18, 121, 40, 0, 42, 0, - 0, 0, 59, 130, 0, 0, 125, 126, 0, 133, - 135, 136, 0, 47, 69, 46, 103, 80, 0, 115, - 49, 0, 0, 0, 0, 0, 66, 0, 0, 0, - 71, 0, 101, 72, 0, 78, 0, 107, 0, 88, - 57, 108, 111, 0, 0, 0, 60, 61, 128, 0, - 132, 134, 105, 113, 0, 0, 0, 0, 0, 115, + 79, 122, 113, 0, 121, 123, 24, 0, 0, 0, + 58, 0, 0, 0, 0, 137, 131, 0, 0, 41, + 0, 0, 0, 0, 51, 0, 53, 0, 54, 0, + 65, 92, 0, 99, 0, 86, 85, 87, 74, 0, + 0, 106, 82, 73, 91, 109, 56, 112, 0, 81, + 83, 40, 0, 42, 0, 0, 0, 59, 130, 125, + 0, 126, 0, 133, 135, 136, 0, 47, 69, 46, + 103, 80, 0, 115, 49, 0, 0, 0, 0, 0, + 66, 0, 0, 0, 71, 0, 101, 72, 0, 78, + 0, 107, 0, 88, 57, 108, 111, 0, 0, 0, + 60, 61, 128, 0, 132, 134, 105, 113, 0, 0, 63, 0, 55, 0, 0, 0, 94, 67, 93, 100, 0, 0, 0, 90, 110, 114, 0, 0, 0, 0, - 0, 52, 0, 0, 0, 68, 116, 64, 62, 0, + 0, 52, 68, 0, 0, 0, 116, 64, 62, 0, 0, 0, 0, 0, 0, 102, 75, 124, 84, 0, - 43, 129, 104, 0, 0, 118, 0, 0, 98, 97, - 96, 95, 0, 44, 117, 119, 0, 48, 0, 0, - 76, 50, 0, 0, 0, 77 + 43, 129, 104, 0, 0, 0, 0, 0, 98, 97, + 96, 95, 0, 44, 0, 0, 118, 0, 48, 0, + 117, 119, 0, 76, 50, 0, 0, 0, 77 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 6, 7, 8, 108, 9, 10, 11, 12, 24, - 88, 39, 30, 50, 51, 52, 53, 113, 171, 172, - 118, 168, 89, 140, 102, 173, 124, 90, 114, 184, - 262, 272, 193, 189, 125, 182, 127, 116, 203, 92, - 187, 93, 225, 141, 208, 209, 94, 95, 54, 55, - 105, 109, 110, 56 + -1, 6, 7, 8, 106, 9, 10, 11, 12, 23, + 88, 42, 28, 39, 54, 55, 56, 111, 165, 166, + 115, 162, 89, 137, 101, 167, 121, 90, 159, 178, + 252, 265, 187, 183, 122, 176, 124, 113, 197, 92, + 181, 93, 215, 138, 199, 226, 60, 94, 57, 58, + 103, 107, 108, 59 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -206 +#define YYPACT_NINF -198 static const yytype_int16 yypact[] = { - 65, -206, 2, 64, -1, 70, 84, 231, -206, -206, - 108, -206, -206, 120, 13, -206, -206, -206, -206, -206, - 29, 88, 13, 130, 163, 13, -206, -206, 165, -206, - 75, -206, -206, -206, -206, 8, -206, 171, 134, 136, - 8, -206, 154, -22, 178, 182, 186, 189, 61, -206, - 200, 8, -206, -206, -206, -206, -206, 169, -206, 198, - -206, 152, 203, 187, 177, 14, 14, 23, -206, 196, - -206, -206, 128, -206, 179, 207, 207, 214, 207, 58, - 185, 220, 225, 227, 230, 207, 195, 174, -206, 196, - -206, -206, 17, 94, 235, 169, -206, -206, 233, 177, - 196, -206, 19, 14, 55, 237, 238, -206, 232, 236, - 16, -206, 86, 243, 86, 244, 241, -206, 247, -206, - 210, -206, 97, 211, 24, 248, 107, 249, -206, -206, - -206, -206, 196, 254, -206, -206, -206, 239, -206, 217, - -206, 117, -206, -206, -206, -206, -206, 67, -206, 219, - 221, 222, -206, -206, 14, 223, -206, -206, 210, -206, - -206, -206, 258, -206, -206, -206, 255, -206, 226, 106, - 0, 256, 260, 259, 185, 185, -206, 185, 229, 185, - -206, 234, 261, -206, 240, -206, 128, -206, 196, -206, - -206, -206, 242, 245, 246, 252, -206, -206, -206, 264, - -206, -206, -206, 226, 266, 250, 251, 263, 273, 106, - 253, 257, -206, 257, 142, 138, 149, -206, 161, -206, - 29, 271, 275, -206, -206, -206, 277, 265, 196, 14, - 127, -206, 270, 272, 86, -206, -206, -206, 262, 276, - 280, 185, 185, 185, 185, -206, -206, -206, -206, 196, - -206, -206, -206, 86, 86, -206, 257, 257, 283, 283, - 283, 283, 267, -206, -206, -206, 284, -206, 278, 257, - -206, -206, 268, 289, 196, -206 + 169, -198, -27, 112, 77, 106, 140, 303, -198, -198, + 142, -198, -198, 114, 16, -198, -198, -198, -198, -198, + 38, 94, 16, 0, -198, -198, 166, -198, 71, 115, + -198, 165, -198, 120, -198, 171, 147, -198, 120, 92, + -198, -198, 157, 260, -198, -198, 175, -14, 172, 178, + 199, 207, 73, -198, -198, -198, -198, -198, -198, -198, + 168, 206, 174, 211, 196, 181, 26, 26, 20, -198, + 254, 84, -198, -198, 182, 219, 219, 230, 219, 42, + 195, 232, 233, 235, 238, 219, 208, 133, -198, 254, + -198, -198, 25, 78, -198, -198, -198, 240, 181, 254, + -198, 1, 26, 28, 29, -198, 225, 243, 19, -198, + 18, 200, 246, 251, -198, 259, -198, 222, -198, 117, + 223, 158, 262, 97, 263, -198, -198, -198, -198, 254, + 271, -198, -198, -198, 257, -198, 237, -198, 4, -198, + -198, -198, 52, -198, 244, 247, 248, -198, 252, -198, + 69, -198, 222, -198, -198, -198, 277, 254, -198, -198, + 286, -198, 253, -198, 24, 284, 291, 256, 195, 195, + -198, 195, 265, 195, -198, 266, 295, -198, 268, -198, + 84, -198, 254, -198, -198, -198, 270, 272, 273, 280, + -198, -198, -198, 274, -198, -198, -198, 253, 306, 130, + 275, 278, -198, 278, 139, 170, 153, -198, 202, -198, + 38, 313, 227, -198, -198, -198, 314, 298, 254, 316, + 136, -198, -198, 283, 287, 317, -198, -198, 288, 318, + 321, 195, 195, 195, 195, -198, -198, -198, -198, 254, + -198, -198, -198, 322, 323, 18, 278, 278, 324, 324, + 324, 324, 294, -198, 18, 18, 254, 325, -198, 329, + 254, 254, 278, -198, -198, 297, 333, 254, -198 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -206, -206, -206, 291, -19, -206, -206, -206, -206, 113, - 32, -206, -206, -18, -206, -206, -206, -109, -206, 143, - -49, -206, -206, 132, 204, -205, -78, -206, -57, -206, - -206, -206, -206, -206, -206, -206, -206, -206, -206, -206, - -206, -206, -206, 99, 96, -206, 212, -206, -206, -206, - -62, 201, -206, -50 + -198, -198, -198, 334, -19, -198, -198, -198, -198, 320, + 76, -198, -198, 305, -198, -198, -198, -107, -198, 192, + -69, -198, -198, 183, 249, -197, -78, -198, -60, -198, + -198, -198, -198, -198, -198, -198, -198, -198, -198, -198, + -198, -198, -198, 149, -198, -198, -198, -198, -198, -198, + -26, 241, -198, 290 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -827,74 +825,82 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -128 static const yytype_int16 yytable[] = { - 91, 28, 126, 163, 106, 165, 239, 96, 240, 40, - 62, -62, 111, -29, 22, 103, 41, 160, -20, -127, - 63, 161, 60, 15, 138, 42, 149, 119, 107, 121, - 150, 151, 137, 71, 177, 178, 132, 179, 91, 43, - 44, 153, 210, 148, 13, 96, 25, 45, 46, 47, - 48, 266, 267, 26, 25, 23, 104, 25, 27, 139, - 26, 152, 68, 154, 271, 27, 26, 49, 14, 155, - 32, 27, 49, 1, 194, 185, 36, 222, 150, 151, - 2, 3, 37, 49, 17, 38, 69, 112, 4, 5, - 72, -45, 198, 16, 73, 122, 214, 215, 74, 216, - 123, 218, 142, 143, 75, 76, 77, 174, 78, 152, - 175, 20, 79, 80, 81, 82, 83, 181, 178, 84, - 85, -45, -45, -45, 191, 255, 21, 192, 87, 112, - 29, 223, 72, -45, 252, 31, 73, 192, 34, 32, - 74, 205, 206, 207, 264, 265, 75, 76, 77, 178, - 78, 242, 241, 178, 79, 80, 81, 82, 83, 243, - 178, 84, 85, 258, 259, 260, 261, 251, 33, 35, - 87, 250, 178, 72, 244, 57, 58, 73, 59, 61, - 134, 74, 135, 32, 64, 136, 65, 75, 76, 77, - 66, 78, 263, 67, 98, 79, 80, 81, 82, 83, - 72, 245, 84, 85, 73, 70, 97, 86, 74, 99, - 47, 87, 100, 117, 75, 76, 77, 275, 78, 101, - 120, 115, 79, 80, 81, 82, 83, 123, 128, 84, - 85, -2, 18, 129, -14, 130, 131, 133, 87, 1, - 144, 146, 156, 157, 159, 158, 2, 3, 164, 167, - 166, 169, 170, 176, 4, 5, 180, 183, 186, 190, - 188, 195, 202, 196, 197, 199, 201, 212, 139, 211, - 213, 217, 229, 231, 234, 220, 219, 228, 235, 246, - 247, 253, 221, 254, 224, 248, 270, 226, 227, 256, - 249, 257, 232, 233, 178, 237, 274, 269, 19, 238, - 204, 200, 230, 147, 210, 236, 0, 145, 0, 268, - 273, 162 + 91, 26, 123, 157, 229, 30, 230, 116, 144, 118, + 109, 185, 145, 146, 186, 13, 129, 22, 63, 110, + 154, -20, -45, -45, 155, 105, -45, 102, 64, 134, + -45, -127, 135, 149, 151, -62, -45, -45, -45, 143, + -45, 104, 31, 147, -45, -45, -45, -45, -45, 257, + 258, -45, -45, -45, -45, -45, 24, 24, -20, 188, + -45, 25, 25, 145, 146, 264, 200, 136, -127, 179, + 150, 150, 34, 212, 69, 24, 148, 192, 35, 119, + 25, 36, 37, 193, 120, 110, 139, 140, -45, -45, + 204, 205, -45, 206, 147, 208, -45, 44, 70, 32, + 45, 15, -45, -45, -45, 32, -45, 175, 172, 46, + -45, -45, -45, -45, -45, 53, 14, -45, -45, 53, + 21, 38, 213, 47, 48, -29, -45, 168, -29, 16, + 169, 49, 50, 51, 52, 222, 27, -29, 256, 131, + 17, 132, 37, 242, 133, 20, 186, 260, 261, 231, + 172, -29, -29, 248, 249, 250, 251, 31, 240, -29, + -29, -29, -29, 233, 172, 223, 224, 225, 171, 172, + 33, 173, 71, 72, 37, 40, 73, 1, 65, 253, + 74, 172, 66, 232, 2, 3, 75, 76, 77, 41, + 78, 235, 4, 5, 79, 80, 81, 82, 83, 61, + 62, 84, 85, 67, 71, 158, 86, 268, 73, 51, + 87, 68, 74, 172, 96, 234, 97, 98, 75, 76, + 77, 99, 78, 100, 112, 114, 79, 80, 81, 82, + 83, 71, 237, 84, 85, 73, 117, 120, 152, 74, + 125, 126, 87, 127, 128, 75, 76, 77, 141, 78, + 130, 153, 160, 79, 80, 81, 82, 83, 71, 161, + 84, 85, 73, 163, 164, 170, 74, 203, 45, 87, + 174, 177, 75, 76, 77, 180, 78, 46, 182, 184, + 79, 80, 81, 82, 83, 195, 189, 84, 85, 190, + 191, 47, 48, 196, 150, 136, 87, 201, 202, 49, + 50, 51, 52, -2, 18, 218, -14, 207, 209, 210, + 211, 1, 214, 221, 216, 217, 219, 227, 2, 3, + 228, 236, 238, 239, 241, 243, 4, 5, 245, 244, + 200, 246, 247, 254, 255, 172, 259, 263, 262, 266, + 267, 19, 29, 43, 194, 198, 220, 142, 0, 156, + 95 }; static const yytype_int16 yycheck[] = { - 57, 20, 80, 112, 66, 114, 211, 57, 213, 1, - 32, 11, 69, 5, 1, 1, 8, 1, 5, 5, - 42, 5, 40, 24, 7, 17, 7, 76, 5, 78, - 11, 12, 89, 51, 10, 11, 85, 13, 95, 31, - 32, 103, 42, 100, 42, 95, 14, 39, 40, 41, - 42, 256, 257, 37, 22, 42, 42, 25, 42, 42, - 37, 42, 1, 8, 269, 42, 37, 35, 4, 14, - 9, 42, 40, 8, 7, 132, 1, 186, 11, 12, - 15, 16, 7, 51, 0, 10, 25, 1, 23, 24, - 4, 5, 154, 23, 8, 37, 174, 175, 12, 177, - 42, 179, 8, 9, 18, 19, 20, 10, 22, 42, - 13, 3, 26, 27, 28, 29, 30, 10, 11, 33, - 34, 35, 36, 37, 7, 234, 6, 10, 42, 1, - 42, 188, 4, 5, 7, 22, 8, 10, 25, 9, - 12, 35, 36, 37, 253, 254, 18, 19, 20, 11, - 22, 13, 10, 11, 26, 27, 28, 29, 30, 10, - 11, 33, 34, 241, 242, 243, 244, 229, 5, 4, - 42, 228, 11, 4, 13, 4, 42, 8, 42, 25, - 6, 12, 8, 9, 6, 11, 4, 18, 19, 20, - 4, 22, 249, 4, 42, 26, 27, 28, 29, 30, - 4, 220, 33, 34, 8, 5, 8, 38, 12, 6, - 41, 42, 25, 6, 18, 19, 20, 274, 22, 42, - 6, 42, 26, 27, 28, 29, 30, 42, 8, 33, - 34, 0, 1, 8, 3, 8, 6, 42, 42, 8, - 5, 8, 5, 5, 8, 13, 15, 16, 5, 8, - 6, 4, 42, 42, 23, 24, 8, 8, 4, 42, - 21, 42, 7, 42, 42, 42, 8, 7, 42, 13, - 11, 42, 8, 7, 11, 14, 42, 25, 5, 8, - 5, 11, 42, 11, 42, 8, 8, 42, 42, 13, - 25, 11, 42, 42, 11, 42, 7, 13, 7, 42, - 168, 158, 203, 99, 42, 209, -1, 95, -1, 42, - 42, 110 + 60, 20, 80, 110, 201, 5, 203, 76, 7, 78, + 70, 7, 11, 12, 10, 42, 85, 1, 32, 1, + 1, 5, 4, 5, 5, 5, 8, 1, 42, 89, + 12, 5, 7, 5, 5, 11, 18, 19, 20, 99, + 22, 67, 42, 42, 26, 27, 28, 29, 30, 246, + 247, 33, 34, 35, 36, 37, 37, 37, 42, 7, + 42, 42, 42, 11, 12, 262, 42, 42, 42, 129, + 42, 42, 1, 180, 1, 37, 102, 8, 7, 37, + 42, 10, 9, 14, 42, 1, 8, 9, 4, 5, + 168, 169, 8, 171, 42, 173, 12, 5, 25, 23, + 8, 24, 18, 19, 20, 29, 22, 10, 11, 17, + 26, 27, 28, 29, 30, 39, 4, 33, 34, 43, + 6, 1, 182, 31, 32, 5, 42, 10, 8, 23, + 13, 39, 40, 41, 42, 5, 42, 17, 245, 6, + 0, 8, 9, 7, 11, 3, 10, 254, 255, 10, + 11, 31, 32, 231, 232, 233, 234, 42, 218, 39, + 40, 41, 42, 10, 11, 35, 36, 37, 10, 11, + 4, 13, 4, 5, 9, 4, 8, 8, 6, 239, + 12, 11, 4, 13, 15, 16, 18, 19, 20, 42, + 22, 210, 23, 24, 26, 27, 28, 29, 30, 42, + 25, 33, 34, 4, 4, 5, 38, 267, 8, 41, + 42, 4, 12, 11, 8, 13, 42, 6, 18, 19, + 20, 25, 22, 42, 42, 6, 26, 27, 28, 29, + 30, 4, 5, 33, 34, 8, 6, 42, 13, 12, + 8, 8, 42, 8, 6, 18, 19, 20, 8, 22, + 42, 8, 6, 26, 27, 28, 29, 30, 4, 8, + 33, 34, 8, 4, 42, 42, 12, 11, 8, 42, + 8, 8, 18, 19, 20, 4, 22, 17, 21, 42, + 26, 27, 28, 29, 30, 8, 42, 33, 34, 42, + 42, 31, 32, 7, 42, 42, 42, 13, 7, 39, + 40, 41, 42, 0, 1, 25, 3, 42, 42, 14, + 42, 8, 42, 7, 42, 42, 42, 42, 15, 16, + 42, 8, 8, 25, 8, 42, 23, 24, 11, 42, + 42, 13, 11, 11, 11, 11, 42, 8, 13, 42, + 7, 7, 22, 38, 152, 162, 197, 98, -1, 108, + 60 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -903,32 +909,31 @@ static const yytype_uint8 yystos[] = { 0, 8, 15, 16, 23, 24, 44, 45, 46, 48, 49, 50, 51, 42, 4, 24, 23, 0, 1, 46, - 3, 6, 1, 42, 52, 53, 37, 42, 47, 42, - 55, 52, 9, 5, 52, 4, 1, 7, 10, 54, - 1, 8, 17, 31, 32, 39, 40, 41, 42, 53, - 56, 57, 58, 59, 91, 92, 96, 4, 42, 42, - 56, 25, 32, 42, 6, 4, 4, 4, 1, 25, - 5, 56, 4, 8, 12, 18, 19, 20, 22, 26, + 3, 6, 1, 52, 37, 42, 47, 42, 55, 52, + 5, 42, 53, 4, 1, 7, 10, 9, 1, 56, + 4, 42, 54, 56, 5, 8, 17, 31, 32, 39, + 40, 41, 42, 53, 57, 58, 59, 91, 92, 96, + 89, 42, 25, 32, 42, 6, 4, 4, 4, 1, + 25, 4, 5, 8, 12, 18, 19, 20, 22, 26, 27, 28, 29, 30, 33, 34, 38, 42, 53, 65, - 70, 71, 82, 84, 89, 90, 96, 8, 42, 6, - 25, 42, 67, 1, 42, 93, 93, 5, 47, 94, - 95, 71, 1, 60, 71, 42, 80, 6, 63, 63, - 6, 63, 37, 42, 69, 77, 69, 79, 8, 8, - 8, 6, 63, 42, 6, 8, 11, 71, 7, 42, - 66, 86, 8, 9, 5, 89, 8, 67, 71, 7, - 11, 12, 42, 93, 8, 14, 5, 5, 13, 8, - 1, 5, 94, 60, 5, 60, 6, 8, 64, 4, - 42, 61, 62, 68, 10, 13, 42, 10, 11, 13, - 8, 10, 78, 8, 72, 71, 4, 83, 21, 76, - 42, 7, 10, 75, 7, 42, 42, 42, 93, 42, - 62, 8, 7, 81, 66, 35, 36, 37, 87, 88, + 70, 71, 82, 84, 90, 96, 8, 42, 6, 25, + 42, 67, 1, 93, 93, 5, 47, 94, 95, 71, + 1, 60, 42, 80, 6, 63, 63, 6, 63, 37, + 42, 69, 77, 69, 79, 8, 8, 8, 6, 63, + 42, 6, 8, 11, 71, 7, 42, 66, 86, 8, + 9, 8, 67, 71, 7, 11, 12, 42, 93, 5, + 42, 5, 13, 8, 1, 5, 94, 60, 5, 71, + 6, 8, 64, 4, 42, 61, 62, 68, 10, 13, + 42, 10, 11, 13, 8, 10, 78, 8, 72, 71, + 4, 83, 21, 76, 42, 7, 10, 75, 7, 42, + 42, 42, 8, 14, 62, 8, 7, 81, 66, 87, 42, 13, 7, 11, 69, 69, 69, 42, 69, 42, - 14, 42, 60, 71, 42, 85, 42, 42, 25, 8, - 86, 7, 42, 42, 11, 5, 87, 42, 42, 68, + 14, 42, 60, 71, 42, 85, 42, 42, 25, 42, + 86, 7, 5, 35, 36, 37, 88, 42, 42, 68, 68, 10, 13, 10, 13, 47, 8, 5, 8, 25, - 71, 93, 7, 11, 11, 60, 13, 11, 69, 69, - 69, 69, 73, 71, 60, 60, 68, 68, 42, 13, - 8, 68, 74, 42, 7, 71 + 71, 8, 7, 42, 42, 11, 13, 11, 69, 69, + 69, 69, 73, 71, 11, 11, 60, 68, 68, 42, + 60, 60, 13, 8, 68, 74, 42, 7, 71 }; #define yyerrok (yyerrstatus = 0) @@ -1453,7 +1458,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) case 42: /* "word" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1457 "ael.tab.c" +#line 1462 "ael.tab.c" break; case 45: /* "objects" */ #line 166 "ael.y" @@ -1461,7 +1466,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1465 "ael.tab.c" +#line 1470 "ael.tab.c" break; case 46: /* "object" */ #line 166 "ael.y" @@ -1469,12 +1474,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1473 "ael.tab.c" +#line 1478 "ael.tab.c" break; case 47: /* "context_name" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1478 "ael.tab.c" +#line 1483 "ael.tab.c" break; case 48: /* "context" */ #line 166 "ael.y" @@ -1482,7 +1487,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1486 "ael.tab.c" +#line 1491 "ael.tab.c" break; case 50: /* "macro" */ #line 166 "ael.y" @@ -1490,7 +1495,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1494 "ael.tab.c" +#line 1499 "ael.tab.c" break; case 51: /* "globals" */ #line 166 "ael.y" @@ -1498,7 +1503,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1502 "ael.tab.c" +#line 1507 "ael.tab.c" break; case 52: /* "global_statements" */ #line 166 "ael.y" @@ -1506,7 +1511,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1510 "ael.tab.c" +#line 1515 "ael.tab.c" break; case 53: /* "assignment" */ #line 166 "ael.y" @@ -1514,7 +1519,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1518 "ael.tab.c" +#line 1523 "ael.tab.c" break; case 55: /* "arglist" */ #line 166 "ael.y" @@ -1522,7 +1527,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1526 "ael.tab.c" +#line 1531 "ael.tab.c" break; case 56: /* "elements" */ #line 166 "ael.y" @@ -1530,7 +1535,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1534 "ael.tab.c" +#line 1539 "ael.tab.c" break; case 57: /* "element" */ #line 166 "ael.y" @@ -1538,7 +1543,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1542 "ael.tab.c" +#line 1547 "ael.tab.c" break; case 58: /* "ignorepat" */ #line 166 "ael.y" @@ -1546,7 +1551,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1550 "ael.tab.c" +#line 1555 "ael.tab.c" break; case 59: /* "extension" */ #line 166 "ael.y" @@ -1554,7 +1559,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1558 "ael.tab.c" +#line 1563 "ael.tab.c" break; case 60: /* "statements" */ #line 166 "ael.y" @@ -1562,12 +1567,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1566 "ael.tab.c" +#line 1571 "ael.tab.c" break; case 61: /* "timerange" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1571 "ael.tab.c" +#line 1576 "ael.tab.c" break; case 62: /* "timespec" */ #line 166 "ael.y" @@ -1575,12 +1580,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1579 "ael.tab.c" +#line 1584 "ael.tab.c" break; case 63: /* "test_expr" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1584 "ael.tab.c" +#line 1589 "ael.tab.c" break; case 65: /* "if_like_head" */ #line 166 "ael.y" @@ -1588,22 +1593,22 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1592 "ael.tab.c" +#line 1597 "ael.tab.c" break; case 66: /* "word_list" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1597 "ael.tab.c" +#line 1602 "ael.tab.c" break; case 68: /* "word3_list" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1602 "ael.tab.c" +#line 1607 "ael.tab.c" break; case 69: /* "goto_word" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1607 "ael.tab.c" +#line 1612 "ael.tab.c" break; case 70: /* "switch_statement" */ #line 166 "ael.y" @@ -1611,7 +1616,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1615 "ael.tab.c" +#line 1620 "ael.tab.c" break; case 71: /* "statement" */ #line 166 "ael.y" @@ -1619,7 +1624,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1623 "ael.tab.c" +#line 1628 "ael.tab.c" break; case 76: /* "opt_else" */ #line 166 "ael.y" @@ -1627,7 +1632,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1631 "ael.tab.c" +#line 1636 "ael.tab.c" break; case 77: /* "target" */ #line 166 "ael.y" @@ -1635,12 +1640,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1639 "ael.tab.c" +#line 1644 "ael.tab.c" break; case 78: /* "opt_pri" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1644 "ael.tab.c" +#line 1649 "ael.tab.c" break; case 79: /* "jumptarget" */ #line 166 "ael.y" @@ -1648,7 +1653,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1652 "ael.tab.c" +#line 1657 "ael.tab.c" break; case 80: /* "macro_call" */ #line 166 "ael.y" @@ -1656,7 +1661,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1660 "ael.tab.c" +#line 1665 "ael.tab.c" break; case 82: /* "application_call_head" */ #line 166 "ael.y" @@ -1664,7 +1669,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1668 "ael.tab.c" +#line 1673 "ael.tab.c" break; case 84: /* "application_call" */ #line 166 "ael.y" @@ -1672,12 +1677,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1676 "ael.tab.c" +#line 1681 "ael.tab.c" break; case 85: /* "opt_word" */ #line 179 "ael.y" { free((yyvaluep->str));}; -#line 1681 "ael.tab.c" +#line 1686 "ael.tab.c" break; case 86: /* "eval_arglist" */ #line 166 "ael.y" @@ -1685,7 +1690,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1689 "ael.tab.c" +#line 1694 "ael.tab.c" break; case 87: /* "case_statements" */ #line 166 "ael.y" @@ -1693,7 +1698,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1697 "ael.tab.c" +#line 1702 "ael.tab.c" break; case 88: /* "case_statement" */ #line 166 "ael.y" @@ -1701,7 +1706,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1705 "ael.tab.c" +#line 1710 "ael.tab.c" break; case 89: /* "macro_statements" */ #line 166 "ael.y" @@ -1709,7 +1714,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1713 "ael.tab.c" +#line 1718 "ael.tab.c" break; case 90: /* "macro_statement" */ #line 166 "ael.y" @@ -1717,7 +1722,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1721 "ael.tab.c" +#line 1726 "ael.tab.c" break; case 91: /* "switches" */ #line 166 "ael.y" @@ -1725,7 +1730,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1729 "ael.tab.c" +#line 1734 "ael.tab.c" break; case 92: /* "eswitches" */ #line 166 "ael.y" @@ -1733,7 +1738,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1737 "ael.tab.c" +#line 1742 "ael.tab.c" break; case 93: /* "switchlist" */ #line 166 "ael.y" @@ -1741,7 +1746,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1745 "ael.tab.c" +#line 1750 "ael.tab.c" break; case 94: /* "included_entry" */ #line 166 "ael.y" @@ -1749,7 +1754,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1753 "ael.tab.c" +#line 1758 "ael.tab.c" break; case 95: /* "includeslist" */ #line 166 "ael.y" @@ -1757,7 +1762,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1761 "ael.tab.c" +#line 1766 "ael.tab.c" break; case 96: /* "includes" */ #line 166 "ael.y" @@ -1765,7 +1770,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1769 "ael.tab.c" +#line 1774 "ael.tab.c" break; default: @@ -2954,20 +2959,20 @@ yyreduce: case 128: #line 646 "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 129: #line 647 "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; @@ -3020,7 +3025,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 3024 "ael.tab.c" +#line 3029 "ael.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); diff --git a/pbx/ael/ael.y b/pbx/ael/ael.y index 7ff058b91..e2ddda1ad 100644 --- a/pbx/ael/ael.y +++ b/pbx/ael/ael.y @@ -155,7 +155,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 28 %error-verbose /* @@ -231,7 +231,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;} ; @@ -249,7 +249,7 @@ arglist : /* empty */ { $$ = NULL; } ; elements : {$$=0;} - | element elements { $$ = linku1($1, $2); } + | elements element { $$ = linku1($1, $2); } | error elements { $$=$2;} ; @@ -293,7 +293,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;} ; @@ -603,7 +603,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 { @@ -621,7 +621,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;} @@ -643,16 +643,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;} |