From a7eea7f188a908d83fb9d4f9ea42c436ba71db9b Mon Sep 17 00:00:00 2001 From: murf Date: Wed, 24 Oct 2007 04:14:28 +0000 Subject: closes issue #11037 -- unable to specify app:spec in hint arguments git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@86936 f38db490-d61c-443f-a65b-d21fe96a405b --- pbx/ael/ael.tab.c | 812 +++++++++++++++++++++++++++--------------------------- pbx/ael/ael.y | 4 + 2 files changed, 415 insertions(+), 401 deletions(-) (limited to 'pbx') diff --git a/pbx/ael/ael.tab.c b/pbx/ael/ael.tab.c index 53527ffe8..6b94b6ec1 100644 --- a/pbx/ael/ael.tab.c +++ b/pbx/ael/ael.tab.c @@ -490,16 +490,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 14 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 302 +#define YYLAST 314 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 42 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 54 /* YYNRULES -- Number of rules. */ -#define YYNRULES 133 +#define YYNRULES 134 /* YYNRULES -- Number of states. */ -#define YYNSTATES 271 +#define YYNSTATES 273 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -553,15 +553,15 @@ static const yytype_uint16 yyprhs[] = 56, 57, 63, 64, 66, 70, 73, 74, 77, 80, 82, 84, 86, 88, 90, 92, 95, 97, 102, 106, 111, 119, 128, 129, 132, 135, 141, 143, 151, 152, - 157, 160, 163, 168, 170, 173, 175, 178, 182, 184, - 187, 191, 193, 196, 200, 206, 210, 212, 216, 220, - 223, 224, 225, 226, 239, 243, 245, 249, 252, 255, - 256, 262, 265, 268, 271, 275, 277, 280, 281, 283, - 287, 291, 297, 303, 309, 315, 316, 319, 322, 327, - 328, 334, 338, 339, 343, 347, 350, 352, 353, 355, - 356, 360, 361, 364, 369, 373, 378, 379, 382, 384, - 386, 392, 397, 402, 403, 407, 413, 416, 418, 422, - 425, 429, 432, 437 + 157, 160, 163, 168, 170, 173, 175, 178, 182, 186, + 188, 191, 195, 197, 200, 204, 210, 214, 216, 220, + 224, 227, 228, 229, 230, 243, 247, 249, 253, 256, + 259, 260, 266, 269, 272, 275, 279, 281, 284, 285, + 287, 291, 295, 301, 307, 313, 319, 320, 323, 326, + 331, 332, 338, 342, 343, 347, 351, 354, 356, 357, + 359, 360, 364, 365, 368, 373, 377, 382, 383, 386, + 388, 390, 396, 401, 406, 407, 411, 417, 420, 422, + 426, 429, 433, 436, 441 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -584,34 +584,34 @@ static const yytype_int8 yyrhs[] = -1, 41, -1, 60, 13, 67, 13, 67, 13, 67, -1, -1, 6, 63, 65, 7, -1, 19, 62, -1, 22, 62, -1, 20, 6, 61, 7, -1, 41, -1, - 41, 41, -1, 41, -1, 66, 41, -1, 66, 12, - 41, -1, 41, -1, 41, 41, -1, 41, 41, 41, - -1, 41, -1, 41, 41, -1, 68, 11, 41, -1, - 18, 62, 4, 86, 5, -1, 4, 59, 5, -1, - 52, -1, 25, 76, 8, -1, 26, 78, 8, -1, - 41, 11, -1, -1, -1, -1, 32, 6, 71, 41, - 8, 72, 41, 8, 73, 41, 7, 70, -1, 33, - 62, 70, -1, 69, -1, 12, 79, 8, -1, 83, - 8, -1, 41, 8, -1, -1, 83, 9, 74, 41, - 8, -1, 28, 8, -1, 27, 8, -1, 29, 8, - -1, 64, 70, 75, -1, 8, -1, 21, 70, -1, - -1, 68, -1, 68, 13, 68, -1, 68, 10, 68, - -1, 68, 13, 68, 13, 68, -1, 68, 10, 68, - 10, 68, -1, 36, 13, 68, 13, 68, -1, 36, - 10, 68, 10, 68, -1, -1, 10, 41, -1, 68, - 77, -1, 68, 77, 14, 46, -1, -1, 41, 6, - 80, 85, 7, -1, 41, 6, 7, -1, -1, 41, - 6, 82, -1, 81, 85, 7, -1, 81, 7, -1, - 41, -1, -1, 65, -1, -1, 85, 10, 84, -1, - -1, 87, 86, -1, 34, 41, 11, 59, -1, 36, - 11, 59, -1, 35, 41, 11, 59, -1, -1, 89, - 88, -1, 70, -1, 95, -1, 37, 41, 4, 59, - 5, -1, 38, 4, 92, 5, -1, 39, 4, 92, - 5, -1, -1, 41, 8, 92, -1, 41, 14, 41, - 8, 92, -1, 1, 92, -1, 46, -1, 46, 13, - 61, -1, 93, 8, -1, 94, 93, 8, -1, 94, - 1, -1, 40, 4, 94, 5, -1, 40, 4, 5, - -1 + 41, 41, -1, 41, -1, 66, 41, -1, 66, 11, + 41, -1, 66, 12, 41, -1, 41, -1, 41, 41, + -1, 41, 41, 41, -1, 41, -1, 41, 41, -1, + 68, 11, 41, -1, 18, 62, 4, 86, 5, -1, + 4, 59, 5, -1, 52, -1, 25, 76, 8, -1, + 26, 78, 8, -1, 41, 11, -1, -1, -1, -1, + 32, 6, 71, 41, 8, 72, 41, 8, 73, 41, + 7, 70, -1, 33, 62, 70, -1, 69, -1, 12, + 79, 8, -1, 83, 8, -1, 41, 8, -1, -1, + 83, 9, 74, 41, 8, -1, 28, 8, -1, 27, + 8, -1, 29, 8, -1, 64, 70, 75, -1, 8, + -1, 21, 70, -1, -1, 68, -1, 68, 13, 68, + -1, 68, 10, 68, -1, 68, 13, 68, 13, 68, + -1, 68, 10, 68, 10, 68, -1, 36, 13, 68, + 13, 68, -1, 36, 10, 68, 10, 68, -1, -1, + 10, 41, -1, 68, 77, -1, 68, 77, 14, 46, + -1, -1, 41, 6, 80, 85, 7, -1, 41, 6, + 7, -1, -1, 41, 6, 82, -1, 81, 85, 7, + -1, 81, 7, -1, 41, -1, -1, 65, -1, -1, + 85, 10, 84, -1, -1, 87, 86, -1, 34, 41, + 11, 59, -1, 36, 11, 59, -1, 35, 41, 11, + 59, -1, -1, 89, 88, -1, 70, -1, 95, -1, + 37, 41, 4, 59, 5, -1, 38, 4, 92, 5, + -1, 39, 4, 92, 5, -1, -1, 41, 8, 92, + -1, 41, 14, 41, 8, 92, -1, 1, 92, -1, + 46, -1, 46, 13, 61, -1, 93, 8, -1, 94, + 93, 8, -1, 94, 1, -1, 40, 4, 94, 5, + -1, 40, 4, 5, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -622,15 +622,15 @@ static const yytype_uint16 yyrline[] = 239, 239, 246, 247, 248, 249, 252, 253, 254, 257, 258, 259, 260, 261, 262, 263, 264, 267, 272, 276, 281, 286, 296, 297, 298, 304, 309, 313, 321, 321, - 325, 328, 331, 342, 343, 350, 351, 355, 361, 362, - 367, 375, 376, 380, 386, 395, 398, 399, 402, 405, - 408, 409, 410, 408, 416, 420, 421, 422, 423, 426, - 426, 459, 460, 461, 462, 466, 469, 470, 473, 474, - 477, 480, 484, 488, 492, 498, 499, 503, 506, 512, - 512, 517, 525, 525, 536, 543, 546, 547, 550, 551, - 554, 557, 558, 561, 565, 569, 575, 576, 579, 580, - 581, 587, 592, 597, 598, 599, 601, 604, 605, 612, - 613, 614, 617, 620 + 325, 328, 331, 342, 343, 350, 351, 355, 359, 365, + 366, 371, 379, 380, 384, 390, 399, 402, 403, 406, + 409, 412, 413, 414, 412, 420, 424, 425, 426, 427, + 430, 430, 463, 464, 465, 466, 470, 473, 474, 477, + 478, 481, 484, 488, 492, 496, 502, 503, 507, 510, + 516, 516, 521, 529, 529, 540, 547, 550, 551, 554, + 555, 558, 561, 562, 565, 569, 573, 579, 580, 583, + 584, 585, 591, 596, 601, 602, 603, 605, 608, 609, + 616, 617, 618, 621, 624 }; #endif @@ -680,15 +680,15 @@ static const yytype_uint8 yyr1[] = 53, 52, 54, 54, 54, 54, 55, 55, 55, 56, 56, 56, 56, 56, 56, 56, 56, 57, 58, 58, 58, 58, 59, 59, 59, 60, 60, 61, 63, 62, - 64, 64, 64, 65, 65, 66, 66, 66, 67, 67, - 67, 68, 68, 68, 69, 70, 70, 70, 70, 70, - 71, 72, 73, 70, 70, 70, 70, 70, 70, 74, - 70, 70, 70, 70, 70, 70, 75, 75, 76, 76, - 76, 76, 76, 76, 76, 77, 77, 78, 78, 80, - 79, 79, 82, 81, 83, 83, 84, 84, 85, 85, - 85, 86, 86, 87, 87, 87, 88, 88, 89, 89, - 89, 90, 91, 92, 92, 92, 92, 93, 93, 94, - 94, 94, 95, 95 + 64, 64, 64, 65, 65, 66, 66, 66, 66, 67, + 67, 67, 68, 68, 68, 69, 70, 70, 70, 70, + 70, 71, 72, 73, 70, 70, 70, 70, 70, 70, + 74, 70, 70, 70, 70, 70, 70, 75, 75, 76, + 76, 76, 76, 76, 76, 76, 77, 77, 78, 78, + 80, 79, 79, 82, 81, 83, 83, 84, 84, 85, + 85, 85, 86, 86, 87, 87, 87, 88, 88, 89, + 89, 89, 90, 91, 92, 92, 92, 92, 93, 93, + 94, 94, 94, 95, 95 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -699,15 +699,15 @@ static const yytype_uint8 yyr2[] = 0, 5, 0, 1, 3, 2, 0, 2, 2, 1, 1, 1, 1, 1, 1, 2, 1, 4, 3, 4, 7, 8, 0, 2, 2, 5, 1, 7, 0, 4, - 2, 2, 4, 1, 2, 1, 2, 3, 1, 2, - 3, 1, 2, 3, 5, 3, 1, 3, 3, 2, - 0, 0, 0, 12, 3, 1, 3, 2, 2, 0, - 5, 2, 2, 2, 3, 1, 2, 0, 1, 3, - 3, 5, 5, 5, 5, 0, 2, 2, 4, 0, - 5, 3, 0, 3, 3, 2, 1, 0, 1, 0, - 3, 0, 2, 4, 3, 4, 0, 2, 1, 1, - 5, 4, 4, 0, 3, 5, 2, 1, 3, 2, - 3, 2, 4, 3 + 2, 2, 4, 1, 2, 1, 2, 3, 3, 1, + 2, 3, 1, 2, 3, 5, 3, 1, 3, 3, + 2, 0, 0, 0, 12, 3, 1, 3, 2, 2, + 0, 5, 2, 2, 2, 3, 1, 2, 0, 1, + 3, 3, 5, 5, 5, 5, 0, 2, 2, 4, + 0, 5, 3, 0, 3, 3, 2, 1, 0, 1, + 0, 3, 0, 2, 4, 3, 4, 0, 2, 1, + 1, 5, 4, 4, 0, 3, 5, 2, 1, 3, + 2, 3, 2, 4, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -720,161 +720,163 @@ static const yytype_uint8 yydefact[] = 0, 0, 0, 11, 10, 0, 23, 0, 19, 20, 16, 18, 0, 25, 0, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 33, - 29, 31, 32, 30, 116, 24, 0, 28, 0, 0, + 29, 31, 32, 30, 117, 24, 0, 28, 0, 0, 0, 0, 0, 0, 0, 35, 0, 12, 27, 0, - 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 66, 0, 75, 118, 109, - 0, 0, 116, 119, 21, 0, 0, 0, 55, 0, - 0, 0, 0, 0, 133, 127, 0, 0, 38, 0, + 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 67, 0, 76, 119, 110, + 0, 0, 117, 120, 21, 0, 0, 0, 55, 0, + 0, 0, 0, 0, 134, 128, 0, 0, 38, 0, 0, 0, 0, 0, 48, 0, 50, 0, 51, 0, - 61, 88, 0, 95, 0, 82, 81, 83, 70, 0, - 0, 102, 78, 69, 87, 105, 53, 108, 0, 77, - 79, 15, 117, 37, 0, 39, 0, 0, 56, 126, - 0, 0, 121, 122, 0, 129, 131, 132, 0, 44, - 65, 43, 99, 76, 0, 111, 46, 0, 0, 0, - 0, 0, 62, 0, 0, 0, 67, 0, 97, 68, - 0, 74, 0, 103, 0, 84, 54, 104, 107, 0, - 0, 0, 57, 124, 0, 128, 130, 101, 109, 0, - 0, 0, 0, 0, 111, 59, 0, 52, 0, 0, - 0, 90, 63, 89, 96, 0, 0, 0, 86, 106, - 110, 0, 0, 0, 0, 0, 49, 0, 0, 0, - 64, 112, 60, 58, 0, 0, 0, 0, 0, 0, - 98, 71, 120, 80, 0, 40, 125, 100, 0, 0, - 114, 0, 0, 94, 93, 92, 91, 0, 41, 113, - 115, 0, 45, 0, 0, 72, 47, 0, 0, 0, - 73 + 62, 89, 0, 96, 0, 83, 82, 84, 71, 0, + 0, 103, 79, 70, 88, 106, 53, 109, 0, 78, + 80, 15, 118, 37, 0, 39, 0, 0, 0, 56, + 127, 0, 0, 122, 123, 0, 130, 132, 133, 0, + 44, 66, 43, 100, 77, 0, 112, 46, 0, 0, + 0, 0, 0, 63, 0, 0, 0, 68, 0, 98, + 69, 0, 75, 0, 104, 0, 85, 54, 105, 108, + 0, 0, 0, 57, 58, 125, 0, 129, 131, 102, + 110, 0, 0, 0, 0, 0, 112, 60, 0, 52, + 0, 0, 0, 91, 64, 90, 97, 0, 0, 0, + 87, 107, 111, 0, 0, 0, 0, 0, 49, 0, + 0, 0, 65, 113, 61, 59, 0, 0, 0, 0, + 0, 0, 99, 72, 121, 81, 0, 40, 126, 101, + 0, 0, 115, 0, 0, 95, 94, 93, 92, 0, + 41, 114, 116, 0, 45, 0, 0, 73, 47, 0, + 0, 0, 74 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 5, 6, 7, 105, 8, 9, 10, 11, 21, - 85, 36, 27, 47, 48, 49, 50, 110, 167, 168, - 115, 164, 86, 137, 99, 169, 121, 87, 111, 180, - 257, 267, 189, 185, 122, 178, 124, 113, 198, 89, - 183, 90, 220, 138, 203, 204, 91, 92, 51, 52, + 85, 36, 27, 47, 48, 49, 50, 110, 168, 169, + 115, 165, 86, 137, 99, 170, 121, 87, 111, 181, + 259, 269, 190, 186, 122, 179, 124, 113, 200, 89, + 184, 90, 222, 138, 205, 206, 91, 92, 51, 52, 102, 106, 107, 53 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -201 +#define YYPACT_NINF -203 static const yytype_int16 yypact[] = { - 136, -201, -30, 11, -201, 26, 233, -201, -201, 27, - -201, -201, 59, 9, -201, -201, -201, -17, 43, 9, - 141, 155, 9, -201, -201, 90, -201, 78, -201, -201, - -201, -201, 17, -201, 164, 99, 129, 17, -201, 115, - -14, 172, 175, 176, 178, 12, -201, 179, 17, -201, - -201, -201, -201, -201, 169, -201, 177, -201, 145, 186, - 180, 152, 30, 30, 96, -201, 199, -201, -201, 41, - -201, 159, 202, 202, 206, 202, 51, 173, 197, 205, - 208, 214, 202, 181, 147, -201, 199, -201, -201, 37, - 31, 218, 169, -201, -201, 221, 152, 199, -201, 21, - 30, 15, 225, 230, -201, 224, 231, 130, -201, 85, - 237, 85, 232, 235, -201, 240, -201, 204, -201, 89, - 209, 70, 238, 98, 239, -201, -201, -201, -201, 199, - 247, -201, -201, -201, 234, -201, 211, -201, 126, -201, - -201, -201, -201, -201, 65, -201, 212, 213, -201, -201, - 30, 216, -201, -201, 204, -201, -201, -201, 250, -201, - -201, -201, 252, -201, 219, 140, -4, 248, 255, 253, - 173, 173, -201, 173, 222, 173, -201, 226, 251, -201, - 227, -201, 41, -201, 199, -201, -201, -201, 228, 229, - 236, 242, -201, -201, 263, -201, -201, -201, 219, 265, - 241, 243, 262, 269, 140, 244, 245, -201, 245, 105, - 111, 118, -201, 134, -201, -17, 267, 271, -201, -201, - -201, 270, 256, 199, 30, 131, -201, 268, 272, 85, - -201, -201, -201, 246, 275, 278, 173, 173, 173, 173, - -201, -201, -201, -201, 199, -201, -201, -201, 85, 85, - -201, 245, 245, 279, 279, 279, 279, 254, -201, -201, - -201, 280, -201, 273, 245, -201, -201, 257, 284, 199, - -201 + 92, -203, -1, 66, -203, 85, 220, -203, -203, 88, + -203, -203, 142, 15, -203, -203, -203, -26, 110, 15, + 144, 155, 15, -203, -203, 151, -203, 131, -203, -203, + -203, -203, 6, -203, 157, 139, 143, 6, -203, 162, + 53, 182, 196, 204, 207, 41, -203, 193, 6, -203, + -203, -203, -203, -203, 150, -203, 206, -203, 171, 209, + 195, 181, 20, 20, 13, -203, 177, -203, -203, 101, + -203, 184, 218, 218, 221, 218, 57, 188, 222, 224, + 225, 228, 218, 197, 141, -203, 177, -203, -203, 28, + 95, 232, 150, -203, -203, 231, 181, 177, -203, 19, + 20, 14, 235, 236, -203, 233, 237, 12, -203, 54, + 239, 54, 241, 240, -203, 245, -203, 210, -203, 58, + 211, 146, 242, 125, 246, -203, -203, -203, -203, 177, + 249, -203, -203, -203, 234, -203, 215, -203, 17, -203, + -203, -203, -203, -203, 22, -203, 216, 217, 219, -203, + -203, 20, 223, -203, -203, 210, -203, -203, -203, 251, + -203, -203, -203, 254, -203, 226, 82, -2, 250, 255, + 257, 188, 188, -203, 188, 229, 188, -203, 230, 252, + -203, 238, -203, 101, -203, 177, -203, -203, -203, 243, + 244, 247, 248, -203, -203, -203, 261, -203, -203, -203, + 226, 258, 253, 256, 262, 269, 82, 259, 260, -203, + 260, 163, 99, 183, -203, 111, -203, -26, 267, 271, + -203, -203, -203, 270, 263, 177, 20, 104, -203, 266, + 272, 54, -203, -203, -203, 264, 268, 275, 188, 188, + 188, 188, -203, -203, -203, -203, 177, -203, -203, -203, + 54, 54, -203, 260, 260, 278, 278, 278, 278, 265, + -203, -203, -203, 277, -203, 274, 260, -203, -203, 273, + 284, 177, -203 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -201, -201, -201, 286, -16, -201, -201, -201, -201, 127, - 135, -201, -201, -28, -201, -201, -201, -106, -201, 142, - 52, -201, -201, 133, 198, -200, -75, -201, -54, -201, - -201, -201, -201, -201, -201, -201, -201, -201, -201, -201, - -201, -201, -201, 101, 97, -201, 210, -201, -201, -201, - -59, 193, -201, -38 + -203, -203, -203, 286, -16, -203, -203, -203, -203, 121, + 194, -203, -203, 30, -203, -203, -203, -106, -203, 138, + 64, -203, -203, 115, 199, -202, -75, -203, -54, -203, + -203, -203, -203, -203, -203, -203, -203, -203, -203, -203, + -203, -203, -203, 96, 93, -203, 212, -203, -203, -203, + -59, 191, -203, -35 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -124 +#define YYTABLE_NINF -125 static const yytype_int16 yytable[] = { - 88, 25, 123, 159, 103, 161, 234, -58, 235, 57, - 19, 12, 108, 65, -17, 13, 93, 59, 37, 23, - 68, 29, -26, 150, 24, 38, 14, 60, 146, 151, - 17, 100, 134, 147, 39, -123, 66, 205, 88, 139, - 140, 149, 109, 145, 135, 69, -42, 40, 41, 70, - 20, 261, 262, 71, 93, 42, 43, 44, 45, 72, - 73, 74, 148, 75, 266, 18, 76, 77, 78, 79, - 80, 101, 190, 81, 82, 181, 217, 147, 136, 33, - 173, 174, 84, 175, 26, 34, 109, 119, 35, 69, - -42, 193, 120, 70, 32, 209, 210, 71, 211, 170, - 213, 104, 171, 72, 73, 74, 148, 75, 177, 174, - 76, 77, 78, 79, 80, 236, 174, 81, 82, -42, - -42, -42, 174, 250, 237, 116, 84, 118, 238, 174, - 218, 156, 23, 187, 129, 157, 188, 24, 247, 58, - 55, 188, 259, 260, 1, 174, 28, 239, 22, 31, - 29, 2, 3, 131, 22, 132, 29, 22, 133, 4, - 30, 253, 254, 255, 256, 246, 23, 46, 54, 245, - 56, 24, 46, 69, 200, 201, 202, 70, 61, 62, - 63, 71, 64, 46, 67, 94, 95, 72, 73, 74, - 258, 75, 96, 98, 76, 77, 78, 79, 80, 240, - 112, 81, 82, 69, 97, 125, 83, 70, 114, 44, - 84, 71, 117, 126, 120, 270, 127, 72, 73, 74, - 128, 75, 130, 141, 76, 77, 78, 79, 80, 143, - 152, 81, 82, -2, 15, 153, -14, 154, 162, 155, - 84, 1, 160, 163, 165, 166, 176, 179, 2, 3, - 172, 182, 186, 191, 192, 184, 4, 194, 196, 197, - 136, 206, 207, 212, 208, 215, 223, 214, 216, 219, - 221, 224, 226, 229, 230, 241, 242, 222, 243, 248, - 244, 265, 227, 249, 228, 232, 233, 205, 251, 252, - 174, 269, 16, 264, 144, 263, 195, 199, 268, 225, - 158, 231, 142 + 88, 25, 123, 160, 103, 162, 236, 37, 237, -59, + 23, -26, 108, 157, 38, 24, 19, 158, 104, 93, + -17, 100, 151, 39, 188, -124, 146, 189, 152, 191, + 147, 148, 134, 147, 148, 135, 40, 41, 88, 207, + 12, 150, 65, 145, 42, 43, 44, 45, 23, 23, + 29, 263, 264, 24, 24, 109, 20, 93, 69, -42, + 149, 101, 70, 149, 268, 66, 71, 57, 171, 136, + 13, 172, 72, 73, 74, 182, 75, 219, 68, 76, + 77, 78, 79, 80, 59, 14, 81, 82, -42, -42, + -42, 17, 195, 119, 60, 84, 211, 212, 120, 213, + 1, 215, 109, 139, 140, 69, -42, 2, 3, 70, + 175, 249, 239, 71, 189, 4, 202, 203, 204, 72, + 73, 74, 175, 75, 241, 252, 76, 77, 78, 79, + 80, 220, 33, 81, 82, 178, 175, 116, 34, 118, + 28, 35, 84, 31, 261, 262, 129, 131, 18, 132, + 29, 26, 133, 29, 69, 32, 174, 175, 70, 176, + 30, 54, 71, 255, 256, 257, 258, 248, 72, 73, + 74, 247, 75, 238, 175, 76, 77, 78, 79, 80, + 55, 69, 81, 82, 56, 70, 58, 83, 61, 71, + 44, 84, 260, 240, 175, 72, 73, 74, 67, 75, + 62, 242, 76, 77, 78, 79, 80, 22, 63, 81, + 82, 64, 95, 22, 94, 96, 22, 272, 84, 97, + -2, 15, 98, -14, 114, 112, 46, 117, 1, 120, + 125, 46, 126, 127, 128, 2, 3, 141, 130, 143, + 153, 154, 46, 4, 161, 156, 155, 163, 164, 166, + 177, 167, 173, 183, 180, 185, 187, 192, 193, 198, + 194, 199, 209, 208, 196, 228, 217, 136, 210, 226, + 214, 216, 225, 231, 232, 243, 244, 250, 245, 218, + 201, 253, 267, 251, 221, 223, 254, 246, 224, 175, + 266, 271, 16, 197, 229, 144, 227, 230, 159, 233, + 234, 235, 0, 0, 142, 207, 265, 0, 0, 0, + 0, 0, 0, 0, 270 }; -static const yytype_uint16 yycheck[] = +static const yytype_int16 yycheck[] = { - 54, 17, 77, 109, 63, 111, 206, 11, 208, 37, - 1, 41, 66, 1, 5, 4, 54, 31, 1, 36, - 48, 9, 5, 8, 41, 8, 0, 41, 7, 14, - 3, 1, 86, 12, 17, 5, 24, 41, 92, 8, - 9, 100, 1, 97, 7, 4, 5, 30, 31, 8, - 41, 251, 252, 12, 92, 38, 39, 40, 41, 18, - 19, 20, 41, 22, 264, 6, 25, 26, 27, 28, - 29, 41, 7, 32, 33, 129, 182, 12, 41, 1, - 10, 11, 41, 13, 41, 7, 1, 36, 10, 4, - 5, 150, 41, 8, 4, 170, 171, 12, 173, 10, - 175, 5, 13, 18, 19, 20, 41, 22, 10, 11, - 25, 26, 27, 28, 29, 10, 11, 32, 33, 34, - 35, 36, 11, 229, 13, 73, 41, 75, 10, 11, - 184, 1, 36, 7, 82, 5, 10, 41, 7, 24, - 41, 10, 248, 249, 8, 11, 19, 13, 13, 22, - 9, 15, 16, 6, 19, 8, 9, 22, 11, 23, - 5, 236, 237, 238, 239, 224, 36, 32, 4, 223, - 41, 41, 37, 4, 34, 35, 36, 8, 6, 4, - 4, 12, 4, 48, 5, 8, 41, 18, 19, 20, - 244, 22, 6, 41, 25, 26, 27, 28, 29, 215, - 41, 32, 33, 4, 24, 8, 37, 8, 6, 40, - 41, 12, 6, 8, 41, 269, 8, 18, 19, 20, - 6, 22, 41, 5, 25, 26, 27, 28, 29, 8, - 5, 32, 33, 0, 1, 5, 3, 13, 6, 8, - 41, 8, 5, 8, 4, 41, 8, 8, 15, 16, - 41, 4, 41, 41, 41, 21, 23, 41, 8, 7, - 41, 13, 7, 41, 11, 14, 24, 41, 41, 41, - 41, 8, 7, 11, 5, 8, 5, 41, 8, 11, - 24, 8, 41, 11, 41, 41, 41, 41, 13, 11, - 11, 7, 6, 13, 96, 41, 154, 164, 41, 198, - 107, 204, 92 + 54, 17, 77, 109, 63, 111, 208, 1, 210, 11, + 36, 5, 66, 1, 8, 41, 1, 5, 5, 54, + 5, 1, 8, 17, 7, 5, 7, 10, 14, 7, + 11, 12, 86, 11, 12, 7, 30, 31, 92, 41, + 41, 100, 1, 97, 38, 39, 40, 41, 36, 36, + 9, 253, 254, 41, 41, 1, 41, 92, 4, 5, + 41, 41, 8, 41, 266, 24, 12, 37, 10, 41, + 4, 13, 18, 19, 20, 129, 22, 183, 48, 25, + 26, 27, 28, 29, 31, 0, 32, 33, 34, 35, + 36, 3, 151, 36, 41, 41, 171, 172, 41, 174, + 8, 176, 1, 8, 9, 4, 5, 15, 16, 8, + 11, 7, 13, 12, 10, 23, 34, 35, 36, 18, + 19, 20, 11, 22, 13, 231, 25, 26, 27, 28, + 29, 185, 1, 32, 33, 10, 11, 73, 7, 75, + 19, 10, 41, 22, 250, 251, 82, 6, 6, 8, + 9, 41, 11, 9, 4, 4, 10, 11, 8, 13, + 5, 4, 12, 238, 239, 240, 241, 226, 18, 19, + 20, 225, 22, 10, 11, 25, 26, 27, 28, 29, + 41, 4, 32, 33, 41, 8, 24, 37, 6, 12, + 40, 41, 246, 10, 11, 18, 19, 20, 5, 22, + 4, 217, 25, 26, 27, 28, 29, 13, 4, 32, + 33, 4, 41, 19, 8, 6, 22, 271, 41, 24, + 0, 1, 41, 3, 6, 41, 32, 6, 8, 41, + 8, 37, 8, 8, 6, 15, 16, 5, 41, 8, + 5, 5, 48, 23, 5, 8, 13, 6, 8, 4, + 8, 41, 41, 4, 8, 21, 41, 41, 41, 8, + 41, 7, 7, 13, 41, 7, 14, 41, 11, 8, + 41, 41, 24, 11, 5, 8, 5, 11, 8, 41, + 165, 13, 8, 11, 41, 41, 11, 24, 41, 11, + 13, 7, 6, 155, 41, 96, 200, 41, 107, 206, + 41, 41, -1, -1, 92, 41, 41, -1, -1, -1, + -1, -1, -1, -1, 41 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -895,20 +897,20 @@ static const yytype_uint8 yystos[] = 59, 70, 41, 79, 6, 62, 62, 6, 62, 36, 41, 68, 76, 68, 78, 8, 8, 8, 6, 62, 41, 6, 8, 11, 70, 7, 41, 65, 85, 8, - 9, 5, 88, 8, 66, 70, 7, 12, 41, 92, - 8, 14, 5, 5, 13, 8, 1, 5, 93, 59, - 5, 59, 6, 8, 63, 4, 41, 60, 61, 67, - 10, 13, 41, 10, 11, 13, 8, 10, 77, 8, - 71, 70, 4, 82, 21, 75, 41, 7, 10, 74, - 7, 41, 41, 92, 41, 61, 8, 7, 80, 65, - 34, 35, 36, 86, 87, 41, 13, 7, 11, 68, - 68, 68, 41, 68, 41, 14, 41, 59, 70, 41, - 84, 41, 41, 24, 8, 85, 7, 41, 41, 11, - 5, 86, 41, 41, 67, 67, 10, 13, 10, 13, - 46, 8, 5, 8, 24, 70, 92, 7, 11, 11, - 59, 13, 11, 68, 68, 68, 68, 72, 70, 59, - 59, 67, 67, 41, 13, 8, 67, 73, 41, 7, - 70 + 9, 5, 88, 8, 66, 70, 7, 11, 12, 41, + 92, 8, 14, 5, 5, 13, 8, 1, 5, 93, + 59, 5, 59, 6, 8, 63, 4, 41, 60, 61, + 67, 10, 13, 41, 10, 11, 13, 8, 10, 77, + 8, 71, 70, 4, 82, 21, 75, 41, 7, 10, + 74, 7, 41, 41, 41, 92, 41, 61, 8, 7, + 80, 65, 34, 35, 36, 86, 87, 41, 13, 7, + 11, 68, 68, 68, 41, 68, 41, 14, 41, 59, + 70, 41, 84, 41, 41, 24, 8, 85, 7, 41, + 41, 11, 5, 86, 41, 41, 67, 67, 10, 13, + 10, 13, 46, 8, 5, 8, 24, 70, 92, 7, + 11, 11, 59, 13, 11, 68, 68, 68, 68, 72, + 70, 59, 59, 67, 67, 41, 13, 8, 67, 73, + 41, 7, 70 }; #define yyerrok (yyerrstatus = 0) @@ -1433,7 +1435,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) case 41: /* "word" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1437 "ael.tab.c" +#line 1439 "ael.tab.c" break; case 44: /* "objects" */ #line 164 "ael.y" @@ -1441,7 +1443,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1445 "ael.tab.c" +#line 1447 "ael.tab.c" break; case 45: /* "object" */ #line 164 "ael.y" @@ -1449,12 +1451,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1453 "ael.tab.c" +#line 1455 "ael.tab.c" break; case 46: /* "context_name" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1458 "ael.tab.c" +#line 1460 "ael.tab.c" break; case 47: /* "context" */ #line 164 "ael.y" @@ -1462,7 +1464,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1466 "ael.tab.c" +#line 1468 "ael.tab.c" break; case 49: /* "macro" */ #line 164 "ael.y" @@ -1470,7 +1472,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1474 "ael.tab.c" +#line 1476 "ael.tab.c" break; case 50: /* "globals" */ #line 164 "ael.y" @@ -1478,7 +1480,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1482 "ael.tab.c" +#line 1484 "ael.tab.c" break; case 51: /* "global_statements" */ #line 164 "ael.y" @@ -1486,7 +1488,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1490 "ael.tab.c" +#line 1492 "ael.tab.c" break; case 52: /* "assignment" */ #line 164 "ael.y" @@ -1494,7 +1496,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1498 "ael.tab.c" +#line 1500 "ael.tab.c" break; case 54: /* "arglist" */ #line 164 "ael.y" @@ -1502,7 +1504,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1506 "ael.tab.c" +#line 1508 "ael.tab.c" break; case 55: /* "elements" */ #line 164 "ael.y" @@ -1510,7 +1512,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1514 "ael.tab.c" +#line 1516 "ael.tab.c" break; case 56: /* "element" */ #line 164 "ael.y" @@ -1518,7 +1520,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1522 "ael.tab.c" +#line 1524 "ael.tab.c" break; case 57: /* "ignorepat" */ #line 164 "ael.y" @@ -1526,7 +1528,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1530 "ael.tab.c" +#line 1532 "ael.tab.c" break; case 58: /* "extension" */ #line 164 "ael.y" @@ -1534,7 +1536,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1538 "ael.tab.c" +#line 1540 "ael.tab.c" break; case 59: /* "statements" */ #line 164 "ael.y" @@ -1542,12 +1544,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1546 "ael.tab.c" +#line 1548 "ael.tab.c" break; case 60: /* "timerange" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1551 "ael.tab.c" +#line 1553 "ael.tab.c" break; case 61: /* "timespec" */ #line 164 "ael.y" @@ -1555,12 +1557,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1559 "ael.tab.c" +#line 1561 "ael.tab.c" break; case 62: /* "test_expr" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1564 "ael.tab.c" +#line 1566 "ael.tab.c" break; case 64: /* "if_like_head" */ #line 164 "ael.y" @@ -1568,22 +1570,22 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1572 "ael.tab.c" +#line 1574 "ael.tab.c" break; case 65: /* "word_list" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1577 "ael.tab.c" +#line 1579 "ael.tab.c" break; case 67: /* "word3_list" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1582 "ael.tab.c" +#line 1584 "ael.tab.c" break; case 68: /* "goto_word" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1587 "ael.tab.c" +#line 1589 "ael.tab.c" break; case 69: /* "switch_statement" */ #line 164 "ael.y" @@ -1591,7 +1593,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1595 "ael.tab.c" +#line 1597 "ael.tab.c" break; case 70: /* "statement" */ #line 164 "ael.y" @@ -1599,7 +1601,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1603 "ael.tab.c" +#line 1605 "ael.tab.c" break; case 75: /* "opt_else" */ #line 164 "ael.y" @@ -1607,7 +1609,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1611 "ael.tab.c" +#line 1613 "ael.tab.c" break; case 76: /* "target" */ #line 164 "ael.y" @@ -1615,12 +1617,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1619 "ael.tab.c" +#line 1621 "ael.tab.c" break; case 77: /* "opt_pri" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1624 "ael.tab.c" +#line 1626 "ael.tab.c" break; case 78: /* "jumptarget" */ #line 164 "ael.y" @@ -1628,7 +1630,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1632 "ael.tab.c" +#line 1634 "ael.tab.c" break; case 79: /* "macro_call" */ #line 164 "ael.y" @@ -1636,7 +1638,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1640 "ael.tab.c" +#line 1642 "ael.tab.c" break; case 81: /* "application_call_head" */ #line 164 "ael.y" @@ -1644,7 +1646,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1648 "ael.tab.c" +#line 1650 "ael.tab.c" break; case 83: /* "application_call" */ #line 164 "ael.y" @@ -1652,12 +1654,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1656 "ael.tab.c" +#line 1658 "ael.tab.c" break; case 84: /* "opt_word" */ #line 177 "ael.y" { free((yyvaluep->str));}; -#line 1661 "ael.tab.c" +#line 1663 "ael.tab.c" break; case 85: /* "eval_arglist" */ #line 164 "ael.y" @@ -1665,7 +1667,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1669 "ael.tab.c" +#line 1671 "ael.tab.c" break; case 86: /* "case_statements" */ #line 164 "ael.y" @@ -1673,7 +1675,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1677 "ael.tab.c" +#line 1679 "ael.tab.c" break; case 87: /* "case_statement" */ #line 164 "ael.y" @@ -1681,7 +1683,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1685 "ael.tab.c" +#line 1687 "ael.tab.c" break; case 88: /* "macro_statements" */ #line 164 "ael.y" @@ -1689,7 +1691,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1693 "ael.tab.c" +#line 1695 "ael.tab.c" break; case 89: /* "macro_statement" */ #line 164 "ael.y" @@ -1697,7 +1699,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1701 "ael.tab.c" +#line 1703 "ael.tab.c" break; case 90: /* "switches" */ #line 164 "ael.y" @@ -1705,7 +1707,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1709 "ael.tab.c" +#line 1711 "ael.tab.c" break; case 91: /* "eswitches" */ #line 164 "ael.y" @@ -1713,7 +1715,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1717 "ael.tab.c" +#line 1719 "ael.tab.c" break; case 92: /* "switchlist" */ #line 164 "ael.y" @@ -1721,7 +1723,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1725 "ael.tab.c" +#line 1727 "ael.tab.c" break; case 93: /* "included_entry" */ #line 164 "ael.y" @@ -1729,7 +1731,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1733 "ael.tab.c" +#line 1735 "ael.tab.c" break; case 94: /* "includeslist" */ #line 164 "ael.y" @@ -1737,7 +1739,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1741 "ael.tab.c" +#line 1743 "ael.tab.c" break; case 95: /* "includes" */ #line 164 "ael.y" @@ -1745,7 +1747,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1749 "ael.tab.c" +#line 1751 "ael.tab.c" break; default: @@ -2404,19 +2406,27 @@ yyreduce: case 57: #line 355 "ael.y" + { + asprintf(&((yyval.str)), "%s:%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); + free((yyvsp[(1) - (3)].str)); + free((yyvsp[(3) - (3)].str)); ;} + break; + + case 58: +#line 359 "ael.y" { /* there are often '&' in hints */ asprintf(&((yyval.str)), "%s&%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); free((yyvsp[(1) - (3)].str)); free((yyvsp[(3) - (3)].str));;} break; - case 58: -#line 361 "ael.y" + case 59: +#line 365 "ael.y" { (yyval.str) = (yyvsp[(1) - (1)].str);;} break; - case 59: -#line 362 "ael.y" + case 60: +#line 366 "ael.y" { asprintf(&((yyval.str)), "%s%s", (yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].str)); free((yyvsp[(1) - (2)].str)); @@ -2424,8 +2434,8 @@ yyreduce: prev_word = (yyval.str);;} break; - case 60: -#line 367 "ael.y" + case 61: +#line 371 "ael.y" { asprintf(&((yyval.str)), "%s%s%s", (yyvsp[(1) - (3)].str), (yyvsp[(2) - (3)].str), (yyvsp[(3) - (3)].str)); free((yyvsp[(1) - (3)].str)); @@ -2434,85 +2444,85 @@ yyreduce: prev_word=(yyval.str);;} break; - case 61: -#line 375 "ael.y" + case 62: +#line 379 "ael.y" { (yyval.str) = (yyvsp[(1) - (1)].str);;} break; - case 62: -#line 376 "ael.y" + case 63: +#line 380 "ael.y" { asprintf(&((yyval.str)), "%s%s", (yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].str)); free((yyvsp[(1) - (2)].str)); free((yyvsp[(2) - (2)].str));;} break; - case 63: -#line 380 "ael.y" + case 64: +#line 384 "ael.y" { asprintf(&((yyval.str)), "%s:%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); free((yyvsp[(1) - (3)].str)); free((yyvsp[(3) - (3)].str));;} break; - case 64: -#line 386 "ael.y" + case 65: +#line 390 "ael.y" { (yyval.pval) = npval2(PV_SWITCH, &(yylsp[(1) - (5)]), &(yylsp[(5) - (5)])); (yyval.pval)->u1.str = (yyvsp[(2) - (5)].str); (yyval.pval)->u2.statements = (yyvsp[(4) - (5)].pval); set_dads((yyval.pval),(yyvsp[(4) - (5)].pval));;} break; - case 65: -#line 395 "ael.y" + case 66: +#line 399 "ael.y" { (yyval.pval) = npval2(PV_STATEMENTBLOCK, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.list = (yyvsp[(2) - (3)].pval); set_dads((yyval.pval),(yyvsp[(2) - (3)].pval));;} break; - case 66: -#line 398 "ael.y" + case 67: +#line 402 "ael.y" { (yyval.pval) = (yyvsp[(1) - (1)].pval); ;} break; - case 67: -#line 399 "ael.y" + case 68: +#line 403 "ael.y" { (yyval.pval) = npval2(PV_GOTO, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.list = (yyvsp[(2) - (3)].pval);;} break; - case 68: -#line 402 "ael.y" + case 69: +#line 406 "ael.y" { (yyval.pval) = npval2(PV_GOTO, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.list = (yyvsp[(2) - (3)].pval);;} break; - case 69: -#line 405 "ael.y" + case 70: +#line 409 "ael.y" { (yyval.pval) = npval2(PV_LABEL, &(yylsp[(1) - (2)]), &(yylsp[(2) - (2)])); (yyval.pval)->u1.str = (yyvsp[(1) - (2)].str); ;} break; - case 70: -#line 408 "ael.y" + case 71: +#line 412 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 71: -#line 409 "ael.y" + case 72: +#line 413 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 72: -#line 410 "ael.y" + case 73: +#line 414 "ael.y" {reset_parencount(parseio->scanner);;} break; - case 73: -#line 410 "ael.y" + case 74: +#line 414 "ael.y" { /* XXX word_list maybe ? */ (yyval.pval) = npval2(PV_FOR, &(yylsp[(1) - (12)]), &(yylsp[(12) - (12)])); (yyval.pval)->u1.for_init = (yyvsp[(4) - (12)].str); @@ -2521,43 +2531,43 @@ yyreduce: (yyval.pval)->u4.for_statements = (yyvsp[(12) - (12)].pval); set_dads((yyval.pval),(yyvsp[(12) - (12)].pval));;} break; - case 74: -#line 416 "ael.y" + case 75: +#line 420 "ael.y" { (yyval.pval) = npval2(PV_WHILE, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.str = (yyvsp[(2) - (3)].str); (yyval.pval)->u2.statements = (yyvsp[(3) - (3)].pval); set_dads((yyval.pval),(yyvsp[(3) - (3)].pval));;} break; - case 75: -#line 420 "ael.y" + case 76: +#line 424 "ael.y" { (yyval.pval) = (yyvsp[(1) - (1)].pval); ;} break; - case 76: -#line 421 "ael.y" + case 77: +#line 425 "ael.y" { (yyval.pval) = update_last((yyvsp[(2) - (3)].pval), &(yylsp[(2) - (3)])); ;} break; - case 77: -#line 422 "ael.y" + case 78: +#line 426 "ael.y" { (yyval.pval) = update_last((yyvsp[(1) - (2)].pval), &(yylsp[(2) - (2)])); ;} break; - case 78: -#line 423 "ael.y" + case 79: +#line 427 "ael.y" { (yyval.pval)= npval2(PV_APPLICATION_CALL, &(yylsp[(1) - (2)]), &(yylsp[(2) - (2)])); (yyval.pval)->u1.str = (yyvsp[(1) - (2)].str);;} break; - case 79: -#line 426 "ael.y" + case 80: +#line 430 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 80: -#line 426 "ael.y" + case 81: +#line 430 "ael.y" { char *bufx; int tot=0; @@ -2593,69 +2603,61 @@ yyreduce: ;} break; - case 81: -#line 459 "ael.y" + case 82: +#line 463 "ael.y" { (yyval.pval) = npval2(PV_BREAK, &(yylsp[(1) - (2)]), &(yylsp[(2) - (2)])); ;} break; - case 82: -#line 460 "ael.y" + case 83: +#line 464 "ael.y" { (yyval.pval) = npval2(PV_RETURN, &(yylsp[(1) - (2)]), &(yylsp[(2) - (2)])); ;} break; - case 83: -#line 461 "ael.y" + case 84: +#line 465 "ael.y" { (yyval.pval) = npval2(PV_CONTINUE, &(yylsp[(1) - (2)]), &(yylsp[(2) - (2)])); ;} break; - case 84: -#line 462 "ael.y" + case 85: +#line 466 "ael.y" { (yyval.pval) = update_last((yyvsp[(1) - (3)].pval), &(yylsp[(2) - (3)])); (yyval.pval)->u2.statements = (yyvsp[(2) - (3)].pval); set_dads((yyval.pval),(yyvsp[(2) - (3)].pval)); (yyval.pval)->u3.else_statements = (yyvsp[(3) - (3)].pval);set_dads((yyval.pval),(yyvsp[(3) - (3)].pval));;} break; - case 85: -#line 466 "ael.y" - { (yyval.pval)=0; ;} - break; - case 86: -#line 469 "ael.y" - { (yyval.pval) = (yyvsp[(2) - (2)].pval); ;} +#line 470 "ael.y" + { (yyval.pval)=0; ;} break; case 87: -#line 470 "ael.y" - { (yyval.pval) = NULL ; ;} +#line 473 "ael.y" + { (yyval.pval) = (yyvsp[(2) - (2)].pval); ;} break; case 88: -#line 473 "ael.y" - { (yyval.pval) = nword((yyvsp[(1) - (1)].str), &(yylsp[(1) - (1)])); ;} +#line 474 "ael.y" + { (yyval.pval) = NULL ; ;} break; case 89: -#line 474 "ael.y" - { - (yyval.pval) = nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])); - (yyval.pval)->next = nword((yyvsp[(3) - (3)].str), &(yylsp[(3) - (3)])); ;} +#line 477 "ael.y" + { (yyval.pval) = nword((yyvsp[(1) - (1)].str), &(yylsp[(1) - (1)])); ;} break; case 90: -#line 477 "ael.y" +#line 478 "ael.y" { (yyval.pval) = nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])); (yyval.pval)->next = nword((yyvsp[(3) - (3)].str), &(yylsp[(3) - (3)])); ;} break; case 91: -#line 480 "ael.y" +#line 481 "ael.y" { - (yyval.pval) = nword((yyvsp[(1) - (5)].str), &(yylsp[(1) - (5)])); - (yyval.pval)->next = nword((yyvsp[(3) - (5)].str), &(yylsp[(3) - (5)])); - (yyval.pval)->next->next = nword((yyvsp[(5) - (5)].str), &(yylsp[(5) - (5)])); ;} + (yyval.pval) = nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])); + (yyval.pval)->next = nword((yyvsp[(3) - (3)].str), &(yylsp[(3) - (3)])); ;} break; case 92: @@ -2669,7 +2671,7 @@ yyreduce: case 93: #line 488 "ael.y" { - (yyval.pval) = nword(strdup("default"), &(yylsp[(1) - (5)])); + (yyval.pval) = nword((yyvsp[(1) - (5)].str), &(yylsp[(1) - (5)])); (yyval.pval)->next = nword((yyvsp[(3) - (5)].str), &(yylsp[(3) - (5)])); (yyval.pval)->next->next = nword((yyvsp[(5) - (5)].str), &(yylsp[(5) - (5)])); ;} break; @@ -2683,37 +2685,45 @@ yyreduce: break; case 95: -#line 498 "ael.y" - { (yyval.str) = strdup("1"); ;} +#line 496 "ael.y" + { + (yyval.pval) = nword(strdup("default"), &(yylsp[(1) - (5)])); + (yyval.pval)->next = nword((yyvsp[(3) - (5)].str), &(yylsp[(3) - (5)])); + (yyval.pval)->next->next = nword((yyvsp[(5) - (5)].str), &(yylsp[(5) - (5)])); ;} break; case 96: -#line 499 "ael.y" - { (yyval.str) = (yyvsp[(2) - (2)].str); ;} +#line 502 "ael.y" + { (yyval.str) = strdup("1"); ;} break; case 97: #line 503 "ael.y" + { (yyval.str) = (yyvsp[(2) - (2)].str); ;} + break; + + case 98: +#line 507 "ael.y" { /* ext[, pri] default 1 */ (yyval.pval) = nword((yyvsp[(1) - (2)].str), &(yylsp[(1) - (2)])); (yyval.pval)->next = nword((yyvsp[(2) - (2)].str), &(yylsp[(2) - (2)])); ;} break; - case 98: -#line 506 "ael.y" + case 99: +#line 510 "ael.y" { /* context, ext, pri */ (yyval.pval) = nword((yyvsp[(4) - (4)].str), &(yylsp[(4) - (4)])); (yyval.pval)->next = nword((yyvsp[(1) - (4)].str), &(yylsp[(1) - (4)])); (yyval.pval)->next->next = nword((yyvsp[(2) - (4)].str), &(yylsp[(2) - (4)])); ;} break; - case 99: -#line 512 "ael.y" + case 100: +#line 516 "ael.y" {reset_argcount(parseio->scanner);;} break; - case 100: -#line 512 "ael.y" + case 101: +#line 516 "ael.y" { /* XXX original code had @2 but i think we need @5 */ (yyval.pval) = npval2(PV_MACRO_CALL, &(yylsp[(1) - (5)]), &(yylsp[(5) - (5)])); @@ -2721,20 +2731,20 @@ yyreduce: (yyval.pval)->u2.arglist = (yyvsp[(4) - (5)].pval);;} break; - case 101: -#line 517 "ael.y" + case 102: +#line 521 "ael.y" { (yyval.pval)= npval2(PV_MACRO_CALL, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.str = (yyvsp[(1) - (3)].str); ;} break; - case 102: -#line 525 "ael.y" + case 103: +#line 529 "ael.y" {reset_argcount(parseio->scanner);;} break; - case 103: -#line 525 "ael.y" + case 104: +#line 529 "ael.y" { if (strcasecmp((yyvsp[(1) - (3)].str),"goto") == 0) { (yyval.pval) = npval2(PV_GOTO, &(yylsp[(1) - (3)]), &(yylsp[(2) - (3)])); @@ -2746,8 +2756,8 @@ yyreduce: } ;} break; - case 104: -#line 536 "ael.y" + case 105: +#line 540 "ael.y" { (yyval.pval) = update_last((yyvsp[(1) - (3)].pval), &(yylsp[(3) - (3)])); if( (yyval.pval)->type == PV_GOTO ) @@ -2757,179 +2767,179 @@ yyreduce: ;} break; - case 105: -#line 543 "ael.y" + case 106: +#line 547 "ael.y" { (yyval.pval) = update_last((yyvsp[(1) - (2)].pval), &(yylsp[(2) - (2)])); ;} break; - case 106: -#line 546 "ael.y" + case 107: +#line 550 "ael.y" { (yyval.str) = (yyvsp[(1) - (1)].str) ;} break; - case 107: -#line 547 "ael.y" + case 108: +#line 551 "ael.y" { (yyval.str) = strdup(""); ;} break; - case 108: -#line 550 "ael.y" + case 109: +#line 554 "ael.y" { (yyval.pval) = nword((yyvsp[(1) - (1)].str), &(yylsp[(1) - (1)])); ;} break; - case 109: -#line 551 "ael.y" + case 110: +#line 555 "ael.y" { (yyval.pval)= npval(PV_WORD,0/*@1.first_line*/,0/*@1.last_line*/,0/* @1.first_column*/, 0/*@1.last_column*/); (yyval.pval)->u1.str = strdup(""); ;} break; - case 110: -#line 554 "ael.y" + case 111: +#line 558 "ael.y" { (yyval.pval) = linku1((yyvsp[(1) - (3)].pval), nword((yyvsp[(3) - (3)].str), &(yylsp[(3) - (3)]))); ;} break; - case 111: -#line 557 "ael.y" + case 112: +#line 561 "ael.y" { (yyval.pval) = NULL; ;} break; - case 112: -#line 558 "ael.y" + case 113: +#line 562 "ael.y" { (yyval.pval) = linku1((yyvsp[(1) - (2)].pval), (yyvsp[(2) - (2)].pval)); ;} break; - case 113: -#line 561 "ael.y" + case 114: +#line 565 "ael.y" { (yyval.pval) = npval2(PV_CASE, &(yylsp[(1) - (4)]), &(yylsp[(3) - (4)])); /* XXX 3 or 4 ? */ (yyval.pval)->u1.str = (yyvsp[(2) - (4)].str); (yyval.pval)->u2.statements = (yyvsp[(4) - (4)].pval); set_dads((yyval.pval),(yyvsp[(4) - (4)].pval));;} break; - case 114: -#line 565 "ael.y" + case 115: +#line 569 "ael.y" { (yyval.pval) = npval2(PV_DEFAULT, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)])); (yyval.pval)->u1.str = NULL; (yyval.pval)->u2.statements = (yyvsp[(3) - (3)].pval);set_dads((yyval.pval),(yyvsp[(3) - (3)].pval));;} break; - case 115: -#line 569 "ael.y" + case 116: +#line 573 "ael.y" { (yyval.pval) = npval2(PV_PATTERN, &(yylsp[(1) - (4)]), &(yylsp[(4) - (4)])); /* XXX@3 or @4 ? */ (yyval.pval)->u1.str = (yyvsp[(2) - (4)].str); (yyval.pval)->u2.statements = (yyvsp[(4) - (4)].pval);set_dads((yyval.pval),(yyvsp[(4) - (4)].pval));;} break; - case 116: -#line 575 "ael.y" + case 117: +#line 579 "ael.y" { (yyval.pval) = NULL; ;} break; - case 117: -#line 576 "ael.y" + case 118: +#line 580 "ael.y" { (yyval.pval) = linku1((yyvsp[(1) - (2)].pval), (yyvsp[(2) - (2)].pval)); ;} break; - case 118: -#line 579 "ael.y" + case 119: +#line 583 "ael.y" {(yyval.pval)=(yyvsp[(1) - (1)].pval);;} break; - case 119: -#line 580 "ael.y" + case 120: +#line 584 "ael.y" { (yyval.pval)=(yyvsp[(1) - (1)].pval);;} break; - case 120: -#line 581 "ael.y" + case 121: +#line 585 "ael.y" { (yyval.pval) = npval2(PV_CATCH, &(yylsp[(1) - (5)]), &(yylsp[(5) - (5)])); (yyval.pval)->u1.str = (yyvsp[(2) - (5)].str); (yyval.pval)->u2.statements = (yyvsp[(4) - (5)].pval); set_dads((yyval.pval),(yyvsp[(4) - (5)].pval));;} break; - case 121: -#line 587 "ael.y" + case 122: +#line 591 "ael.y" { (yyval.pval) = npval2(PV_SWITCHES, &(yylsp[(1) - (4)]), &(yylsp[(2) - (4)])); (yyval.pval)->u1.list = (yyvsp[(3) - (4)].pval); set_dads((yyval.pval),(yyvsp[(3) - (4)].pval));;} break; - case 122: -#line 592 "ael.y" + case 123: +#line 596 "ael.y" { (yyval.pval) = npval2(PV_ESWITCHES, &(yylsp[(1) - (4)]), &(yylsp[(2) - (4)])); (yyval.pval)->u1.list = (yyvsp[(3) - (4)].pval); set_dads((yyval.pval),(yyvsp[(3) - (4)].pval));;} break; - case 123: -#line 597 "ael.y" + case 124: +#line 601 "ael.y" { (yyval.pval) = NULL; ;} break; - case 124: -#line 598 "ael.y" + case 125: +#line 602 "ael.y" { (yyval.pval) = linku1(nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])), (yyvsp[(3) - (3)].pval)); ;} break; - case 125: -#line 599 "ael.y" + case 126: +#line 603 "ael.y" { char *x; asprintf(&x,"%s@%s", (yyvsp[(1) - (5)].str),(yyvsp[(3) - (5)].str)); free((yyvsp[(1) - (5)].str)); free((yyvsp[(3) - (5)].str)); (yyval.pval) = linku1(nword(x, &(yylsp[(1) - (5)])), (yyvsp[(5) - (5)].pval));;} break; - case 126: -#line 601 "ael.y" + case 127: +#line 605 "ael.y" {(yyval.pval)=(yyvsp[(2) - (2)].pval);;} break; - case 127: -#line 604 "ael.y" + case 128: +#line 608 "ael.y" { (yyval.pval) = nword((yyvsp[(1) - (1)].str), &(yylsp[(1) - (1)])); ;} break; - case 128: -#line 605 "ael.y" + case 129: +#line 609 "ael.y" { (yyval.pval) = nword((yyvsp[(1) - (3)].str), &(yylsp[(1) - (3)])); (yyval.pval)->u2.arglist = (yyvsp[(3) - (3)].pval); prev_word=0; /* XXX sure ? */ ;} break; - case 129: -#line 612 "ael.y" + case 130: +#line 616 "ael.y" { (yyval.pval) = (yyvsp[(1) - (2)].pval); ;} break; - case 130: -#line 613 "ael.y" + case 131: +#line 617 "ael.y" { (yyval.pval) = linku1((yyvsp[(1) - (3)].pval), (yyvsp[(2) - (3)].pval)); ;} break; - case 131: -#line 614 "ael.y" + case 132: +#line 618 "ael.y" {(yyval.pval)=(yyvsp[(1) - (2)].pval);;} break; - case 132: -#line 617 "ael.y" + case 133: +#line 621 "ael.y" { (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[(1) - (4)]), &(yylsp[(4) - (4)])); (yyval.pval)->u1.list = (yyvsp[(3) - (4)].pval);set_dads((yyval.pval),(yyvsp[(3) - (4)].pval));;} break; - case 133: -#line 620 "ael.y" + case 134: +#line 624 "ael.y" { (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[(1) - (3)]), &(yylsp[(3) - (3)]));;} break; /* Line 1270 of yacc.c. */ -#line 2933 "ael.tab.c" +#line 2943 "ael.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -3148,7 +3158,7 @@ yyreturn: } -#line 625 "ael.y" +#line 629 "ael.y" static char *token_equivs1[] = diff --git a/pbx/ael/ael.y b/pbx/ael/ael.y index 657e97067..d54dc01ab 100644 --- a/pbx/ael/ael.y +++ b/pbx/ael/ael.y @@ -352,6 +352,10 @@ hint_word : word { $$ = $1; } asprintf(&($$), "%s %s", $1, $2); free($1); free($2); } + | hint_word COLON word { + asprintf(&($$), "%s:%s", $1, $3); + free($1); + free($3); } | hint_word AMPER word { /* there are often '&' in hints */ asprintf(&($$), "%s&%s", $1, $3); free($1); -- cgit v1.2.3