From 0e8e343e1f281cf3008effb9b088e1943de3a882 Mon Sep 17 00:00:00 2001 From: Luigi Rizzo Date: Tue, 2 May 2006 20:11:24 +0000 Subject: global_statement is really an assignment statement git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@24339 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- pbx/ael/ael.tab.c | 1115 ++++++++++++++++++++++++++--------------------------- pbx/ael/ael.y | 27 +- 2 files changed, 563 insertions(+), 579 deletions(-) (limited to 'pbx') diff --git a/pbx/ael/ael.tab.c b/pbx/ael/ael.tab.c index 5e478f746..99080e6ec 100644 --- a/pbx/ael/ael.tab.c +++ b/pbx/ael/ael.tab.c @@ -420,16 +420,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 14 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 390 +#define YYLAST 374 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 42 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 56 +#define YYNNTS 55 /* YYNRULES -- Number of rules. */ -#define YYNRULES 143 +#define YYNRULES 142 /* YYNRULES -- Number of states. */ -#define YYNSTATES 274 +#define YYNSTATES 271 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -481,18 +481,18 @@ static const unsigned short int yyprhs[] = 0, 0, 3, 5, 7, 10, 13, 15, 17, 19, 21, 23, 25, 30, 32, 33, 42, 47, 51, 53, 56, 59, 60, 66, 67, 69, 73, 76, 79, 83, - 85, 87, 90, 93, 95, 97, 99, 101, 103, 104, - 110, 113, 115, 120, 124, 129, 137, 146, 148, 151, - 154, 160, 162, 170, 171, 176, 179, 182, 187, 189, - 192, 194, 197, 201, 203, 206, 210, 214, 218, 219, - 225, 229, 233, 236, 237, 238, 239, 252, 256, 259, - 263, 267, 270, 273, 274, 280, 283, 286, 289, 293, - 295, 298, 299, 301, 305, 309, 315, 321, 327, 333, - 335, 339, 345, 349, 355, 359, 360, 366, 370, 371, - 375, 379, 382, 384, 385, 387, 388, 392, 394, 397, - 402, 406, 411, 415, 418, 422, 423, 425, 428, 430, - 436, 439, 442, 446, 449, 452, 456, 459, 462, 467, - 469, 472, 475, 480 + 85, 87, 90, 93, 95, 97, 99, 101, 103, 105, + 108, 110, 115, 119, 124, 132, 141, 143, 146, 149, + 155, 157, 165, 166, 171, 174, 177, 182, 184, 187, + 189, 192, 196, 198, 201, 205, 209, 213, 214, 220, + 224, 228, 231, 232, 233, 234, 247, 251, 254, 258, + 262, 265, 268, 269, 275, 278, 281, 284, 288, 290, + 293, 294, 296, 300, 304, 310, 316, 322, 328, 330, + 334, 340, 344, 350, 354, 355, 361, 365, 366, 370, + 374, 377, 379, 380, 382, 383, 387, 389, 392, 397, + 401, 406, 410, 413, 417, 418, 420, 423, 425, 431, + 434, 437, 441, 444, 447, 451, 454, 457, 462, 464, + 467, 470, 475 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -501,52 +501,51 @@ static const yysigned_char yyrhs[] = 43, 0, -1, 44, -1, 45, -1, 44, 45, -1, 44, 1, -1, 47, -1, 49, -1, 50, -1, 8, -1, 41, -1, 36, -1, 48, 3, 46, 55, -1, - 23, -1, -1, 15, 41, 6, 54, 7, 4, 89, + 23, -1, -1, 15, 41, 6, 54, 7, 4, 88, 5, -1, 16, 4, 51, 5, -1, 16, 4, 5, -1, 52, -1, 51, 52, -1, 51, 1, -1, -1, 41, 9, 53, 41, 8, -1, -1, 41, -1, 54, 10, 41, -1, 54, 1, -1, 4, 5, -1, 4, 56, 5, -1, 57, -1, 1, -1, 56, 57, -1, - 56, 1, -1, 60, -1, 97, -1, 91, -1, 92, - -1, 59, -1, -1, 41, 9, 58, 41, 8, -1, - 41, 1, -1, 8, -1, 17, 24, 41, 8, -1, - 41, 24, 71, -1, 30, 41, 24, 71, -1, 31, - 6, 68, 7, 41, 24, 71, -1, 30, 31, 6, - 68, 7, 41, 24, 71, -1, 71, -1, 61, 71, - -1, 61, 1, -1, 68, 11, 68, 11, 68, -1, - 41, -1, 62, 13, 68, 13, 68, 13, 68, -1, - -1, 6, 65, 67, 7, -1, 19, 64, -1, 22, - 64, -1, 20, 6, 63, 7, -1, 41, -1, 41, - 41, -1, 41, -1, 41, 41, -1, 41, 41, 41, - -1, 41, -1, 41, 41, -1, 41, 11, 41, -1, - 18, 64, 4, -1, 4, 61, 5, -1, -1, 41, - 9, 72, 41, 8, -1, 25, 78, 8, -1, 26, - 79, 8, -1, 41, 11, -1, -1, -1, -1, 32, - 6, 73, 41, 8, 74, 41, 8, 75, 41, 7, - 71, -1, 33, 64, 71, -1, 70, 5, -1, 70, - 87, 5, -1, 12, 80, 8, -1, 84, 8, -1, - 41, 8, -1, -1, 84, 9, 76, 41, 8, -1, - 28, 8, -1, 27, 8, -1, 29, 8, -1, 66, - 71, 77, -1, 8, -1, 21, 71, -1, -1, 69, - -1, 69, 13, 69, -1, 69, 10, 69, -1, 69, - 13, 69, 13, 69, -1, 69, 10, 69, 10, 69, - -1, 36, 13, 69, 13, 69, -1, 36, 10, 69, - 10, 69, -1, 69, -1, 69, 10, 69, -1, 69, - 10, 41, 14, 41, -1, 69, 14, 69, -1, 69, - 10, 41, 14, 36, -1, 69, 14, 36, -1, -1, - 41, 6, 81, 86, 7, -1, 41, 6, 7, -1, - -1, 41, 6, 83, -1, 82, 86, 7, -1, 82, - 7, -1, 41, -1, -1, 67, -1, -1, 86, 10, - 85, -1, 88, -1, 87, 88, -1, 34, 41, 11, - 61, -1, 36, 11, 61, -1, 35, 41, 11, 61, - -1, 34, 41, 11, -1, 36, 11, -1, 35, 41, - 11, -1, -1, 90, -1, 89, 90, -1, 71, -1, - 37, 41, 4, 61, 5, -1, 38, 93, -1, 39, - 93, -1, 4, 94, 5, -1, 4, 5, -1, 41, - 8, -1, 94, 41, 8, -1, 94, 1, -1, 46, - 8, -1, 46, 13, 63, 8, -1, 95, -1, 96, - 95, -1, 96, 1, -1, 40, 4, 96, 5, -1, - 40, 4, 5, -1 + 56, 1, -1, 59, -1, 96, -1, 90, -1, 91, + -1, 58, -1, 52, -1, 41, 1, -1, 8, -1, + 17, 24, 41, 8, -1, 41, 24, 70, -1, 30, + 41, 24, 70, -1, 31, 6, 67, 7, 41, 24, + 70, -1, 30, 31, 6, 67, 7, 41, 24, 70, + -1, 70, -1, 60, 70, -1, 60, 1, -1, 67, + 11, 67, 11, 67, -1, 41, -1, 61, 13, 67, + 13, 67, 13, 67, -1, -1, 6, 64, 66, 7, + -1, 19, 63, -1, 22, 63, -1, 20, 6, 62, + 7, -1, 41, -1, 41, 41, -1, 41, -1, 41, + 41, -1, 41, 41, 41, -1, 41, -1, 41, 41, + -1, 41, 11, 41, -1, 18, 63, 4, -1, 4, + 60, 5, -1, -1, 41, 9, 71, 41, 8, -1, + 25, 77, 8, -1, 26, 78, 8, -1, 41, 11, + -1, -1, -1, -1, 32, 6, 72, 41, 8, 73, + 41, 8, 74, 41, 7, 70, -1, 33, 63, 70, + -1, 69, 5, -1, 69, 86, 5, -1, 12, 79, + 8, -1, 83, 8, -1, 41, 8, -1, -1, 83, + 9, 75, 41, 8, -1, 28, 8, -1, 27, 8, + -1, 29, 8, -1, 65, 70, 76, -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, 68, -1, + 68, 10, 68, -1, 68, 10, 41, 14, 41, -1, + 68, 14, 68, -1, 68, 10, 41, 14, 36, -1, + 68, 14, 36, -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, + 66, -1, -1, 85, 10, 84, -1, 87, -1, 86, + 87, -1, 34, 41, 11, 60, -1, 36, 11, 60, + -1, 35, 41, 11, 60, -1, 34, 41, 11, -1, + 36, 11, -1, 35, 41, 11, -1, -1, 89, -1, + 88, 89, -1, 70, -1, 37, 41, 4, 60, 5, + -1, 38, 92, -1, 39, 92, -1, 4, 93, 5, + -1, 4, 5, -1, 41, 8, -1, 93, 41, 8, + -1, 93, 1, -1, 46, 8, -1, 46, 13, 62, + 8, -1, 94, -1, 95, 94, -1, 95, 1, -1, + 40, 4, 95, 5, -1, 40, 4, 5, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -555,18 +554,18 @@ static const unsigned short int yyrline[] = 0, 180, 180, 183, 184, 185, 188, 189, 190, 191, 194, 195, 198, 206, 207, 210, 215, 218, 222, 223, 224, 227, 227, 233, 234, 235, 236, 239, 240, 243, - 244, 245, 246, 249, 250, 251, 252, 253, 254, 254, - 258, 259, 262, 267, 271, 276, 281, 290, 291, 292, - 298, 303, 307, 315, 315, 320, 323, 326, 337, 338, - 345, 346, 351, 359, 360, 364, 370, 378, 381, 381, - 385, 388, 391, 394, 395, 396, 394, 402, 406, 408, - 411, 413, 415, 418, 418, 451, 452, 453, 454, 458, - 461, 462, 467, 468, 471, 474, 478, 482, 486, 493, - 496, 499, 503, 507, 511, 517, 517, 522, 530, 530, - 541, 548, 551, 552, 555, 556, 559, 562, 563, 566, - 570, 574, 578, 581, 584, 589, 590, 591, 594, 595, - 601, 606, 611, 612, 615, 616, 617, 620, 621, 628, - 629, 630, 633, 636 + 244, 245, 246, 249, 250, 251, 252, 253, 254, 255, + 256, 259, 264, 268, 273, 278, 287, 288, 289, 295, + 300, 304, 312, 312, 317, 320, 323, 334, 335, 342, + 343, 348, 356, 357, 361, 367, 375, 378, 378, 382, + 385, 388, 391, 392, 393, 391, 399, 403, 405, 408, + 410, 412, 415, 415, 448, 449, 450, 451, 455, 458, + 459, 464, 465, 468, 471, 475, 479, 483, 490, 493, + 496, 500, 504, 508, 514, 514, 519, 527, 527, 538, + 545, 548, 549, 552, 553, 556, 559, 560, 563, 567, + 571, 575, 578, 581, 586, 587, 588, 591, 592, 598, + 603, 608, 609, 612, 613, 614, 617, 618, 625, 626, + 627, 630, 633 }; #endif @@ -583,12 +582,12 @@ static const char *const yytname[] = "KW_FOR", "KW_WHILE", "KW_CASE", "KW_PATTERN", "KW_DEFAULT", "KW_CATCH", "KW_SWITCHES", "KW_ESWITCHES", "KW_INCLUDES", "word", "$accept", "file", "objects", "object", "context_name", "context", "opt_abstract", "macro", - "globals", "global_statements", "global_statement", "@1", "arglist", - "elements_block", "elements", "element", "@2", "ignorepat", "extension", - "statements", "timerange", "timespec", "test_expr", "@3", "if_like_head", - "word_list", "word3_list", "goto_word", "switch_head", "statement", "@4", - "@5", "@6", "@7", "@8", "opt_else", "target", "jumptarget", "macro_call", - "@9", "application_call_head", "@10", "application_call", "opt_word", + "globals", "global_statements", "assignment", "@1", "arglist", + "elements_block", "elements", "element", "ignorepat", "extension", + "statements", "timerange", "timespec", "test_expr", "@2", "if_like_head", + "word_list", "word3_list", "goto_word", "switch_head", "statement", "@3", + "@4", "@5", "@6", "@7", "opt_else", "target", "jumptarget", "macro_call", + "@8", "application_call_head", "@9", "application_call", "opt_word", "eval_arglist", "case_statements", "case_statement", "macro_statements", "macro_statement", "switches", "eswitches", "switchlist_block", "switchlist", "included_entry", "includeslist", "includes", 0 @@ -614,18 +613,18 @@ static const unsigned char yyr1[] = 0, 42, 43, 44, 44, 44, 45, 45, 45, 45, 46, 46, 47, 48, 48, 49, 50, 50, 51, 51, 51, 53, 52, 54, 54, 54, 54, 55, 55, 56, - 56, 56, 56, 57, 57, 57, 57, 57, 58, 57, - 57, 57, 59, 60, 60, 60, 60, 61, 61, 61, - 62, 62, 63, 65, 64, 66, 66, 66, 67, 67, - 68, 68, 68, 69, 69, 69, 70, 71, 72, 71, - 71, 71, 71, 73, 74, 75, 71, 71, 71, 71, - 71, 71, 71, 76, 71, 71, 71, 71, 71, 71, - 77, 77, 78, 78, 78, 78, 78, 78, 78, 79, - 79, 79, 79, 79, 79, 81, 80, 80, 83, 82, - 84, 84, 85, 85, 86, 86, 86, 87, 87, 88, - 88, 88, 88, 88, 88, 89, 89, 89, 90, 90, - 91, 92, 93, 93, 94, 94, 94, 95, 95, 96, - 96, 96, 97, 97 + 56, 56, 56, 57, 57, 57, 57, 57, 57, 57, + 57, 58, 59, 59, 59, 59, 60, 60, 60, 61, + 61, 62, 64, 63, 65, 65, 65, 66, 66, 67, + 67, 67, 68, 68, 68, 69, 70, 71, 70, 70, + 70, 70, 72, 73, 74, 70, 70, 70, 70, 70, + 70, 70, 75, 70, 70, 70, 70, 70, 70, 76, + 76, 77, 77, 77, 77, 77, 77, 77, 78, 78, + 78, 78, 78, 78, 80, 79, 79, 82, 81, 83, + 83, 84, 84, 85, 85, 85, 86, 86, 87, 87, + 87, 87, 87, 87, 88, 88, 88, 89, 89, 90, + 91, 92, 92, 93, 93, 93, 94, 94, 95, 95, + 95, 96, 96 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -634,18 +633,18 @@ static const unsigned char yyr2[] = 0, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 4, 1, 0, 8, 4, 3, 1, 2, 2, 0, 5, 0, 1, 3, 2, 2, 3, 1, - 1, 2, 2, 1, 1, 1, 1, 1, 0, 5, - 2, 1, 4, 3, 4, 7, 8, 1, 2, 2, - 5, 1, 7, 0, 4, 2, 2, 4, 1, 2, - 1, 2, 3, 1, 2, 3, 3, 3, 0, 5, - 3, 3, 2, 0, 0, 0, 12, 3, 2, 3, - 3, 2, 2, 0, 5, 2, 2, 2, 3, 1, - 2, 0, 1, 3, 3, 5, 5, 5, 5, 1, - 3, 5, 3, 5, 3, 0, 5, 3, 0, 3, - 3, 2, 1, 0, 1, 0, 3, 1, 2, 4, - 3, 4, 3, 2, 3, 0, 1, 2, 1, 5, - 2, 2, 3, 2, 2, 3, 2, 2, 4, 1, - 2, 2, 4, 3 + 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, + 1, 4, 3, 4, 7, 8, 1, 2, 2, 5, + 1, 7, 0, 4, 2, 2, 4, 1, 2, 1, + 2, 3, 1, 2, 3, 3, 3, 0, 5, 3, + 3, 2, 0, 0, 0, 12, 3, 2, 3, 3, + 2, 2, 0, 5, 2, 2, 2, 3, 1, 2, + 0, 1, 3, 3, 5, 5, 5, 5, 1, 3, + 5, 3, 5, 3, 0, 5, 3, 0, 3, 3, + 2, 1, 0, 1, 0, 3, 1, 2, 4, 3, + 4, 3, 2, 3, 0, 1, 2, 1, 5, 2, + 2, 3, 2, 2, 3, 2, 2, 4, 1, 2, + 2, 4, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -657,180 +656,176 @@ static const unsigned char yydefact[] = 7, 8, 0, 0, 1, 5, 4, 0, 23, 17, 0, 0, 18, 11, 10, 0, 24, 0, 21, 20, 16, 19, 0, 12, 26, 0, 0, 0, 30, 27, - 41, 0, 0, 0, 0, 0, 0, 0, 0, 29, - 37, 33, 35, 36, 34, 125, 25, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 40, 38, 0, 32, - 28, 31, 0, 89, 0, 0, 0, 0, 0, 0, + 40, 0, 0, 0, 0, 0, 0, 0, 38, 0, + 29, 37, 33, 35, 36, 34, 124, 25, 0, 0, + 0, 0, 0, 0, 129, 130, 0, 39, 0, 32, + 28, 31, 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 128, 115, 0, 0, 126, 22, 0, 0, 0, 60, - 0, 133, 0, 0, 143, 0, 139, 0, 0, 43, - 0, 47, 0, 0, 53, 0, 55, 0, 56, 0, - 63, 92, 0, 99, 0, 86, 85, 87, 73, 0, - 0, 108, 82, 68, 72, 91, 78, 0, 0, 0, - 0, 117, 111, 58, 114, 0, 81, 83, 15, 127, - 42, 0, 44, 61, 0, 134, 136, 132, 0, 137, - 0, 141, 142, 140, 0, 49, 67, 48, 105, 80, - 0, 66, 51, 0, 0, 0, 0, 0, 0, 64, - 0, 0, 70, 0, 0, 71, 0, 77, 0, 109, - 0, 0, 88, 0, 0, 123, 79, 118, 59, 110, - 113, 0, 0, 62, 0, 135, 0, 39, 107, 115, - 0, 0, 57, 0, 0, 0, 65, 94, 93, 63, - 100, 104, 102, 0, 0, 0, 90, 122, 124, 0, - 112, 116, 0, 0, 0, 138, 0, 54, 0, 0, - 0, 0, 0, 0, 0, 74, 129, 69, 0, 0, - 84, 0, 45, 106, 0, 0, 98, 97, 96, 95, - 103, 101, 0, 46, 0, 50, 0, 0, 75, 52, - 0, 0, 0, 76 + 127, 114, 0, 0, 125, 22, 0, 0, 0, 59, + 0, 132, 0, 0, 142, 0, 138, 0, 42, 0, + 46, 0, 0, 52, 0, 54, 0, 55, 0, 62, + 91, 0, 98, 0, 85, 84, 86, 72, 0, 0, + 107, 81, 67, 71, 90, 77, 0, 0, 0, 0, + 116, 110, 57, 113, 0, 80, 82, 15, 126, 41, + 0, 43, 60, 0, 133, 135, 131, 0, 136, 0, + 140, 141, 139, 48, 66, 47, 104, 79, 0, 65, + 50, 0, 0, 0, 0, 0, 0, 63, 0, 0, + 69, 0, 0, 70, 0, 76, 0, 108, 0, 0, + 87, 0, 0, 122, 78, 117, 58, 109, 112, 0, + 0, 61, 0, 134, 0, 106, 114, 0, 0, 56, + 0, 0, 0, 64, 93, 92, 62, 99, 103, 101, + 0, 0, 0, 89, 121, 123, 0, 111, 115, 0, + 0, 0, 137, 0, 53, 0, 0, 0, 0, 0, + 0, 0, 73, 128, 68, 0, 0, 83, 0, 44, + 105, 0, 0, 97, 96, 95, 94, 102, 100, 0, + 45, 0, 49, 0, 0, 74, 51, 0, 0, 0, + 75 }; /* YYDEFGOTO[NTERM-NUM]. */ static const short int yydefgoto[] = { -1, 5, 6, 7, 105, 8, 9, 10, 11, 21, - 22, 37, 27, 33, 48, 49, 108, 50, 51, 110, - 173, 174, 115, 170, 88, 144, 175, 121, 89, 111, - 190, 186, 262, 270, 201, 192, 122, 124, 113, 209, - 91, 189, 92, 231, 145, 140, 141, 93, 94, 52, - 53, 63, 103, 106, 107, 54 + 48, 37, 27, 33, 49, 50, 51, 52, 109, 171, + 172, 114, 168, 88, 143, 173, 120, 89, 110, 188, + 184, 259, 267, 199, 190, 121, 123, 112, 206, 91, + 187, 92, 228, 144, 139, 140, 93, 94, 53, 54, + 64, 103, 106, 107, 55 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -142 +#define YYPACT_NINF -102 static const short int yypact[] = { - 111, -142, -36, 28, -142, 7, 367, -142, -142, 27, - -142, -142, 10, 3, -142, -142, -142, -12, -7, -142, - 48, 26, -142, -142, -142, 64, -142, 13, -142, -142, - -142, -142, 20, -142, -142, 86, 58, 62, -142, -142, - -142, 94, -22, 125, 129, 129, 133, 2, 127, -142, - -142, -142, -142, -142, -142, 307, -142, 145, 118, 165, - 148, 143, 12, -142, -142, 89, -142, -142, 333, -142, - -142, -142, 333, -142, 144, 180, 180, 181, 180, 47, - 149, 192, 193, 194, 183, 180, 162, 139, 333, 104, - -142, -5, 174, 281, -142, -142, 196, 143, 333, 170, - 201, -142, 210, 34, -142, 138, -142, 5, 184, -142, - 225, -142, 218, 219, -142, 227, -142, 191, -142, 163, - 54, 167, 226, 8, 228, -142, -142, -142, -142, 333, - 231, -142, -142, -142, -142, 217, -142, 198, 199, 230, - 107, -142, -142, 205, -142, 142, -142, -142, -142, -142, - -142, 235, -142, 207, 208, -142, -142, -142, 247, -142, - 191, -142, -142, -142, 253, -142, -142, -142, 257, -142, - 221, -142, 70, 252, 261, 258, 149, 149, 229, -142, - 149, 149, -142, 237, 119, -142, 238, -142, 333, -142, - 249, 333, -142, 260, 265, 333, -142, -142, -142, -142, - 250, 251, 254, -142, 248, -142, 286, -142, -142, 221, - 290, 143, -142, 143, 288, 289, -142, 294, 292, 1, - -142, -142, -142, 304, 255, 308, -142, 333, 333, 44, - -142, -142, 309, 296, 333, -142, 171, -142, 310, 313, - 149, 149, 149, 149, 134, -142, -142, -142, 88, 187, - -142, 333, -142, -142, 143, 143, -142, -142, -142, -142, - -142, -142, 280, -142, 315, -142, 322, 143, -142, -142, - 297, 324, 333, -142 + 5, -102, -38, 6, -102, 34, 141, -102, -102, 14, + -102, -102, 12, 3, -102, -102, -102, 93, 32, -102, + 46, 10, -102, -102, -102, 78, -102, 79, -102, -102, + -102, -102, 18, -102, -102, 84, 56, 69, -102, -102, + -102, 92, -17, 139, 143, 143, 159, 116, -102, 138, + -102, -102, -102, -102, -102, -102, 303, -102, 166, 157, + 198, 196, 173, 11, -102, -102, -3, -102, 329, -102, + -102, -102, 329, -102, 180, 201, 201, 217, 201, 112, + 187, 219, 222, 223, 226, 201, 193, 174, 329, 96, + -102, 0, 164, 277, -102, -102, 227, 173, 329, 195, + 230, -102, 234, 24, -102, 154, -102, 4, -102, 221, + -102, 232, 236, -102, 241, -102, 210, -102, 71, -5, + 186, 249, 17, 250, -102, -102, -102, -102, 329, 256, + -102, -102, -102, -102, 240, -102, 224, 225, 253, 102, + -102, -102, 231, -102, 144, -102, -102, -102, -102, -102, + 260, -102, 233, 245, -102, -102, -102, 267, -102, 210, + -102, -102, -102, -102, -102, -102, 261, -102, 246, -102, + 68, 275, 283, 280, 187, 187, 252, -102, 187, 187, + -102, 257, 130, -102, 259, -102, 329, -102, 271, 329, + -102, 290, 297, 329, -102, -102, -102, -102, 272, 276, + 278, -102, 270, -102, 308, -102, 246, 313, 173, -102, + 173, 314, 321, -102, 316, 325, 52, -102, -102, -102, + 319, 251, 331, -102, 329, 329, 42, -102, -102, 334, + 322, 329, -102, 190, -102, 330, 339, 187, 187, 187, + 187, 145, -102, -102, -102, 86, 183, -102, 329, -102, + -102, 173, 173, -102, -102, -102, -102, -102, -102, 304, + -102, 340, -102, 344, 173, -102, -102, 318, 353, 329, + -102 }; /* YYPGOTO[NTERM-NUM]. */ static const short int yypgoto[] = { - -142, -142, -142, 336, 326, -142, -142, -142, -142, -142, - 325, -142, -142, -142, -142, 299, -142, -142, -142, -141, - -142, 189, 6, -142, -142, 186, -57, -79, -142, -55, - -142, -142, -142, -142, -142, -142, -142, -142, -142, -142, - -142, -142, -142, -142, 141, -142, 214, -142, 264, -142, - -142, 318, -142, 262, -142, -142 + -102, -102, -102, 357, 347, -102, -102, -102, -102, -102, + 9, -102, -102, -102, -102, 317, -102, -102, -101, -102, + 206, 50, -102, -102, 199, -58, -79, -102, -56, -102, + -102, -102, -102, -102, -102, -102, -102, -102, -102, -102, + -102, -102, -102, 162, -102, 235, -102, 279, -102, -102, + 324, -102, 264, -102, -102 }; /* 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 -122 +#define YYTABLE_NINF -121 static const short int yytable[] = { - 90, 123, 142, 66, 100, 12, 161, 14, 19, 59, - 162, 67, 178, 109, 34, 244, 18, 101, 183, 60, - 35, 38, 184, 36, 23, 39, 68, 29, 40, 24, - 17, 30, 13, 135, 26, 156, 143, 41, 90, 157, - 151, 23, 179, 152, 20, 165, 24, 224, 72, -120, - 42, 43, 73, 102, 229, 167, 74, 28, 44, 45, - 46, 47, 75, 76, 77, 178, 78, 20, 32, 79, - 80, 81, 82, 83, 187, 158, 84, 85, -120, -120, - -120, -60, 116, 119, 118, 87, 248, 249, 120, 165, - 55, 129, 72, -119, 104, 179, 73, 214, 215, 56, - 74, 217, 218, 57, 220, 222, 75, 76, 77, 136, - 78, 153, 196, 79, 80, 81, 82, 83, 58, 1, - 84, 85, -119, -119, -119, 23, 2, 3, 69, 87, - 24, 61, 70, 62, 4, 40, 226, 65, 137, 138, - 139, 137, 138, 139, 41, 131, 159, 132, 133, 199, - 134, 160, 200, 95, 238, 221, 239, 42, 43, 96, - 120, 256, 257, 258, 259, 44, 45, 46, 47, 167, - 260, 97, 98, 176, 167, 261, 177, 180, 253, 252, - 181, 200, 146, 147, 99, 112, 114, 117, 165, 128, - 120, 72, -121, 167, 167, 73, 263, 264, 265, 74, - 125, 126, 127, 130, 150, 75, 76, 77, 154, 78, - 269, 153, 79, 80, 81, 82, 83, 273, 155, 84, - 85, -121, -121, -121, 168, 164, 165, 169, 87, 72, - 166, 171, 172, 73, 182, 188, 185, 74, 191, 193, - 194, 195, 202, 75, 76, 77, 198, 78, 203, 204, - 79, 80, 81, 82, 83, 205, 165, 84, 85, 72, - 246, 207, 143, 73, 208, 211, 87, 74, 212, 213, - 216, 227, 234, 75, 76, 77, 228, 78, 219, 223, - 79, 80, 81, 82, 83, 72, 148, 84, 85, 73, - 225, 230, 232, 74, 235, 233, 87, 237, 240, 75, - 76, 77, 241, 78, 242, 243, 79, 80, 81, 82, - 83, 72, 245, 84, 85, 73, 247, 250, 86, 74, - 251, 266, 87, 254, 255, 75, 76, 77, 267, 78, - 268, 272, 79, 80, 81, 82, 83, 72, 271, 84, - 85, 73, 16, 25, 86, 74, 31, 71, 87, 206, - 236, 75, 76, 77, 197, 78, 210, 149, 79, 80, - 81, 82, 83, 64, 0, 84, 85, -2, 15, 163, - -14, 0, 0, 0, 87, 1, 0, 0, 0, 0, - 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, - 4 + 90, 122, 104, 12, 100, 160, 176, 141, 19, 161, + 13, 29, 108, 1, 60, 30, 101, 17, 18, 38, + 2, 3, 22, 39, 61, 155, 40, 181, 4, 156, + 31, 182, 134, 23, 14, 41, 177, 90, 24, 150, + 23, 142, 151, 163, 20, 24, 72, -119, 42, 43, + 73, 20, 102, 165, 74, 28, 44, 45, 46, 47, + 75, 76, 77, 176, 78, 157, 241, 79, 80, 81, + 82, 83, 185, 26, 84, 85, -119, -119, -119, -59, + 34, 174, 32, 87, 175, 221, 35, 163, 56, 36, + 72, -118, 226, 177, 73, 211, 212, 57, 74, 214, + 215, 135, 217, 219, 75, 76, 77, 194, 78, 152, + 58, 79, 80, 81, 82, 83, 59, 67, 84, 85, + -118, -118, -118, 245, 246, 28, 115, 87, 117, 23, + 136, 137, 138, 223, 24, 128, 136, 137, 138, 69, + 68, -2, 15, 70, -14, 62, 40, 63, 118, 1, + 235, 197, 236, 119, 198, 41, 2, 3, 253, 254, + 255, 256, 158, 66, 4, 165, 218, 159, 42, 43, + 165, 119, 145, 146, 95, 249, 44, 45, 46, 47, + 130, 257, 131, 132, 163, 133, 258, 72, -120, 165, + 165, 73, 260, 261, 262, 74, 178, 250, 96, 179, + 198, 75, 76, 77, 97, 78, 266, 113, 79, 80, + 81, 82, 83, 270, 99, 84, 85, -120, -120, -120, + 98, 111, 163, 116, 87, 72, 164, 124, 119, 73, + 125, 126, 127, 74, 129, 149, 152, 153, 166, 75, + 76, 77, 154, 78, 167, 169, 79, 80, 81, 82, + 83, 170, 163, 84, 85, 72, 243, 180, 183, 73, + 186, 189, 87, 74, 193, 191, 192, 200, 205, 75, + 76, 77, 196, 78, 201, 203, 79, 80, 81, 82, + 83, 72, 147, 84, 85, 73, 202, 142, 208, 74, + 209, 210, 87, 213, 231, 75, 76, 77, 216, 78, + 220, 224, 79, 80, 81, 82, 83, 72, 225, 84, + 85, 73, 222, 227, 86, 74, 232, 229, 87, 230, + 234, 75, 76, 77, 237, 78, 239, 242, 79, 80, + 81, 82, 83, 72, 238, 84, 85, 73, 240, 244, + 86, 74, 247, 251, 87, 263, 248, 75, 76, 77, + 252, 78, 265, 264, 79, 80, 81, 82, 83, 268, + 269, 84, 85, 16, 25, 204, 71, 207, 233, 65, + 87, 162, 148, 0, 195 }; static const short int yycheck[] = { - 55, 80, 7, 1, 61, 41, 1, 0, 5, 31, - 5, 9, 11, 68, 1, 14, 6, 5, 10, 41, - 7, 1, 14, 10, 36, 5, 24, 1, 8, 41, - 3, 5, 4, 88, 41, 1, 41, 17, 93, 5, - 97, 36, 41, 98, 41, 1, 41, 188, 4, 5, - 30, 31, 8, 41, 195, 110, 12, 9, 38, 39, - 40, 41, 18, 19, 20, 11, 22, 41, 4, 25, - 26, 27, 28, 29, 129, 41, 32, 33, 34, 35, - 36, 11, 76, 36, 78, 41, 227, 228, 41, 1, - 4, 85, 4, 5, 5, 41, 8, 176, 177, 41, - 12, 180, 181, 41, 183, 184, 18, 19, 20, 5, - 22, 41, 5, 25, 26, 27, 28, 29, 24, 8, - 32, 33, 34, 35, 36, 36, 15, 16, 1, 41, - 41, 6, 5, 4, 23, 8, 191, 4, 34, 35, - 36, 34, 35, 36, 17, 6, 8, 8, 9, 7, - 11, 13, 10, 8, 211, 36, 213, 30, 31, 41, - 41, 240, 241, 242, 243, 38, 39, 40, 41, 224, - 36, 6, 24, 10, 229, 41, 13, 10, 7, 234, - 13, 10, 8, 9, 41, 41, 6, 6, 1, 6, - 41, 4, 5, 248, 249, 8, 251, 254, 255, 12, - 8, 8, 8, 41, 8, 18, 19, 20, 7, 22, - 267, 41, 25, 26, 27, 28, 29, 272, 8, 32, - 33, 34, 35, 36, 6, 41, 1, 8, 41, 4, - 5, 4, 41, 8, 8, 4, 8, 12, 21, 41, - 41, 11, 7, 18, 19, 20, 41, 22, 41, 41, - 25, 26, 27, 28, 29, 8, 1, 32, 33, 4, - 5, 8, 41, 8, 7, 13, 41, 12, 7, 11, - 41, 11, 24, 18, 19, 20, 11, 22, 41, 41, - 25, 26, 27, 28, 29, 4, 5, 32, 33, 8, - 41, 41, 41, 12, 8, 41, 41, 7, 10, 18, - 19, 20, 13, 22, 10, 13, 25, 26, 27, 28, - 29, 4, 8, 32, 33, 8, 8, 8, 37, 12, - 24, 41, 41, 13, 11, 18, 19, 20, 13, 22, - 8, 7, 25, 26, 27, 28, 29, 4, 41, 32, - 33, 8, 6, 17, 37, 12, 21, 48, 41, 160, - 209, 18, 19, 20, 140, 22, 170, 93, 25, 26, - 27, 28, 29, 45, -1, 32, 33, 0, 1, 107, - 3, -1, -1, -1, 41, 8, -1, -1, -1, -1, - -1, -1, 15, 16, -1, -1, -1, -1, -1, -1, - 23 + 56, 80, 5, 41, 62, 1, 11, 7, 5, 5, + 4, 1, 68, 8, 31, 5, 5, 3, 6, 1, + 15, 16, 13, 5, 41, 1, 8, 10, 23, 5, + 21, 14, 88, 36, 0, 17, 41, 93, 41, 97, + 36, 41, 98, 1, 41, 41, 4, 5, 30, 31, + 8, 41, 41, 109, 12, 9, 38, 39, 40, 41, + 18, 19, 20, 11, 22, 41, 14, 25, 26, 27, + 28, 29, 128, 41, 32, 33, 34, 35, 36, 11, + 1, 10, 4, 41, 13, 186, 7, 1, 4, 10, + 4, 5, 193, 41, 8, 174, 175, 41, 12, 178, + 179, 5, 181, 182, 18, 19, 20, 5, 22, 41, + 41, 25, 26, 27, 28, 29, 24, 1, 32, 33, + 34, 35, 36, 224, 225, 9, 76, 41, 78, 36, + 34, 35, 36, 189, 41, 85, 34, 35, 36, 1, + 24, 0, 1, 5, 3, 6, 8, 4, 36, 8, + 208, 7, 210, 41, 10, 17, 15, 16, 237, 238, + 239, 240, 8, 4, 23, 221, 36, 13, 30, 31, + 226, 41, 8, 9, 8, 231, 38, 39, 40, 41, + 6, 36, 8, 9, 1, 11, 41, 4, 5, 245, + 246, 8, 248, 251, 252, 12, 10, 7, 41, 13, + 10, 18, 19, 20, 6, 22, 264, 6, 25, 26, + 27, 28, 29, 269, 41, 32, 33, 34, 35, 36, + 24, 41, 1, 6, 41, 4, 5, 8, 41, 8, + 8, 8, 6, 12, 41, 8, 41, 7, 6, 18, + 19, 20, 8, 22, 8, 4, 25, 26, 27, 28, + 29, 41, 1, 32, 33, 4, 5, 8, 8, 8, + 4, 21, 41, 12, 11, 41, 41, 7, 7, 18, + 19, 20, 41, 22, 41, 8, 25, 26, 27, 28, + 29, 4, 5, 32, 33, 8, 41, 41, 13, 12, + 7, 11, 41, 41, 24, 18, 19, 20, 41, 22, + 41, 11, 25, 26, 27, 28, 29, 4, 11, 32, + 33, 8, 41, 41, 37, 12, 8, 41, 41, 41, + 7, 18, 19, 20, 10, 22, 10, 8, 25, 26, + 27, 28, 29, 4, 13, 32, 33, 8, 13, 8, + 37, 12, 8, 13, 41, 41, 24, 18, 19, 20, + 11, 22, 8, 13, 25, 26, 27, 28, 29, 41, + 7, 32, 33, 6, 17, 159, 49, 168, 206, 45, + 41, 107, 93, -1, 139 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -841,30 +836,30 @@ static const unsigned char yystos[] = 49, 50, 41, 4, 0, 1, 45, 3, 6, 5, 41, 51, 52, 36, 41, 46, 41, 54, 9, 1, 5, 52, 4, 55, 1, 7, 10, 53, 1, 5, - 8, 17, 30, 31, 38, 39, 40, 41, 56, 57, - 59, 60, 91, 92, 97, 4, 41, 41, 24, 31, - 41, 6, 4, 93, 93, 4, 1, 9, 24, 1, + 8, 17, 30, 31, 38, 39, 40, 41, 52, 56, + 57, 58, 59, 90, 91, 96, 4, 41, 41, 24, + 31, 41, 6, 4, 92, 92, 4, 1, 24, 1, 5, 57, 4, 8, 12, 18, 19, 20, 22, 25, - 26, 27, 28, 29, 32, 33, 37, 41, 66, 70, - 71, 82, 84, 89, 90, 8, 41, 6, 24, 41, - 68, 5, 41, 94, 5, 46, 95, 96, 58, 71, - 61, 71, 41, 80, 6, 64, 64, 6, 64, 36, - 41, 69, 78, 69, 79, 8, 8, 8, 6, 64, - 41, 6, 8, 9, 11, 71, 5, 34, 35, 36, - 87, 88, 7, 41, 67, 86, 8, 9, 5, 90, - 8, 68, 71, 41, 7, 8, 1, 5, 41, 8, - 13, 1, 5, 95, 41, 1, 5, 71, 6, 8, - 65, 4, 41, 62, 63, 68, 10, 13, 11, 41, - 10, 13, 8, 10, 14, 8, 73, 71, 4, 83, - 72, 21, 77, 41, 41, 11, 5, 88, 41, 7, - 10, 76, 7, 41, 41, 8, 63, 8, 7, 81, - 67, 13, 7, 11, 69, 69, 41, 69, 69, 41, - 69, 36, 69, 41, 61, 41, 71, 11, 11, 61, - 41, 85, 41, 41, 24, 8, 86, 7, 68, 68, - 10, 13, 10, 13, 14, 8, 5, 8, 61, 61, - 8, 24, 71, 7, 13, 11, 69, 69, 69, 69, - 36, 41, 74, 71, 68, 68, 41, 13, 8, 68, - 75, 41, 7, 71 + 26, 27, 28, 29, 32, 33, 37, 41, 65, 69, + 70, 81, 83, 88, 89, 8, 41, 6, 24, 41, + 67, 5, 41, 93, 5, 46, 94, 95, 70, 60, + 70, 41, 79, 6, 63, 63, 6, 63, 36, 41, + 68, 77, 68, 78, 8, 8, 8, 6, 63, 41, + 6, 8, 9, 11, 70, 5, 34, 35, 36, 86, + 87, 7, 41, 66, 85, 8, 9, 5, 89, 8, + 67, 70, 41, 7, 8, 1, 5, 41, 8, 13, + 1, 5, 94, 1, 5, 70, 6, 8, 64, 4, + 41, 61, 62, 67, 10, 13, 11, 41, 10, 13, + 8, 10, 14, 8, 72, 70, 4, 82, 71, 21, + 76, 41, 41, 11, 5, 87, 41, 7, 10, 75, + 7, 41, 41, 8, 62, 7, 80, 66, 13, 7, + 11, 68, 68, 41, 68, 68, 41, 68, 36, 68, + 41, 60, 41, 70, 11, 11, 60, 41, 84, 41, + 41, 24, 8, 85, 7, 67, 67, 10, 13, 10, + 13, 14, 8, 5, 8, 60, 60, 8, 24, 70, + 7, 13, 11, 68, 68, 68, 68, 36, 41, 73, + 70, 67, 67, 41, 13, 8, 67, 74, 41, 7, + 70 }; #define yyerrok (yyerrstatus = 0) @@ -1242,7 +1237,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) case 41: /* "word" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1246 "ael.tab.c" +#line 1241 "ael.tab.c" break; case 44: /* "objects" */ #line 159 "ael.y" @@ -1250,7 +1245,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1254 "ael.tab.c" +#line 1249 "ael.tab.c" break; case 45: /* "object" */ #line 159 "ael.y" @@ -1258,12 +1253,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1262 "ael.tab.c" +#line 1257 "ael.tab.c" break; case 46: /* "context_name" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1267 "ael.tab.c" +#line 1262 "ael.tab.c" break; case 47: /* "context" */ #line 159 "ael.y" @@ -1271,7 +1266,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1275 "ael.tab.c" +#line 1270 "ael.tab.c" break; case 49: /* "macro" */ #line 159 "ael.y" @@ -1279,7 +1274,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1283 "ael.tab.c" +#line 1278 "ael.tab.c" break; case 50: /* "globals" */ #line 159 "ael.y" @@ -1287,7 +1282,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1291 "ael.tab.c" +#line 1286 "ael.tab.c" break; case 51: /* "global_statements" */ #line 159 "ael.y" @@ -1295,15 +1290,15 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1299 "ael.tab.c" +#line 1294 "ael.tab.c" break; - case 52: /* "global_statement" */ + case 52: /* "assignment" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1307 "ael.tab.c" +#line 1302 "ael.tab.c" break; case 54: /* "arglist" */ #line 159 "ael.y" @@ -1311,7 +1306,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1315 "ael.tab.c" +#line 1310 "ael.tab.c" break; case 55: /* "elements_block" */ #line 159 "ael.y" @@ -1319,7 +1314,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1323 "ael.tab.c" +#line 1318 "ael.tab.c" break; case 56: /* "elements" */ #line 159 "ael.y" @@ -1327,7 +1322,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1331 "ael.tab.c" +#line 1326 "ael.tab.c" break; case 57: /* "element" */ #line 159 "ael.y" @@ -1335,237 +1330,237 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1339 "ael.tab.c" +#line 1334 "ael.tab.c" break; - case 59: /* "ignorepat" */ + case 58: /* "ignorepat" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1347 "ael.tab.c" +#line 1342 "ael.tab.c" break; - case 60: /* "extension" */ + case 59: /* "extension" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1355 "ael.tab.c" +#line 1350 "ael.tab.c" break; - case 61: /* "statements" */ + case 60: /* "statements" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1363 "ael.tab.c" +#line 1358 "ael.tab.c" break; - case 62: /* "timerange" */ + case 61: /* "timerange" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1368 "ael.tab.c" +#line 1363 "ael.tab.c" break; - case 63: /* "timespec" */ + case 62: /* "timespec" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1376 "ael.tab.c" +#line 1371 "ael.tab.c" break; - case 64: /* "test_expr" */ + case 63: /* "test_expr" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1381 "ael.tab.c" +#line 1376 "ael.tab.c" break; - case 66: /* "if_like_head" */ + case 65: /* "if_like_head" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1389 "ael.tab.c" +#line 1384 "ael.tab.c" break; - case 67: /* "word_list" */ + case 66: /* "word_list" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1394 "ael.tab.c" +#line 1389 "ael.tab.c" break; - case 68: /* "word3_list" */ + case 67: /* "word3_list" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1399 "ael.tab.c" +#line 1394 "ael.tab.c" break; - case 69: /* "goto_word" */ + case 68: /* "goto_word" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1404 "ael.tab.c" +#line 1399 "ael.tab.c" break; - case 70: /* "switch_head" */ + case 69: /* "switch_head" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1412 "ael.tab.c" +#line 1407 "ael.tab.c" break; - case 71: /* "statement" */ + case 70: /* "statement" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1420 "ael.tab.c" +#line 1415 "ael.tab.c" break; - case 77: /* "opt_else" */ + case 76: /* "opt_else" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1428 "ael.tab.c" +#line 1423 "ael.tab.c" break; - case 78: /* "target" */ + case 77: /* "target" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1436 "ael.tab.c" +#line 1431 "ael.tab.c" break; - case 79: /* "jumptarget" */ + case 78: /* "jumptarget" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1444 "ael.tab.c" +#line 1439 "ael.tab.c" break; - case 80: /* "macro_call" */ + case 79: /* "macro_call" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1452 "ael.tab.c" +#line 1447 "ael.tab.c" break; - case 82: /* "application_call_head" */ + case 81: /* "application_call_head" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1460 "ael.tab.c" +#line 1455 "ael.tab.c" break; - case 84: /* "application_call" */ + case 83: /* "application_call" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1468 "ael.tab.c" +#line 1463 "ael.tab.c" break; - case 85: /* "opt_word" */ + case 84: /* "opt_word" */ #line 173 "ael.y" { free((yyvaluep->str));}; -#line 1473 "ael.tab.c" +#line 1468 "ael.tab.c" break; - case 86: /* "eval_arglist" */ + case 85: /* "eval_arglist" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1481 "ael.tab.c" +#line 1476 "ael.tab.c" break; - case 87: /* "case_statements" */ + case 86: /* "case_statements" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1489 "ael.tab.c" +#line 1484 "ael.tab.c" break; - case 88: /* "case_statement" */ + case 87: /* "case_statement" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1497 "ael.tab.c" +#line 1492 "ael.tab.c" break; - case 89: /* "macro_statements" */ + case 88: /* "macro_statements" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1505 "ael.tab.c" +#line 1500 "ael.tab.c" break; - case 90: /* "macro_statement" */ + case 89: /* "macro_statement" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1513 "ael.tab.c" +#line 1508 "ael.tab.c" break; - case 91: /* "switches" */ + case 90: /* "switches" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1521 "ael.tab.c" +#line 1516 "ael.tab.c" break; - case 92: /* "eswitches" */ + case 91: /* "eswitches" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1529 "ael.tab.c" +#line 1524 "ael.tab.c" break; - case 93: /* "switchlist_block" */ + case 92: /* "switchlist_block" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1537 "ael.tab.c" +#line 1532 "ael.tab.c" break; - case 94: /* "switchlist" */ + case 93: /* "switchlist" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1545 "ael.tab.c" +#line 1540 "ael.tab.c" break; - case 95: /* "included_entry" */ + case 94: /* "included_entry" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1553 "ael.tab.c" +#line 1548 "ael.tab.c" break; - case 96: /* "includeslist" */ + case 95: /* "includeslist" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1561 "ael.tab.c" +#line 1556 "ael.tab.c" break; - case 97: /* "includes" */ + case 96: /* "includes" */ #line 159 "ael.y" { destroy_pval((yyvaluep->pval)); prev_word=0; }; -#line 1569 "ael.tab.c" +#line 1564 "ael.tab.c" break; default: @@ -2075,44 +2070,36 @@ yyreduce: case 38: #line 254 "ael.y" - { reset_semicount(parseio->scanner); ;} + {(yyval.pval)=(yyvsp[0].pval);;} break; case 39: -#line 254 "ael.y" - { - (yyval.pval) = npval2(PV_VARDEC, &(yylsp[-4]), &(yylsp[0])); - (yyval.pval)->u1.str = (yyvsp[-4].str); - (yyval.pval)->u2.val = (yyvsp[-1].str); ;} +#line 255 "ael.y" + {free((yyvsp[-1].str)); (yyval.pval)=0;;} break; case 40: -#line 258 "ael.y" - {free((yyvsp[-1].str)); (yyval.pval)=0;;} +#line 256 "ael.y" + {(yyval.pval)=0;/* allow older docs to be read */;} break; case 41: #line 259 "ael.y" - {(yyval.pval)=0;/* allow older docs to be read */;} - break; - - case 42: -#line 262 "ael.y" { (yyval.pval) = npval2(PV_IGNOREPAT, &(yylsp[-3]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str);;} break; - case 43: -#line 267 "ael.y" + case 42: +#line 264 "ael.y" { (yyval.pval) = npval2(PV_EXTENSION, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-2].str); (yyval.pval)->u2.statements = (yyvsp[0].pval); ;} break; - case 44: -#line 271 "ael.y" + case 43: +#line 268 "ael.y" { (yyval.pval) = npval2(PV_EXTENSION, &(yylsp[-3]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-2].str); @@ -2120,8 +2107,8 @@ yyreduce: (yyval.pval)->u4.regexten=1;;} break; - case 45: -#line 276 "ael.y" + case 44: +#line 273 "ael.y" { (yyval.pval) = npval2(PV_EXTENSION, &(yylsp[-6]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-2].str); @@ -2129,8 +2116,8 @@ yyreduce: (yyval.pval)->u3.hints = (yyvsp[-4].str);;} break; - case 46: -#line 281 "ael.y" + case 45: +#line 278 "ael.y" { (yyval.pval) = npval2(PV_EXTENSION, &(yylsp[-7]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-2].str); @@ -2139,23 +2126,23 @@ yyreduce: (yyval.pval)->u3.hints = (yyvsp[-4].str);;} break; - case 47: -#line 290 "ael.y" + case 46: +#line 287 "ael.y" {(yyval.pval)=(yyvsp[0].pval);;} break; - case 48: -#line 291 "ael.y" + case 47: +#line 288 "ael.y" { (yyval.pval) = linku1((yyvsp[-1].pval), (yyvsp[0].pval)); ;} break; - case 49: -#line 292 "ael.y" + case 48: +#line 289 "ael.y" {(yyval.pval)=(yyvsp[-1].pval);;} break; - case 50: -#line 298 "ael.y" + case 49: +#line 295 "ael.y" { asprintf(&(yyval.str), "%s:%s:%s", (yyvsp[-4].str), (yyvsp[-2].str), (yyvsp[0].str)); free((yyvsp[-4].str)); @@ -2163,13 +2150,13 @@ yyreduce: free((yyvsp[0].str)); ;} break; - case 51: -#line 303 "ael.y" + case 50: +#line 300 "ael.y" { (yyval.str) = (yyvsp[0].str); ;} break; - case 52: -#line 307 "ael.y" + case 51: +#line 304 "ael.y" { (yyval.pval) = nword((yyvsp[-6].str), &(yylsp[-6])); (yyval.pval)->u1.list = nword((yyvsp[-4].str), &(yylsp[-4])); @@ -2177,46 +2164,46 @@ yyreduce: (yyval.pval)->u1.list->next->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 53: -#line 315 "ael.y" + case 52: +#line 312 "ael.y" { reset_parencount(parseio->scanner); ;} break; - case 54: -#line 315 "ael.y" + case 53: +#line 312 "ael.y" { (yyval.str) = (yyvsp[-1].str); ;} break; - case 55: -#line 320 "ael.y" + case 54: +#line 317 "ael.y" { (yyval.pval)= npval2(PV_IF, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[0].str); ;} break; - case 56: -#line 323 "ael.y" + case 55: +#line 320 "ael.y" { (yyval.pval) = npval2(PV_RANDOM, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.str=(yyvsp[0].str);;} break; - case 57: -#line 326 "ael.y" + case 56: +#line 323 "ael.y" { (yyval.pval) = npval2(PV_IFTIME, &(yylsp[-3]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[-1].pval); prev_word = 0; ;} break; - case 58: -#line 337 "ael.y" + case 57: +#line 334 "ael.y" { (yyval.str) = (yyvsp[0].str);;} break; - case 59: -#line 338 "ael.y" + case 58: +#line 335 "ael.y" { asprintf(&((yyval.str)), "%s%s", (yyvsp[-1].str), (yyvsp[0].str)); free((yyvsp[-1].str)); @@ -2224,13 +2211,13 @@ yyreduce: prev_word = (yyval.str);;} break; - case 60: -#line 345 "ael.y" + case 59: +#line 342 "ael.y" { (yyval.str) = (yyvsp[0].str);;} break; - case 61: -#line 346 "ael.y" + case 60: +#line 343 "ael.y" { asprintf(&((yyval.str)), "%s%s", (yyvsp[-1].str), (yyvsp[0].str)); free((yyvsp[-1].str)); @@ -2238,8 +2225,8 @@ yyreduce: prev_word = (yyval.str);;} break; - case 62: -#line 351 "ael.y" + case 61: +#line 348 "ael.y" { asprintf(&((yyval.str)), "%s%s%s", (yyvsp[-2].str), (yyvsp[-1].str), (yyvsp[0].str)); free((yyvsp[-2].str)); @@ -2248,92 +2235,92 @@ yyreduce: prev_word=(yyval.str);;} break; - case 63: -#line 359 "ael.y" + case 62: +#line 356 "ael.y" { (yyval.str) = (yyvsp[0].str);;} break; - case 64: -#line 360 "ael.y" + case 63: +#line 357 "ael.y" { asprintf(&((yyval.str)), "%s%s", (yyvsp[-1].str), (yyvsp[0].str)); free((yyvsp[-1].str)); free((yyvsp[0].str));;} break; - case 65: -#line 364 "ael.y" + case 64: +#line 361 "ael.y" { asprintf(&((yyval.str)), "%s:%s", (yyvsp[-2].str), (yyvsp[0].str)); free((yyvsp[-2].str)); free((yyvsp[0].str));;} break; - case 66: -#line 370 "ael.y" + case 65: +#line 367 "ael.y" { (yyval.pval) = npval2(PV_SWITCH, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str); ;} break; - case 67: -#line 378 "ael.y" + case 66: +#line 375 "ael.y" { (yyval.pval) = npval2(PV_STATEMENTBLOCK, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[-1].pval); ;} break; - case 68: -#line 381 "ael.y" + case 67: +#line 378 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 69: -#line 381 "ael.y" + case 68: +#line 378 "ael.y" { (yyval.pval) = npval2(PV_VARDEC, &(yylsp[-4]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-4].str); (yyval.pval)->u2.val = (yyvsp[-1].str); ;} break; - case 70: -#line 385 "ael.y" + case 69: +#line 382 "ael.y" { (yyval.pval) = npval2(PV_GOTO, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[-1].pval);;} break; - case 71: -#line 388 "ael.y" + case 70: +#line 385 "ael.y" { (yyval.pval) = npval2(PV_GOTO, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[-1].pval);;} break; - case 72: -#line 391 "ael.y" + case 71: +#line 388 "ael.y" { (yyval.pval) = npval2(PV_LABEL, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str); ;} break; - case 73: -#line 394 "ael.y" + case 72: +#line 391 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 74: -#line 395 "ael.y" + case 73: +#line 392 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 75: -#line 396 "ael.y" + case 74: +#line 393 "ael.y" {reset_parencount(parseio->scanner);;} break; - case 76: -#line 396 "ael.y" + case 75: +#line 393 "ael.y" { /* XXX word_list maybe ? */ (yyval.pval) = npval2(PV_FOR, &(yylsp[-11]), &(yylsp[0])); (yyval.pval)->u1.for_init = (yyvsp[-8].str); @@ -2342,53 +2329,53 @@ yyreduce: (yyval.pval)->u4.for_statements = (yyvsp[0].pval);;} break; - case 77: -#line 402 "ael.y" + case 76: +#line 399 "ael.y" { (yyval.pval) = npval2(PV_WHILE, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str); (yyval.pval)->u2.statements = (yyvsp[0].pval); ;} break; - case 78: -#line 406 "ael.y" + case 77: +#line 403 "ael.y" { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;} break; - case 79: -#line 408 "ael.y" + case 78: +#line 405 "ael.y" { (yyval.pval) = update_last((yyvsp[-2].pval), &(yylsp[0])); (yyval.pval)->u2.statements = (yyvsp[-1].pval);;} break; - case 80: -#line 411 "ael.y" + case 79: +#line 408 "ael.y" { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[-1])); ;} break; - case 81: -#line 413 "ael.y" + case 80: +#line 410 "ael.y" { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;} break; - case 82: -#line 415 "ael.y" + case 81: +#line 412 "ael.y" { (yyval.pval)= npval2(PV_APPLICATION_CALL, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str);;} break; - case 83: -#line 418 "ael.y" + case 82: +#line 415 "ael.y" {reset_semicount(parseio->scanner);;} break; - case 84: -#line 418 "ael.y" + case 83: +#line 415 "ael.y" { char *bufx; int tot=0; @@ -2424,148 +2411,148 @@ yyreduce: ;} break; - case 85: -#line 451 "ael.y" + case 84: +#line 448 "ael.y" { (yyval.pval) = npval2(PV_BREAK, &(yylsp[-1]), &(yylsp[0])); ;} break; - case 86: -#line 452 "ael.y" + case 85: +#line 449 "ael.y" { (yyval.pval) = npval2(PV_RETURN, &(yylsp[-1]), &(yylsp[0])); ;} break; - case 87: -#line 453 "ael.y" + case 86: +#line 450 "ael.y" { (yyval.pval) = npval2(PV_CONTINUE, &(yylsp[-1]), &(yylsp[0])); ;} break; - case 88: -#line 454 "ael.y" + case 87: +#line 451 "ael.y" { (yyval.pval) = update_last((yyvsp[-2].pval), &(yylsp[-1])); (yyval.pval)->u2.statements = (yyvsp[-1].pval); (yyval.pval)->u3.else_statements = (yyvsp[0].pval);;} break; - case 89: -#line 458 "ael.y" + case 88: +#line 455 "ael.y" { (yyval.pval)=0; ;} break; - case 90: -#line 461 "ael.y" + case 89: +#line 458 "ael.y" { (yyval.pval) = (yyvsp[0].pval); ;} break; - case 91: -#line 462 "ael.y" + case 90: +#line 459 "ael.y" { (yyval.pval) = NULL ; ;} break; - case 92: -#line 467 "ael.y" + case 91: +#line 464 "ael.y" { (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 93: -#line 468 "ael.y" + case 92: +#line 465 "ael.y" { (yyval.pval) = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 94: -#line 471 "ael.y" + case 93: +#line 468 "ael.y" { (yyval.pval) = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 95: -#line 474 "ael.y" + case 94: +#line 471 "ael.y" { (yyval.pval) = nword((yyvsp[-4].str), &(yylsp[-4])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 96: -#line 478 "ael.y" + case 95: +#line 475 "ael.y" { (yyval.pval) = nword((yyvsp[-4].str), &(yylsp[-4])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 97: -#line 482 "ael.y" + case 96: +#line 479 "ael.y" { (yyval.pval) = nword(strdup("default"), &(yylsp[-4])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 98: -#line 486 "ael.y" + case 97: +#line 483 "ael.y" { (yyval.pval) = nword(strdup("default"), &(yylsp[-4])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 99: -#line 493 "ael.y" - { + case 98: +#line 490 "ael.y" + { /* ext, 1 */ (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); (yyval.pval)->next = nword(strdup("1"), &(yylsp[0])); ;} break; - case 100: -#line 496 "ael.y" - { + case 99: +#line 493 "ael.y" + { /* ext, pri */ (yyval.pval) = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next = nword((yyvsp[0].str), &(yylsp[0])); ;} break; - case 101: -#line 499 "ael.y" - { /* XXX they are stored in a different order */ + case 100: +#line 496 "ael.y" + { /* context, ext, pri */ (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); (yyval.pval)->next = nword((yyvsp[-4].str), &(yylsp[-4])); (yyval.pval)->next->next = nword((yyvsp[-2].str), &(yylsp[-2])); ;} break; - case 102: -#line 503 "ael.y" - { + case 101: +#line 500 "ael.y" + { /* context, ext, 1 */ (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[-2])); (yyval.pval)->next->next = nword(strdup("1"), &(yylsp[0])); ;} break; - case 103: -#line 507 "ael.y" - { + case 102: +#line 504 "ael.y" + { /* default, ext, pri */ (yyval.pval) = nword(strdup("default"), &(yylsp[-4])); (yyval.pval)->next = nword((yyvsp[-4].str), &(yylsp[-4])); (yyval.pval)->next->next = nword((yyvsp[-2].str), &(yylsp[-2])); ;} break; - case 104: -#line 511 "ael.y" - { + case 103: +#line 508 "ael.y" + { /* default, ext, 1 */ (yyval.pval) = nword(strdup("default"), &(yylsp[-2])); (yyval.pval)->next = nword((yyvsp[-2].str), &(yylsp[0])); (yyval.pval)->next->next = nword( strdup("1"), &(yylsp[0])); ;} break; - case 105: -#line 517 "ael.y" + case 104: +#line 514 "ael.y" {reset_argcount(parseio->scanner);;} break; - case 106: -#line 517 "ael.y" + case 105: +#line 514 "ael.y" { /* XXX original code had @2 but i think we need @5 */ (yyval.pval) = npval2(PV_MACRO_CALL, &(yylsp[-4]), &(yylsp[0])); @@ -2573,20 +2560,20 @@ yyreduce: (yyval.pval)->u2.arglist = (yyvsp[-1].pval);;} break; - case 107: -#line 522 "ael.y" + case 106: +#line 519 "ael.y" { (yyval.pval)= npval2(PV_MACRO_CALL, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-2].str); ;} break; - case 108: -#line 530 "ael.y" + case 107: +#line 527 "ael.y" {reset_argcount(parseio->scanner);;} break; - case 109: -#line 530 "ael.y" + case 108: +#line 527 "ael.y" { if (strcasecmp((yyvsp[-2].str),"goto") == 0) { (yyval.pval) = npval2(PV_GOTO, &(yylsp[-2]), &(yylsp[-1])); @@ -2598,8 +2585,8 @@ yyreduce: } ;} break; - case 110: -#line 541 "ael.y" + case 109: +#line 538 "ael.y" { (yyval.pval) = update_last((yyvsp[-2].pval), &(yylsp[0])); if( (yyval.pval)->type == PV_GOTO ) @@ -2609,197 +2596,197 @@ yyreduce: ;} break; + case 110: +#line 545 "ael.y" + { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;} + break; + case 111: #line 548 "ael.y" - { (yyval.pval) = update_last((yyvsp[-1].pval), &(yylsp[0])); ;} + { (yyval.str) = (yyvsp[0].str) ;} break; case 112: -#line 551 "ael.y" - { (yyval.str) = (yyvsp[0].str) ;} +#line 549 "ael.y" + { (yyval.str) = strdup(""); ;} break; case 113: #line 552 "ael.y" - { (yyval.str) = strdup(""); ;} + { (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); ;} break; case 114: -#line 555 "ael.y" - { (yyval.pval) = nword((yyvsp[0].str), &(yylsp[0])); ;} +#line 553 "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 115: #line 556 "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(""); ;} + { (yyval.pval) = linku1((yyvsp[-2].pval), nword((yyvsp[0].str), &(yylsp[0]))); ;} break; case 116: #line 559 "ael.y" - { (yyval.pval) = linku1((yyvsp[-2].pval), nword((yyvsp[0].str), &(yylsp[0]))); ;} + {(yyval.pval)=(yyvsp[0].pval);;} break; case 117: -#line 562 "ael.y" - {(yyval.pval)=(yyvsp[0].pval);;} +#line 560 "ael.y" + { (yyval.pval) = linku1((yyvsp[-1].pval), (yyvsp[0].pval)); ;} break; case 118: #line 563 "ael.y" - { (yyval.pval) = linku1((yyvsp[-1].pval), (yyvsp[0].pval)); ;} - break; - - case 119: -#line 566 "ael.y" { (yyval.pval) = npval2(PV_CASE, &(yylsp[-3]), &(yylsp[-1])); /* XXX 3 or 4 ? */ (yyval.pval)->u1.str = (yyvsp[-2].str); (yyval.pval)->u2.statements = (yyvsp[0].pval);;} break; - case 120: -#line 570 "ael.y" + case 119: +#line 567 "ael.y" { (yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = NULL; (yyval.pval)->u2.statements = (yyvsp[0].pval);;} break; - case 121: -#line 574 "ael.y" + case 120: +#line 571 "ael.y" { (yyval.pval) = npval2(PV_PATTERN, &(yylsp[-3]), &(yylsp[0])); /* XXX@3 or @4 ? */ (yyval.pval)->u1.str = (yyvsp[-2].str); (yyval.pval)->u2.statements = (yyvsp[0].pval);;} break; - case 122: -#line 578 "ael.y" + case 121: +#line 575 "ael.y" { (yyval.pval) = npval2(PV_CASE, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str);;} break; - case 123: -#line 581 "ael.y" + case 122: +#line 578 "ael.y" { (yyval.pval) = npval2(PV_DEFAULT, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.str = NULL;;} break; - case 124: -#line 584 "ael.y" + case 123: +#line 581 "ael.y" { (yyval.pval) = npval2(PV_PATTERN, &(yylsp[-2]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-1].str);;} break; - case 125: -#line 589 "ael.y" + case 124: +#line 586 "ael.y" { (yyval.pval) = NULL; ;} break; - case 126: -#line 590 "ael.y" + case 125: +#line 587 "ael.y" {(yyval.pval) = (yyvsp[0].pval);;} break; - case 127: -#line 591 "ael.y" + case 126: +#line 588 "ael.y" { (yyval.pval) = linku1((yyvsp[-1].pval), (yyvsp[0].pval)); ;} break; - case 128: -#line 594 "ael.y" + case 127: +#line 591 "ael.y" {(yyval.pval)=(yyvsp[0].pval);;} break; - case 129: -#line 595 "ael.y" + case 128: +#line 592 "ael.y" { (yyval.pval) = npval2(PV_CATCH, &(yylsp[-4]), &(yylsp[0])); (yyval.pval)->u1.str = (yyvsp[-3].str); (yyval.pval)->u2.statements = (yyvsp[-1].pval);;} break; - case 130: -#line 601 "ael.y" + case 129: +#line 598 "ael.y" { (yyval.pval) = npval2(PV_SWITCHES, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[0].pval); ;} break; - case 131: -#line 606 "ael.y" + case 130: +#line 603 "ael.y" { (yyval.pval) = npval2(PV_ESWITCHES, &(yylsp[-1]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[0].pval); ;} break; - case 132: -#line 611 "ael.y" + case 131: +#line 608 "ael.y" { (yyval.pval) = (yyvsp[-1].pval); ;} break; - case 133: -#line 612 "ael.y" + case 132: +#line 609 "ael.y" { (yyval.pval) = NULL; ;} break; - case 134: -#line 615 "ael.y" + case 133: +#line 612 "ael.y" { (yyval.pval) = nword((yyvsp[-1].str), &(yylsp[-1])); ;} break; - case 135: -#line 616 "ael.y" + case 134: +#line 613 "ael.y" { (yyval.pval) = linku1((yyvsp[-2].pval), nword((yyvsp[-1].str), &(yylsp[-1]))); ;} break; - case 136: -#line 617 "ael.y" + case 135: +#line 614 "ael.y" {(yyval.pval)=(yyvsp[-1].pval);;} break; - case 137: -#line 620 "ael.y" + case 136: +#line 617 "ael.y" { (yyval.pval) = nword((yyvsp[-1].str), &(yylsp[-1])); ;} break; - case 138: -#line 621 "ael.y" + case 137: +#line 618 "ael.y" { (yyval.pval) = nword((yyvsp[-3].str), &(yylsp[-3])); (yyval.pval)->u2.arglist = (yyvsp[-1].pval); prev_word=0; /* XXX sure ? */ ;} break; - case 139: -#line 628 "ael.y" + case 138: +#line 625 "ael.y" { (yyval.pval) = (yyvsp[0].pval); ;} break; - case 140: -#line 629 "ael.y" + case 139: +#line 626 "ael.y" { (yyval.pval) = linku1((yyvsp[-1].pval), (yyvsp[0].pval)); ;} break; - case 141: -#line 630 "ael.y" + case 140: +#line 627 "ael.y" {(yyval.pval)=(yyvsp[-1].pval);;} break; - case 142: -#line 633 "ael.y" + case 141: +#line 630 "ael.y" { (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-3]), &(yylsp[0])); (yyval.pval)->u1.list = (yyvsp[-1].pval);;} break; - case 143: -#line 636 "ael.y" + case 142: +#line 633 "ael.y" { (yyval.pval) = npval2(PV_INCLUDES, &(yylsp[-2]), &(yylsp[0]));;} break; @@ -2809,7 +2796,7 @@ yyreduce: } /* Line 1126 of yacc.c. */ -#line 2813 "ael.tab.c" +#line 2800 "ael.tab.c" yyvsp -= yylen; yyssp -= yylen; @@ -3084,7 +3071,7 @@ yyreturn: } -#line 641 "ael.y" +#line 638 "ael.y" static char *token_equivs1[] = diff --git a/pbx/ael/ael.y b/pbx/ael/ael.y index a8b2b99fd..4e826169a 100644 --- a/pbx/ael/ael.y +++ b/pbx/ael/ael.y @@ -107,7 +107,7 @@ static pval *update_last(pval *, YYLTYPE *); %type element %type elements %type arglist -%type global_statement +%type assignment %type global_statements %type globals %type macro @@ -164,7 +164,7 @@ static pval *update_last(pval *, YYLTYPE *); eval_arglist application_call application_call_head macro_call target jumptarget statement switch_head if_like_head statements extension - ignorepat element elements arglist global_statement + ignorepat element elements arglist assignment global_statements globals macro context object objects opt_else elements_block switchlist_block @@ -219,12 +219,12 @@ globals : KW_GLOBALS LC global_statements RC { $$ = npval2(PV_GLOBALS, &@1, &@3); } ; -global_statements : global_statement {$$=$1;} - | global_statements global_statement {$$ = linku1($1, $2); } +global_statements : assignment {$$=$1;} + | global_statements assignment {$$ = linku1($1, $2); } | global_statements error {$$=$1;} ; -global_statement : word EQ { reset_semicount(parseio->scanner); } word SEMI { +assignment : word EQ { reset_semicount(parseio->scanner); } word SEMI { $$ = npval2(PV_VARDEC, &@1, &@5); $$->u1.str = $1; $$->u2.val = $4; } @@ -251,10 +251,7 @@ element : extension {$$=$1;} | switches {$$=$1;} | eswitches {$$=$1;} | ignorepat {$$=$1;} - | word EQ { reset_semicount(parseio->scanner); } word SEMI { - $$ = npval2(PV_VARDEC, &@1, &@5); - $$->u1.str = $1; - $$->u2.val = $4; } + | assignment {$$=$1;} | word error {free($1); $$=0;} | SEMI {$$=0;/* allow older docs to be read */} ; @@ -490,25 +487,25 @@ target : goto_word { $$ = nword($1, &@1); } ; /* XXX please document the form of jumptarget */ -jumptarget : goto_word { +jumptarget : goto_word { /* ext, 1 */ $$ = nword($1, &@1); $$->next = nword(strdup("1"), &@1); } /* jump extension[,priority][@context] */ - | goto_word COMMA goto_word { + | goto_word COMMA goto_word { /* ext, pri */ $$ = nword($1, &@1); $$->next = nword($3, &@3); } - | goto_word COMMA word AT word { /* XXX they are stored in a different order */ + | goto_word COMMA word AT word { /* context, ext, pri */ $$ = nword($5, &@5); $$->next = nword($1, &@1); $$->next->next = nword($3, &@3); } - | goto_word AT goto_word { + | goto_word AT goto_word { /* context, ext, 1 */ $$ = nword($3, &@3); $$->next = nword($1, &@1); $$->next->next = nword(strdup("1"), &@3); } - | goto_word COMMA word AT KW_DEFAULT { + | goto_word COMMA word AT KW_DEFAULT { /* default, ext, pri */ $$ = nword(strdup("default"), &@1); $$->next = nword($1, &@1); $$->next->next = nword($3, &@3); } - | goto_word AT KW_DEFAULT { + | goto_word AT KW_DEFAULT { /* default, ext, 1 */ $$ = nword(strdup("default"), &@1); $$->next = nword($1, &@3); $$->next->next = nword( strdup("1"), &@3); } -- cgit v1.2.3