From 54352870e84488cfff8bcb2bfeadd7806714fea2 Mon Sep 17 00:00:00 2001 From: Kray-G Date: Tue, 16 Feb 2021 15:24:49 +0900 Subject: [PATCH] added a pipeline operator. --- examples/pipeline.kx | 19 + include/parser.tab.h | 113 +-- src/kinx.y | 15 +- src/lexer.c | 4 + src/parser.c | 2253 +++++++++++++++++++++--------------------- 5 files changed, 1220 insertions(+), 1184 deletions(-) create mode 100644 examples/pipeline.kx diff --git a/examples/pipeline.kx b/examples/pipeline.kx new file mode 100644 index 000000000..e898a267a --- /dev/null +++ b/examples/pipeline.kx @@ -0,0 +1,19 @@ +const double = &(n) => n * 2; +const increment = &(n) => n + 1; + +// Normal case. +var r1 = double(increment(double(double(5)))); // 42 +System.println(r1); + +// Rewrite it with a pipeline operator. +var r2 = 5 |> double |> double |> increment |> double; // 42 +System.println(r2); + +class Person(name) { + public said(x) { + '"%{x}," %{name} said.' |> System.println; + } +} + +var john = new Person("John"); +"Thank you very much" |> john.said; diff --git a/include/parser.tab.h b/include/parser.tab.h index 13e0007e1..9cf468bc7 100644 --- a/include/parser.tab.h +++ b/include/parser.tab.h @@ -52,59 +52,60 @@ extern YYSTYPE kx_yylval; #define SHR 292 #define POW 293 #define LUNDEF 294 -#define ADDEQ 295 -#define SUBEQ 296 -#define MULEQ 297 -#define DIVEQ 298 -#define MODEQ 299 -#define ANDEQ 300 -#define OREQ 301 -#define XOREQ 302 -#define LANDEQ 303 -#define LOREQ 304 -#define LUNDEFEQ 305 -#define SHLEQ 306 -#define SHREQ 307 -#define REGEQ 308 -#define REGNE 309 -#define NUL 310 -#define TRUE 311 -#define FALSE 312 -#define AS 313 -#define IMPORT 314 -#define USING 315 -#define DARROW 316 -#define SQ 317 -#define DQ 318 -#define MLSTR 319 -#define BINEND 320 -#define DOTS2 321 -#define DOTS3 322 -#define REGPF 323 -#define NAMESPACE 324 -#define SYSNS 325 -#define SYSRET_NV 326 -#define CLASS 327 -#define SYSCLASS 328 -#define MODULE 329 -#define SYSMODULE 330 -#define NATIVE 331 -#define FUNCTION 332 -#define SYSFUNC 333 -#define PUBLIC 334 -#define PRIVATE 335 -#define PROTECTED 336 -#define COROUTINE 337 -#define NAME 338 -#define STR 339 -#define SRCFILE 340 -#define BIGINT 341 -#define INT 342 -#define TYPE 343 -#define TYPEOF 344 -#define LBBR 345 -#define RBBR 346 -#define LMBR 347 -#define RMBR 348 -#define DBL 349 -#define BIN 350 +#define PIPEOP 295 +#define ADDEQ 296 +#define SUBEQ 297 +#define MULEQ 298 +#define DIVEQ 299 +#define MODEQ 300 +#define ANDEQ 301 +#define OREQ 302 +#define XOREQ 303 +#define LANDEQ 304 +#define LOREQ 305 +#define LUNDEFEQ 306 +#define SHLEQ 307 +#define SHREQ 308 +#define REGEQ 309 +#define REGNE 310 +#define NUL 311 +#define TRUE 312 +#define FALSE 313 +#define AS 314 +#define IMPORT 315 +#define USING 316 +#define DARROW 317 +#define SQ 318 +#define DQ 319 +#define MLSTR 320 +#define BINEND 321 +#define DOTS2 322 +#define DOTS3 323 +#define REGPF 324 +#define NAMESPACE 325 +#define SYSNS 326 +#define SYSRET_NV 327 +#define CLASS 328 +#define SYSCLASS 329 +#define MODULE 330 +#define SYSMODULE 331 +#define NATIVE 332 +#define FUNCTION 333 +#define SYSFUNC 334 +#define PUBLIC 335 +#define PRIVATE 336 +#define PROTECTED 337 +#define COROUTINE 338 +#define NAME 339 +#define STR 340 +#define SRCFILE 341 +#define BIGINT 342 +#define INT 343 +#define TYPE 344 +#define TYPEOF 345 +#define LBBR 346 +#define RBBR 347 +#define LMBR 348 +#define RMBR 349 +#define DBL 350 +#define BIN 351 diff --git a/src/kinx.y b/src/kinx.y index 504acf7c0..c8105d71c 100644 --- a/src/kinx.y +++ b/src/kinx.y @@ -37,7 +37,7 @@ static inline void yy_restart(int token) %token ERROR %token IF ELSE WHILE DO FOR IN TRY CATCH FINALLY BREAK CONTINUE SWITCH CASE DEFAULT WHEN ENUM FALLTHROUGH %token NEW VAR CONST RETURN THROW YIELD MIXIN -%token EQEQ NEQ LE GE LGE LOR LAND INC DEC SHL SHR POW LUNDEF +%token EQEQ NEQ LE GE LGE LOR LAND INC DEC SHL SHR POW LUNDEF PIPEOP %token ADDEQ SUBEQ MULEQ DIVEQ MODEQ ANDEQ OREQ XOREQ LANDEQ LOREQ LUNDEFEQ SHLEQ SHREQ REGEQ REGNE %token NUL TRUE FALSE AS %token IMPORT USING DARROW SQ DQ MLSTR BINEND DOTS2 DOTS3 REGPF NAMESPACE SYSNS SYSRET_NV @@ -95,7 +95,6 @@ static inline void yy_restart(int token) %type ObjectSpecialSyntax %type AssignExpressionList_Opt %type TernaryExpression -%type FunctionExpression %type LogicalUndefExpression %type LogicalOrExpression %type LogicalAndExpression @@ -161,6 +160,7 @@ static inline void yy_restart(int token) %type ArrayLevel %type ReturnType_Opt %type GetLineNumber +%type PipelineExpression %type CaseWhenExpression %type WhenClauseList %type WhenClause @@ -536,13 +536,14 @@ Colon_Opt ; TernaryExpression - : FunctionExpression - | LogicalUndefExpression '?' TernaryExpression ':' TernaryExpression { $$ = kx_gen_texpr_object($1, $3, $5); } + : AnonymousFunctionDeclExpression + | PipelineExpression + | PipelineExpression '?' TernaryExpression ':' TernaryExpression { $$ = kx_gen_texpr_object($1, $3, $5); } ; -FunctionExpression - : AnonymousFunctionDeclExpression - | LogicalUndefExpression +PipelineExpression + : LogicalUndefExpression + | PipelineExpression PIPEOP LogicalUndefExpression { $$ = kx_gen_bexpr_object(KXOP_CALL, $3, $1); } ; LogicalUndefExpression diff --git a/src/lexer.c b/src/lexer.c index d53faeeea..f2eb6d622 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -872,6 +872,10 @@ int kx_yylex() kx_lex_next(kx_lexinfo); return OREQ; } + if (kx_lexinfo.ch == '>') { + kx_lex_next(kx_lexinfo); + return PIPEOP; + } return '|'; case '&': kx_lex_next(kx_lexinfo); diff --git a/src/parser.c b/src/parser.c index 409f52245..5fc8ff89f 100644 --- a/src/parser.c +++ b/src/parser.c @@ -94,62 +94,63 @@ extern YYSTYPE kx_yylval; #define SHR 292 #define POW 293 #define LUNDEF 294 -#define ADDEQ 295 -#define SUBEQ 296 -#define MULEQ 297 -#define DIVEQ 298 -#define MODEQ 299 -#define ANDEQ 300 -#define OREQ 301 -#define XOREQ 302 -#define LANDEQ 303 -#define LOREQ 304 -#define LUNDEFEQ 305 -#define SHLEQ 306 -#define SHREQ 307 -#define REGEQ 308 -#define REGNE 309 -#define NUL 310 -#define TRUE 311 -#define FALSE 312 -#define AS 313 -#define IMPORT 314 -#define USING 315 -#define DARROW 316 -#define SQ 317 -#define DQ 318 -#define MLSTR 319 -#define BINEND 320 -#define DOTS2 321 -#define DOTS3 322 -#define REGPF 323 -#define NAMESPACE 324 -#define SYSNS 325 -#define SYSRET_NV 326 -#define CLASS 327 -#define SYSCLASS 328 -#define MODULE 329 -#define SYSMODULE 330 -#define NATIVE 331 -#define FUNCTION 332 -#define SYSFUNC 333 -#define PUBLIC 334 -#define PRIVATE 335 -#define PROTECTED 336 -#define COROUTINE 337 -#define NAME 338 -#define STR 339 -#define SRCFILE 340 -#define BIGINT 341 -#define INT 342 -#define TYPE 343 -#define TYPEOF 344 -#define LBBR 345 -#define RBBR 346 -#define LMBR 347 -#define RMBR 348 -#define DBL 349 -#define BIN 350 +#define PIPEOP 295 +#define ADDEQ 296 +#define SUBEQ 297 +#define MULEQ 298 +#define DIVEQ 299 +#define MODEQ 300 +#define ANDEQ 301 +#define OREQ 302 +#define XOREQ 303 +#define LANDEQ 304 +#define LOREQ 305 +#define LUNDEFEQ 306 +#define SHLEQ 307 +#define SHREQ 308 +#define REGEQ 309 +#define REGNE 310 +#define NUL 311 +#define TRUE 312 +#define FALSE 313 +#define AS 314 +#define IMPORT 315 +#define USING 316 +#define DARROW 317 +#define SQ 318 +#define DQ 319 +#define MLSTR 320 +#define BINEND 321 +#define DOTS2 322 +#define DOTS3 323 +#define REGPF 324 +#define NAMESPACE 325 +#define SYSNS 326 +#define SYSRET_NV 327 +#define CLASS 328 +#define SYSCLASS 329 +#define MODULE 330 +#define SYSMODULE 331 +#define NATIVE 332 +#define FUNCTION 333 +#define SYSFUNC 334 +#define PUBLIC 335 +#define PRIVATE 336 +#define PROTECTED 337 +#define COROUTINE 338 +#define NAME 339 +#define STR 340 +#define SRCFILE 341 +#define BIGINT 342 +#define INT 343 +#define TYPE 344 +#define TYPEOF 345 +#define LBBR 346 +#define RBBR 347 +#define LMBR 348 +#define RMBR 349 +#define DBL 350 +#define BIN 351 #line 44 "build/utility/kmyacc.c.parser" /* -p option */ @@ -197,7 +198,7 @@ YYSTYPE yylval; /* code after %% in *.y */ -#line 1109 "src/kinx.y" +#line 1110 "src/kinx.y" int yyerror(const char *msg) { @@ -315,6 +316,7 @@ static char *yyterminals[] = { "SHR", "POW", "LUNDEF", + "PIPEOP", "ADDEQ", "SUBEQ", "MULEQ", @@ -577,10 +579,11 @@ static char *yyproduction[] = { "WhenClauseBodyBlock : BlockStatement", "Colon_Opt : /* empty */", "Colon_Opt : ':'", - "TernaryExpression : FunctionExpression", - "TernaryExpression : LogicalUndefExpression '?' TernaryExpression ':' TernaryExpression", - "FunctionExpression : AnonymousFunctionDeclExpression", - "FunctionExpression : LogicalUndefExpression", + "TernaryExpression : AnonymousFunctionDeclExpression", + "TernaryExpression : PipelineExpression", + "TernaryExpression : PipelineExpression '?' TernaryExpression ':' TernaryExpression", + "PipelineExpression : LogicalUndefExpression", + "PipelineExpression : PipelineExpression PIPEOP LogicalUndefExpression", "LogicalUndefExpression : LogicalOrExpression", "LogicalUndefExpression : LogicalUndefExpression LUNDEF LogicalOrExpression", "LogicalOrExpression : LogicalAndExpression", @@ -966,713 +969,718 @@ static char *yyproduction[] = { static char yytranslate[] = { - 0, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 110, 112, 112, 112, 108, 101, 112, - 96, 97, 106, 105, 94, 93, 98, 107, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 95, 92, - 103, 91, 104, 102, 111, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 100, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 99, 112, 109, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 1, 112, 2, 3, + 0, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 111, 113, 113, 113, 109, 102, 113, + 97, 98, 107, 106, 95, 94, 99, 108, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 96, 93, + 104, 92, 105, 103, 112, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 101, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 100, 113, 110, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 1, 113, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 112, 112, 112, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 54, 55, 56, 57, 58, 59, 60, 61, 113, 113, + 113, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 112 + 91, 113 #line 165 "build/utility/kmyacc.c.parser" }; -#define YYBADCH 112 -#define YYMAXLEX 351 -#define YYTERMS 112 +#define YYBADCH 113 +#define YYMAXLEX 352 +#define YYTERMS 113 #define YYNONTERMS 123 static short yyaction[] = { - 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, - 824, 825, 826, 828, 827, 37, 0, 829, 830, 831, - 840, 842, 841, 1049, 850, 851, 852, 854, 856, 114, - 323, 392, 100, 848, 849, 324, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 1066, - 36, 162, 843, 844, 845, 37, 846, 847, 455, -391, - 810, 134, 135, 136, 37, 811, 838, 40, 839, 43, - 832, 833, 834, 835, 836, 837, 112, 812, 143, 144, - 145, 562, 813, 564, 563, 565, 431, 566, 93, 163, - 392, 858, 567, 568, 432,-32766, 569, 863, 864, 862, - 230, 853, 855, 857, 859, 860, 861, 935, 936, 937, - 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, - 58, 948, 786, 787, 949, 950, 951, 959, 961, 960, - 603, 971, 972, 973, 975, 977, 137, 138, 37, 78, - 969, 970, -361, 17, 3, 94, 2, 570, 108, -361, - 132, 133, 571, 117, 573, 572, 46, 164, 25, 962, - 963, 964, 1066, 965, 966, 561, 552, 1, 37, 810, - 878, 560, 64, 957, 811, 958, 107, 111, 952, 953, - 954, 955, 956, 126, 1025, 47, 116, 26, 435, 967, - 968, 430, 115, 409, 49, 141, 29, 37, 979, 67, - 48, 410, 28, 240, 984, 985, 983, 142, 974, 976, - 978, 980, 981, 982, 168, 414, 369, 415, 9, 416, - 905, 313, 907, 908, 236, 237, 417, 105, 373, 106, - 374, 375, 160, 233, 234, 314, 52, 59, 301, 369, - 370, 14, 371, 369, 370, 14, 371, 122, 328, 372, - 110, 373, 102, 372, 101, 373, 102, 296, 634, -76, - 446, 162, 239, 255, 297, 78, 98, 418, 419, 420, - -106, 271, 932, -475, 803, -77, 77, -106, 303, 304, - 376, 421, 378, 422, 380, 423, 272, 273, 33, 34, - 35, 2, 424, 108, 587, 96, 877, 425, 934, 1, - 578, 46, 107, 25, 507, -102, 139, 140, 238, 57, - 150, 151, 318, 901, 253, 902, 903, 904, 905, 906, - 907, 908, 909, 910, 911, 912, 37, 913, 190, 191, - 160, 915, 916, 925, 927, 926, 590, 326, 152, 153, - 114, 162,-32766, 402,-32766,-32766, 525, 1010, 476, 477, --32766, 127, 146, 478, 115, 120, 128, 367, 123, 254, - 870, 39, 48, 43, 28, 418, 419, 420, 78, 441, - 932, 97, 296, 27, 77, 189, 256, 591, 36, 923, - 310, 924, 506, 917, 918, 919, 920, 921, 922,-32766, - 442, 636, 584, 635, 867, 425, 934, 309, 888, 877, - 297, 311, 588, 307,-32766, 107, 238, 57,-32766,-32766, --32766, 312, 443, 407,-32766, 449,-32766,-32766, 508, 408, --32766,-32766, 901, 504, 902, 903, 904, 905, 906, 907, - 908, 909, 910, 911, 912, 447, 913,-32766, 444, 160, - 915, 916, 925, 927, 926, 434, 807, 487, 510, 701, - 666, 512, 624,-32766,-32766, 1036, 686, 778, 809, 20, - 5, 4, 3, 37, 38, 255, 15, 872, 784, 783, - 585, 0, 494, 0, 418, 419, 420, 1052, 441, 932, - 1053, 865, 986, 77, 1034, 699, 664, 776, 923, 868, - 924, 622, 917, 918, 919, 920, 921, 922,-32766, 442, - 72, 66, 65, 294, 425, 934, 486, 662, 99, 290, - 480, 628, 129,-32766, 994, 238, 57, 993, 626, 621, - 637, 443, 627, 625, 73,-32766,-32766, 71, 70,-32766, --32766, 901, 69, 902, 903, 904, 905, 906, 907, 908, - 909, 910, 911, 912, 68, 913, 551, 600, 160, 915, - 916, 925, 927, 926, 633, 623, -393, 16, 235, 109, - 60, 51,-32766,-32766, 41, 113, 222, 0, -397, -394, - -392, -389, 603, 605, -381, 42, 53, 54, 719, 604, - 606, 535, 243, 418, 419, 420, 241, 441, 932, 55, - 124, 192, 77, -390, 238, 0, 206, 923, 214, 924, - 220, 917, 918, 919, 920, 921, 922,-32766, 442, 205, - 204, 203, 95, 425, 934, 92, 890, 76, 208, 75, - 74, 475,-32766, 448, 238, 57, 404, 403, 242, 207, - 443, 221, 219, 218,-32766,-32766, 217, 216,-32766,-32766, - 901, 215, 902, 903, 904, 905, 906, 907, 908, 909, - 910, 911, 912, 213, 913, 212, 211, 160, 915, 916, - 925, 927, 926, 210, 209, 50, 130, 18, 19, 704, - 802,-32766,-32766, 327, 514, 644, 1057, 1055, 702, 801, - 711, 618, 667, 1038, 779, 992, 866, 804, 987, 511, - 497, 362, 418, 419, 420, 361, 441, 932, 360, 359, - 358, 77, 351, 349, 348, 346, 923, 345, 924, 344, - 917, 918, 919, 920, 921, 922,-32766, 442, 342, 339, - 336, 335, 425, 934, 334, 333, 332, 22, 21, 869, - 0,-32766, 0, 238, 57, 131, 443, 0, 0, 443, - 0, 0, 0,-32766,-32766, 0, 0,-32766,-32766, 901, - 0, 902, 903, 904, 905, 906, 907, 908, 909, 910, - 911, 912, 0, 913, 0, 0, 160, 915, 916, 925, - 927, 926, 0, 0, 0, 0, 0, 0, 0, 0, --32766,-32766, 0, 0, 0, 0, 0, 0, 0, 0, + 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, + 828, 829, 830, 832, 831, 126, 329, 833, 834, 835, + 844, 846, 845,-32766, 854, 855, 856, 858, 860, 163, + 191, 192, 67, 852, 853, 0, 241, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 144, 145, 146, 847, 848, 849, 115, 850, 851, 163, + 116, 135, 136, 137, 48, 394, 28, 842, 49, 843, + 29, 836, 837, 838, 839, 840, 841, 17, 816, 122, + 394, 437, 565, 817, 567, 566, 568, 433, 569, 93, + 164, 231, 862, 570, 571, 434, 1, 572, 867, 868, + 866, 96, 857, 859, 861, 863, 864, 865, 939, 940, + 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, + 951, 78, 952, 790, 791, 953, 954, 955, 963, 965, + 964, 37, 975, 976, 977, 979, 981, 138, 139, 606, + 115, 973, 974, 140, 141, 114, 3, 871, 48, 573, + 28, 36, 881, 98, 574, 117, 576, 575, 107, 165, + -392, 966, 967, 968, 64, 969, 970, 564, 555, 814, + 58, 100, 298, 563, 815, 961, 40, 962, 43, 111, + 956, 957, 958, 959, 960, -106, 1029, 47, 1070, 26, + 1053, 971, 972, 142, 37, 411, 112, 324, 256, 814, + 983, -76, 325, 412, 815, 143, 988, 989, 987, 807, + 978, 980, 982, 984, 985, 986, 169, 416, 370, 417, + 9, 418, 909, 314, 911, 912, 237, 238, 419, 105, + 374, 106, 375, 376, 161, 234, 235, 315, 52, 59, + 302, 370, 371, 14, 372, 370, 371, 14, 372, 297, + 94, 373, 110, 374, 102, 373, 101, 374, 102, 37, + 432, -77, -106, 457, 319, 240, 37, 1070, 593, 37, + 420, 421, 422, 37, 272, 936, -476,-32766, 528, 77, + 327, 304, 305, 377, 423, 379, 424, 381, 425, 273, + 274, 33, 34, 35, 2, 426, 108, 2,-32766, 108, + 427, 938, 1, 581, 46, 163, 25, 46, -102, 25, + 404, 239, 57, 78, 128, 78, 905, 254, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 37, + 917, 129, 590, 161, 919, 920, 929, 931, 930, 1014, + 479, 480, 510, 114, 881, 481, 882,-32766,-32766, -362, + 107, 127, 107, 39, 147, 43, -362,-32766,-32766,-32766, + 637, 123, 448,-32766, 120, 27, 368, 190, 257, 420, + 421, 422, 874, 443, 936, 133, 134, 298, 77, 151, + 152, 153, 154, 927, 255, 928,-32766, 921, 922, 923, + 924, 925, 926,-32766, 444, 97, 311, 1040, 704, 427, + 938, 312, 892, 639, 587, 638, 591, 313,-32766, 310, + 239, 57, 409, 410, 297, 511, 445, 507, 449, 446, +-32766,-32766, 436, 308,-32766,-32766, 905, 490, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 509, + 917, 513, 451, 161, 919, 920, 929, 931, 930, 594, + 782, 788, 811, 689, 669, 813, 207,-32766,-32766, 5, + 4, 38, 3, 37, 36, 256, 483, 588, 876, 787, + 130, 497, 515, 0, 872, 1057, 1056, 869, 1038, 420, + 421, 422, 702, 443, 936, 667, 990, 780, 77, 236, + 66, 65, 291, 927, 489, 928, 72, 921, 922, 923, + 924, 925, 926,-32766, 444, 99, 295, 109, 627, 427, + 938, 625, 894, 636, 998, 997, 626, 20,-32766, 624, + 239, 57, 640, 630, 628, 73, 445, 71, 70, 69, +-32766,-32766, 68, 603,-32766,-32766, 905, 554, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 629, + 917, 631, 113, 161, 919, 920, 929, 931, 930, 60, + 51, 41, 223, 131, -394, -398, -395,-32766,-32766, -393, + 606, 608, -390, -382, 42, 53, 54, 722, 607, 609, + 538, 244, 242, 55, 124, 193, -391, 239, 0, 420, + 421, 422, 215, 443, 936, 221, 206, 205, 77, 204, + 95, 92, 76, 927, 209, 928, 75, 921, 922, 923, + 924, 925, 926,-32766, 444, 74, 478, 450, 406, 427, + 938, 405, 665, 243, 208, 222, 220, 219,-32766, 218, + 239, 57, 217, 216, 214, 213, 445, 212, 211, 210, +-32766,-32766, 50, 0,-32766,-32766, 905, 15, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 16, + 917, 18, 19, 161, 919, 920, 929, 931, 930, 328, + 707, 806, 517, 647, 1061, 1059, 705,-32766,-32766, 805, + 714, 621, 670, 1042, 783, 996, 870, 808, 991, 514, + 500, 363, 362, 361, 360, 359, 352, 350, 349, 420, + 421, 422, 347, 443, 936, 346, 345, 343, 77, 340, + 337, 336, 335, 927, 334, 928, 333, 921, 922, 923, + 924, 925, 926,-32766, 444, 22, 21, 132, 445, 427, + 938, 0, 0, 0, 873, 0, 0, 0,-32766, 0, + 239, 57, 0, 0, 0, 0, 445, 0, 0, 0, +-32766,-32766, 0, 0,-32766,-32766, 905, 0, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 0, + 917, 0, 0, 161, 919, 920, 929, 931, 930, 0, + 0, 0, 0, 0, 0, 0, 0,-32766,-32766, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 418, 419, 420, 0, 441, 932, 0, 0, 0, - 77, 0, 0, 0, 0, 923, 0, 924, 0, 917, - 918, 919, 920, 921, 922,-32766, 442, 0, 0, 0, - 0, 425, 934, 0, 0, 0, 0, 0, 0, 0, --32766, 0, 0, 57, 0, 0, 0, 0,-32766, 0, - 0, 0,-32766,-32766, 0, 0,-32766,-32766, 168, 368, - 369, 370, 14, 371, 0, 300, 0, 0, 249, 250, - 372, 101, 373, 102, 374, 375, 0, 231, 232, 532, - 62, 103, 301, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 420, + 421, 422, 0, 443, 936, 0, 0, 0, 77, 0, + 0, 0, 0, 927, 0, 928, 0, 921, 922, 923, + 924, 925, 926,-32766, 444, 0, 0, 0, 0, 427, + 938, 0, 0, 0, 0, 0, 0, 0,-32766, 0, + 0, 57, 0, 0, 0, 0,-32766, 0, 0, 0, +-32766,-32766, 0, 0,-32766,-32766, 169, 369, 370, 371, + 14, 372, 0, 301, 0, 0, 250, 251, 373, 101, + 374, 102, 375, 376, 0, 232, 233, 535, 62, 103, + 302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 257, 0, -475, 0, 0, - 0, 0, 303, 304, 376, 377, 378, 379, 380, 0, - 258, 259, 30, 31, 32, 0, 382, 0, 0, 0, - 0, 0, 0, 1, 578, 0, 0, 0, 0, -102, - 0, 0, 238, 0, 0, 0, 0, 0, 253, 168, - 368, 369, 370, 14, 371, 0, 300, 0, 0, 249, - 250, 372, 101, 373, 102, 374, 375, 0, 231, 232, - 532, 62, 103, 301, 0, 0, 0, 0, 0, -1, - 168, 368, 369, 370, 14, 371, 0, 300, 0, 0, - 249, 250, 372, 101, 373, 102, 374, 375, 0, 231, - 232, 532, 62, 103, 301, 0, 257, 0, 0, 0, - 0, 0, 0, 303, 304, 376, 377, 378, 379, 380, - 0, 258, 259, 30, 31, 32, 0, 382, 0, 0, - 0, 0, 0, 0, 1, 0, 0, 257, 0, 0, - -102, 0, 0, -367, 303, 304, 376, 377, 378, 379, - 380, 0, 258, 259, 30, 31, 32, 0, 382, 0, + 0, 0, 0, 0, 258, 0, -476, 0, 0, 0, + 0, 304, 305, 377, 378, 379, 380, 381, 0, 259, + 260, 30, 31, 32, 0, 383, 0, 0, 0, 0, + 0, 0, 1, 581, 0, 0, 0, 0, -102, 0, + 0, 239, 0, 0, 0, 0, 0, 254, 169, 369, + 370, 371, 14, 372, 0, 301, 0, 0, 250, 251, + 373, 101, 374, 102, 375, 376, 0, 232, 233, 535, + 62, 103, 302, 0, 0, 0, 0, 0, -1, 169, + 369, 370, 371, 14, 372, 0, 301, 0, 0, 250, + 251, 373, 101, 374, 102, 375, 376, 0, 232, 233, + 535, 62, 103, 302, 0, 0, 258, 0, 0, 0, + 0, 0, 0, 304, 305, 377, 378, 379, 380, 381, + 0, 259, 260, 30, 31, 32, 0, 383, 0, 0, + 0, 0, 0, 0, 1, 0, 0, 258, 0, 0, + -102, 0, 0, -368, 304, 305, 377, 378, 379, 380, + 381, 0, 259, 260, 30, 31, 32, 0, 383, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, - 0, -102, 168, 368, 369, 370, 14, 371, 0, 300, - 0, 0, 249, 250, 372, 101, 373, 102, 374, 375, - 0, 231, 232, 532, 62, 103, 301, 0, 0, 0, - 0, 0, 168, 368, 369, 370, 14, 371, 0, 300, - 0, 0, 249, 250, 372, 101, 373, 102, 374, 375, - 0, 231, 232, 532, 62, 103, 301, 0, 0, 257, - 0, 0, 0, 0, 0, 0, 303, 304, 376, 377, - 378, 379, 380, 0, 258, 259, 30, 31, 32, 0, - 382, 0, 0, 0, 0, 0, 0, 1, 785, 257, - 0, 0, 0, -102, 0, 0, 303, 304, 376, 377, - 378, 379, 380, 0, 258, 259, 30, 31, 32, 0, - 382, 0, 0, 0, 0, 0, 0, 1, 583, 0, - 0, 0, 0, -102, 168, 368, 369, 370, 14, 371, - 0, 300, 0, 0, 249, 250, 372, 101, 373, 102, - 374, 375, 0, 231, 232, 532, 62, 103, 301, 0, - 0, 0, 0, 168, 368, 369, 370, 14, 371, 0, - 300, 0, 0, 249, 250, 372, 101, 373, 102, 374, - 375, 0, 231, 232, 532, 62, 103, 301, 0, 0, - 0, 257, 0, 121, 0, 0, 0, 0, 303, 304, - 376, 377, 378, 379, 380, 0, 258, 259, 30, 31, - 32, 0, 382, 0, 0, 0, 0, 0, 0, 1, - 257, 0, 0, 0, 0, -102, 0, 303, 304, 376, - 377, 378, 379, 380, 0, 258, 259, 30, 31, 32, - 0, 382, 0, 0, 0, 0, 0, 0, 1, 581, - 0, 0, 0, 0, -102, 168, 368, 369, 370, 14, - 371, 0, 300, 0, 0, 249, 250, 372, 101, 373, - 102, 374, 375, 0, 231, 232, 532, 62, 103, 301, - 0, 0, 0, 0, 0, 168, 368, 369, 370, 14, - 371, 0, 300, 0, 0, 249, 250, 372, 101, 373, - 102, 374, 375, 0, 231, 232, 532, 62, 103, 301, - 0, 0, 257, 0, 0, 0, 0, 0, 0, 303, - 304, 376, 377, 378, 379, 380, 0, 258, 259, 30, - 31, 32, 0, 382, 0, 0, 0, 0, 0, 0, - 1, 580, 257, 0, 0, 0, -102, 0, 0, 303, - 304, 376, 377, 378, 379, 380, 0, 258, 259, 30, - 31, 32, 0, 382, 0, 0, 0, 0, 0, 0, - 1, 579, 0, 0, 0, 0, -102, 168, 368, 369, - 370, 14, 371, 0, 300, 0, 0, 249, 250, 372, - 101, 373, 102, 374, 375, 0, 231, 232, 532, 62, - 103, 301, 0, 0, 0, 0, 0, 168, 368, 369, - 370, 14, 371, 0, 300, 0, 0, 249, 250, 372, - 101, 373, 102, 374, 375, 0, 231, 232, 532, 62, - 103, 301, 0, 0, 257, 0, 0, 0, 0, 0, - 0, 303, 304, 376, 377, 378, 379, 380, 0, 258, - 259, 30, 31, 32, 0, 382, 0, 0, 0, 0, - 0, 0, 1, 578, 257, 0, 0, 0, -102, 0, - 0, 303, 304, 376, 377, 378, 379, 380, 0, 258, - 259, 30, 31, 32, 0, 382, 0, 0, 0, 0, - 0, 0, 1, 582, 0, 0, 0, 0, -102, 168, - 368, 369, 370, 14, 371, 0, 300, 0, 0, 249, - 250, 372, 101, 373, 102, 374, 375, 0, 231, 232, - 532, 62, 103, 301, 0, 0, 0, 0, 168, 368, - 369, 370, 14, 371, 0, 300, 0, 0, 249, 250, - 372, 101, 373, 102, 374, 375, 0, 231, 232, 532, - 62, 103, 301, 0, 0, 0, 257, 0, 125, 0, - 0, 0, 0, 303, 304, 376, 377, 378, 379, 380, - 0, 258, 259, 30, 31, 32, 0, 382, 0, 161, - 0, 0, 0, 0, 1, 257, 0, 0, 0, 0, - -102, 0, 303, 304, 376, 377, 378, 379, 380, 0, - 258, 259, 30, 31, 32, 104, 382, 0, 0, 0, - 159, 0, 0, 1, 708, 709, 710, 0, 0, -102, - 0, 0, 0, 0, 154, 155, 0, 0, 0, 0, - 0, 0, 0, 533, 0, 0, 0, 0, 0, 810, - 0, 0, 707, 705, 811, 791, 792, 793,-32766, 395, - 706, 0, 0, 0, 0, 302, 61, 0, 0, 0, - 0, 0, 0, 1010, 396, 397, 0,-32766,-32766, 381, - 810, 0, 794, 790, 788, 811, 0, 39, 0, 43, - 0, 789, 0, 0, 156, 0, 0, 56, 0, 23, - 0, 0, 252, 0, 305, 0, 157, 147, 534, 0, - 148, 149, 24, 0, 0, 0,-32766,-32766,-32766, 0, - 0, 0,-32766, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0,-32766, 0, 0, - 0, 0, 0, 0, 0,-32766, 0, 0, 0,-32766, --32766, 0, 0,-32766,-32766 + 0, -102, 169, 369, 370, 371, 14, 372, 0, 301, + 0, 0, 250, 251, 373, 101, 374, 102, 375, 376, + 0, 232, 233, 535, 62, 103, 302, 0, 0, 0, + 0, 0, 169, 369, 370, 371, 14, 372, 0, 301, + 0, 0, 250, 251, 373, 101, 374, 102, 375, 376, + 0, 232, 233, 535, 62, 103, 302, 0, 0, 0, + 258, 0, 0, 0, 0, 0, 0, 304, 305, 377, + 378, 379, 380, 381, 0, 259, 260, 30, 31, 32, + 0, 383, 0, 0, 0, 0, 0, 0, 1, 789, + 258, 0, 0, 0, -102, 0, 0, 304, 305, 377, + 378, 379, 380, 381, 0, 259, 260, 30, 31, 32, + 0, 383, 0, 0, 0, 0, 0, 0, 1, 586, + 0, 0, 0, 0, -102, 169, 369, 370, 371, 14, + 372, 0, 301, 0, 0, 250, 251, 373, 101, 374, + 102, 375, 376, 0, 232, 233, 535, 62, 103, 302, + 0, 0, 0, 0, 169, 369, 370, 371, 14, 372, + 0, 301, 0, 0, 250, 251, 373, 101, 374, 102, + 375, 376, 0, 232, 233, 535, 62, 103, 302, 0, + 0, 0, 0, 258, 0, 121, 0, 0, 0, 0, + 304, 305, 377, 378, 379, 380, 381, 0, 259, 260, + 30, 31, 32, 0, 383, 0, 0, 0, 0, 0, + 0, 1, 258, 0, 0, 0, 0, -102, 0, 304, + 305, 377, 378, 379, 380, 381, 0, 259, 260, 30, + 31, 32, 0, 383, 0, 0, 0, 0, 0, 0, + 1, 584, 0, 0, 0, 0, -102, 169, 369, 370, + 371, 14, 372, 0, 301, 0, 0, 250, 251, 373, + 101, 374, 102, 375, 376, 0, 232, 233, 535, 62, + 103, 302, 0, 0, 0, 0, 0, 169, 369, 370, + 371, 14, 372, 0, 301, 0, 0, 250, 251, 373, + 101, 374, 102, 375, 376, 0, 232, 233, 535, 62, + 103, 302, 0, 0, 0, 258, 0, 0, 0, 0, + 0, 0, 304, 305, 377, 378, 379, 380, 381, 0, + 259, 260, 30, 31, 32, 0, 383, 0, 0, 0, + 0, 0, 0, 1, 583, 258, 0, 0, 0, -102, + 0, 0, 304, 305, 377, 378, 379, 380, 381, 0, + 259, 260, 30, 31, 32, 0, 383, 0, 0, 0, + 0, 0, 0, 1, 582, 0, 0, 0, 0, -102, + 169, 369, 370, 371, 14, 372, 0, 301, 0, 0, + 250, 251, 373, 101, 374, 102, 375, 376, 0, 232, + 233, 535, 62, 103, 302, 0, 0, 0, 0, 0, + 169, 369, 370, 371, 14, 372, 0, 301, 0, 0, + 250, 251, 373, 101, 374, 102, 375, 376, 0, 232, + 233, 535, 62, 103, 302, 0, 0, 0, 258, 0, + 0, 0, 0, 0, 0, 304, 305, 377, 378, 379, + 380, 381, 0, 259, 260, 30, 31, 32, 0, 383, + 0, 0, 0, 0, 0, 0, 1, 581, 258, 0, + 125, 0, -102, 0, 0, 304, 305, 377, 378, 379, + 380, 381, 0, 259, 260, 30, 31, 32, 0, 383, + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, + 0, 0, -102, 169, 369, 370, 371, 14, 372, 0, + 301, 0, 0, 250, 251, 373, 101, 374, 102, 375, + 376, 0, 232, 233, 535, 62, 103, 302, 0, 0, + 0, 0, 0, 169, 369, 370, 371, 14, 372, 0, + 301, 0, 0, 250, 251, 373, 101, 374, 102, 375, + 376, 0, 232, 233, 535, 62, 103, 302, 0, 0, + 0, 258, 0, 0, 0, 0, 0,-32766, 304, 305, + 377, 378, 379, 380, 381, 0, 259, 260, 30, 31, + 32, 0, 383, 0, 0, 0,-32766,-32766, 0, 1, + 585, 258, 0, 0, 0, -102, 0, 0, 304, 305, + 377, 378, 379, 380, 381, 0, 259, 260, 30, 31, + 32, 104, 383, 0, 0, 0, 160, 0, 0, 1, + 0, 0, 0, 0, 0, -102,-32766,-32766,-32766, 0, + 155, 156,-32766, 0, 0, 0, 0, 0, 0, 0, + 536, 0, 0, 0, 0, 0, 0,-32766, 0, 0, + 0, 0, 795, 796, 797,-32766, 397, 0, 0,-32766, +-32766, 0, 303,-32766,-32766, 0, 0, 0, 0, 0, + 1014, 398, 399, 0, 162, 0, 382, 814, 0, 798, + 794, 792, 815, 0, 39, 0, 43, 0, 793, 0, + 0, 157, 0, 0, 56, 0, 23, 0, 0, 253, + 0, 306, 0, 158, 148, 537, 0, 149, 150, 24, + 711, 712, 713, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 814, 0, 0, 710, 708, + 815, 0, 0, 0, 0, 0, 709, 0, 0, 0, + 0, 0, 61 #line 174 "build/utility/kmyacc.c.parser" }; -#define YYLAST 1815 +#define YYLAST 1833 static char yycheck[] = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 86, 0, 19, 20, 21, - 22, 23, 24, 72, 26, 27, 28, 29, 30, 100, - 79, 2, 63, 35, 36, 84, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 80, - 86, 16, 54, 55, 56, 86, 58, 59, 80, 95, - 79, 28, 29, 30, 86, 84, 68, 86, 70, 88, - 72, 73, 74, 75, 76, 77, 24, 79, 106, 107, - 108, 2, 84, 4, 5, 6, 88, 8, 91, 31, - 2, 93, 13, 14, 96, 14, 17, 99, 100, 101, - 20, 103, 104, 105, 106, 107, 108, 2, 3, 4, + 12, 13, 14, 15, 16, 39, 3, 19, 20, 21, + 22, 23, 24, 14, 26, 27, 28, 29, 30, 16, + 63, 64, 92, 35, 36, 0, 96, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 107, 108, 109, 55, 56, 57, 89, 59, 60, 16, + 89, 28, 29, 30, 97, 2, 99, 69, 97, 71, + 99, 73, 74, 75, 76, 77, 78, 3, 80, 103, + 2, 4, 2, 85, 4, 5, 6, 89, 8, 92, + 31, 20, 94, 13, 14, 97, 87, 17, 100, 101, + 102, 7, 104, 105, 106, 107, 108, 109, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 64, 16, 33, 34, 19, 20, 21, 22, 23, + 24, 87, 26, 27, 28, 29, 30, 104, 105, 96, + 89, 35, 36, 35, 36, 101, 87, 90, 97, 69, + 99, 87, 95, 7, 74, 96, 76, 77, 101, 100, + 96, 55, 56, 57, 93, 59, 60, 87, 88, 80, + 92, 64, 80, 93, 85, 69, 87, 71, 89, 89, + 74, 75, 76, 77, 78, 93, 80, 97, 81, 99, + 73, 85, 86, 94, 87, 89, 24, 80, 87, 80, + 94, 7, 85, 97, 85, 106, 100, 101, 102, 98, + 104, 105, 106, 107, 108, 109, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 91, 16, 33, 34, 19, 20, 21, 22, 23, 24, - 95, 26, 27, 28, 29, 30, 103, 104, 86, 63, - 35, 36, 87, 3, 86, 63, 86, 68, 88, 94, - 26, 27, 73, 95, 75, 76, 96, 99, 98, 54, - 55, 56, 80, 58, 59, 86, 87, 86, 86, 79, - 94, 92, 92, 68, 84, 70, 100, 88, 73, 74, - 75, 76, 77, 38, 79, 96, 88, 98, 4, 84, - 85, 80, 88, 88, 96, 93, 98, 86, 93, 91, - 96, 96, 98, 95, 99, 100, 101, 105, 103, 104, - 105, 106, 107, 108, 1, 2, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 3, - 4, 5, 6, 3, 4, 5, 6, 102, 3, 13, - 14, 15, 16, 13, 14, 15, 16, 79, 92, 7, - 94, 16, 57, 86, 79, 63, 7, 54, 55, 56, - 92, 58, 59, 60, 97, 7, 63, 92, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 86, 79, 88, 83, 7, 94, 84, 85, 86, - 87, 96, 100, 98, 93, 92, 35, 36, 95, 96, - 52, 53, 9, 2, 101, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 86, 16, 62, 63, - 19, 20, 21, 22, 23, 24, 83, 10, 62, 63, - 100, 16, 14, 20, 33, 34, 93, 72, 73, 74, - 14, 31, 37, 78, 88, 60, 32, 60, 60, 63, - 61, 86, 96, 88, 98, 54, 55, 56, 63, 58, - 59, 63, 79, 98, 63, 100, 101, 83, 86, 68, - 79, 70, 80, 72, 73, 74, 75, 76, 77, 78, - 79, 79, 79, 79, 89, 84, 85, 79, 87, 94, - 79, 79, 83, 86, 93, 100, 95, 96, 72, 73, - 74, 79, 101, 79, 78, 80, 105, 106, 79, 79, - 109, 110, 2, 79, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 79, 16, 101, 79, 19, - 20, 21, 22, 23, 24, 79, 85, 80, 80, 85, - 85, 88, 92, 33, 34, 85, 85, 85, 85, 97, - 86, 86, 86, 86, 86, 86, 97, 87, 87, 87, - 87, -1, 88, -1, 54, 55, 56, 89, 58, 59, - 89, 89, 89, 63, 89, 89, 89, 89, 68, 89, - 70, 92, 72, 73, 74, 75, 76, 77, 78, 79, - 91, 91, 91, 91, 84, 85, 91, 87, 91, 91, - 94, 92, 99, 93, 92, 95, 96, 92, 92, 92, - 92, 101, 92, 92, 92, 105, 106, 92, 92, 109, - 110, 2, 92, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 14, 92, 16, 92, 92, 19, 20, - 21, 22, 23, 24, 92, 92, 95, 97, 94, 94, - 94, 94, 33, 34, 94, 94, 94, -1, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, - 95, 95, 95, 54, 55, 56, 95, 58, 59, 95, - 95, 95, 63, 95, 95, -1, 96, 68, 96, 70, - 96, 72, 73, 74, 75, 76, 77, 78, 79, 96, - 96, 96, 96, 84, 85, 96, 87, 96, 96, 96, - 96, 96, 93, 96, 95, 96, 96, 96, 96, 96, - 101, 96, 96, 96, 105, 106, 96, 96, 109, 110, - 2, 96, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 96, 16, 96, 96, 19, 20, 21, - 22, 23, 24, 96, 96, 96, 100, 97, 97, 97, - 97, 33, 34, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, - 97, 97, 54, 55, 56, 97, 58, 59, 97, 97, - 97, 63, 97, 97, 97, 97, 68, 97, 70, 97, - 72, 73, 74, 75, 76, 77, 78, 79, 97, 97, - 97, 97, 84, 85, 97, 97, 97, 97, 97, 104, - -1, 93, -1, 95, 96, 101, 101, -1, -1, 101, - -1, -1, -1, 105, 106, -1, -1, 109, 110, 2, - -1, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, -1, 16, -1, -1, 19, 20, 21, 22, - 23, 24, -1, -1, -1, -1, -1, -1, -1, -1, - 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 3, 4, 5, 6, 3, 4, 5, 6, 80, + 64, 13, 14, 15, 16, 13, 14, 15, 16, 87, + 81, 7, 93, 81, 9, 58, 87, 81, 84, 87, + 55, 56, 57, 87, 59, 60, 61, 14, 94, 64, + 10, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 87, 80, 89, 87, 14, 89, + 85, 86, 87, 88, 97, 16, 99, 97, 93, 99, + 20, 96, 97, 64, 31, 64, 2, 102, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 87, + 16, 32, 84, 19, 20, 21, 22, 23, 24, 73, + 74, 75, 94, 101, 95, 79, 95, 33, 34, 88, + 101, 38, 101, 87, 37, 89, 95, 73, 74, 75, + 93, 61, 95, 79, 61, 99, 61, 101, 102, 55, + 56, 57, 62, 59, 60, 26, 27, 80, 64, 53, + 54, 63, 64, 69, 64, 71, 102, 73, 74, 75, + 76, 77, 78, 79, 80, 64, 80, 86, 86, 85, + 86, 80, 88, 80, 80, 80, 84, 80, 94, 80, + 96, 97, 80, 80, 80, 80, 102, 80, 80, 80, + 106, 107, 80, 87, 110, 111, 2, 81, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 81, + 16, 81, 81, 19, 20, 21, 22, 23, 24, 84, + 86, 88, 86, 86, 86, 86, 97, 33, 34, 87, + 87, 87, 87, 87, 87, 87, 95, 88, 88, 88, + 100, 89, 89, -1, 90, 90, 90, 90, 90, 55, + 56, 57, 90, 59, 60, 90, 90, 90, 64, 95, + 92, 92, 92, 69, 92, 71, 92, 73, 74, 75, + 76, 77, 78, 79, 80, 92, 92, 95, 93, 85, + 86, 93, 88, 93, 93, 93, 93, 98, 94, 93, + 96, 97, 93, 93, 93, 93, 102, 93, 93, 93, + 106, 107, 93, 93, 110, 111, 2, 93, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 93, + 16, 93, 95, 19, 20, 21, 22, 23, 24, 95, + 95, 95, 95, 101, 96, 96, 96, 33, 34, 96, + 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, + 96, 96, 96, 96, 96, 96, 96, 96, -1, 55, + 56, 57, 97, 59, 60, 97, 97, 97, 64, 97, + 97, 97, 97, 69, 97, 71, 97, 73, 74, 75, + 76, 77, 78, 79, 80, 97, 97, 97, 97, 85, + 86, 97, 88, 97, 97, 97, 97, 97, 94, 97, + 96, 97, 97, 97, 97, 97, 102, 97, 97, 97, + 106, 107, 97, -1, 110, 111, 2, 98, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 98, + 16, 98, 98, 19, 20, 21, 22, 23, 24, 98, + 98, 98, 98, 98, 98, 98, 98, 33, 34, 98, + 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, + 98, 98, 98, 98, 98, 98, 98, 98, 98, 55, + 56, 57, 98, 59, 60, 98, 98, 98, 64, 98, + 98, 98, 98, 69, 98, 71, 98, 73, 74, 75, + 76, 77, 78, 79, 80, 98, 98, 102, 102, 85, + 86, -1, -1, -1, 105, -1, -1, -1, 94, -1, + 96, 97, -1, -1, -1, -1, 102, -1, -1, -1, + 106, 107, -1, -1, 110, 111, 2, -1, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, -1, + 16, -1, -1, 19, 20, 21, 22, 23, 24, -1, + -1, -1, -1, -1, -1, -1, -1, 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 54, 55, 56, -1, 58, 59, -1, -1, -1, - 63, -1, -1, -1, -1, 68, -1, 70, -1, 72, - 73, 74, 75, 76, 77, 78, 79, -1, -1, -1, - -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, - 93, -1, -1, 96, -1, -1, -1, -1, 101, -1, - -1, -1, 105, 106, -1, -1, 109, 110, 1, 2, - 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, - 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, - 23, 24, 25, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, + 56, 57, -1, 59, 60, -1, -1, -1, 64, -1, + -1, -1, -1, 69, -1, 71, -1, 73, 74, 75, + 76, 77, 78, 79, 80, -1, -1, -1, -1, 85, + 86, -1, -1, -1, -1, -1, -1, -1, 94, -1, + -1, 97, -1, -1, -1, -1, 102, -1, -1, -1, + 106, 107, -1, -1, 110, 111, 1, 2, 3, 4, + 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, + 15, 16, 17, 18, -1, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 58, -1, 60, -1, -1, - -1, -1, 65, 66, 67, 68, 69, 70, 71, -1, - 73, 74, 75, 76, 77, -1, 79, -1, -1, -1, - -1, -1, -1, 86, 87, -1, -1, -1, -1, 92, - -1, -1, 95, -1, -1, -1, -1, -1, 101, 1, + -1, -1, -1, -1, 59, -1, 61, -1, -1, -1, + -1, 66, 67, 68, 69, 70, 71, 72, -1, 74, + 75, 76, 77, 78, -1, 80, -1, -1, -1, -1, + -1, -1, 87, 88, -1, -1, -1, -1, 93, -1, + -1, 96, -1, -1, -1, -1, -1, 102, 1, 2, + 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, + 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, + 23, 24, 25, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, - 22, 23, 24, 25, -1, -1, -1, -1, -1, 0, - 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, - 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, - 21, 22, 23, 24, 25, -1, 58, -1, -1, -1, - -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, - -1, 73, 74, 75, 76, 77, -1, 79, -1, -1, - -1, -1, -1, -1, 86, -1, -1, 58, -1, -1, - 92, -1, -1, 95, 65, 66, 67, 68, 69, 70, - 71, -1, 73, 74, 75, 76, 77, -1, 79, -1, - -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, - -1, 92, 1, 2, 3, 4, 5, 6, -1, 8, + 22, 23, 24, 25, -1, -1, 59, -1, -1, -1, + -1, -1, -1, 66, 67, 68, 69, 70, 71, 72, + -1, 74, 75, 76, 77, 78, -1, 80, -1, -1, + -1, -1, -1, -1, 87, -1, -1, 59, -1, -1, + 93, -1, -1, 96, 66, 67, 68, 69, 70, 71, + 72, -1, 74, 75, 76, 77, 78, -1, 80, -1, + -1, -1, -1, -1, -1, 87, -1, -1, -1, -1, + -1, 93, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, - -1, 20, 21, 22, 23, 24, 25, -1, -1, 58, - -1, -1, -1, -1, -1, -1, 65, 66, 67, 68, - 69, 70, 71, -1, 73, 74, 75, 76, 77, -1, - 79, -1, -1, -1, -1, -1, -1, 86, 87, 58, - -1, -1, -1, 92, -1, -1, 65, 66, 67, 68, - 69, 70, 71, -1, 73, 74, 75, 76, 77, -1, - 79, -1, -1, -1, -1, -1, -1, 86, 87, -1, - -1, -1, -1, 92, 1, 2, 3, 4, 5, 6, - -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, - 17, 18, -1, 20, 21, 22, 23, 24, 25, -1, - -1, -1, -1, 1, 2, 3, 4, 5, 6, -1, - 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, - 18, -1, 20, 21, 22, 23, 24, 25, -1, -1, - -1, 58, -1, 60, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, 71, -1, 73, 74, 75, 76, - 77, -1, 79, -1, -1, -1, -1, -1, -1, 86, - 58, -1, -1, -1, -1, 92, -1, 65, 66, 67, - 68, 69, 70, 71, -1, 73, 74, 75, 76, 77, - -1, 79, -1, -1, -1, -1, -1, -1, 86, 87, - -1, -1, -1, -1, 92, 1, 2, 3, 4, 5, - 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, - 16, 17, 18, -1, 20, 21, 22, 23, 24, 25, - -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, + -1, 20, 21, 22, 23, 24, 25, -1, -1, -1, + 59, -1, -1, -1, -1, -1, -1, 66, 67, 68, + 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, + -1, 80, -1, -1, -1, -1, -1, -1, 87, 88, + 59, -1, -1, -1, 93, -1, -1, 66, 67, 68, + 69, 70, 71, 72, -1, 74, 75, 76, 77, 78, + -1, 80, -1, -1, -1, -1, -1, -1, 87, 88, + -1, -1, -1, -1, 93, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, 23, 24, 25, - -1, -1, 58, -1, -1, -1, -1, -1, -1, 65, - 66, 67, 68, 69, 70, 71, -1, 73, 74, 75, - 76, 77, -1, 79, -1, -1, -1, -1, -1, -1, - 86, 87, 58, -1, -1, -1, 92, -1, -1, 65, - 66, 67, 68, 69, 70, 71, -1, 73, 74, 75, - 76, 77, -1, 79, -1, -1, -1, -1, -1, -1, - 86, 87, -1, -1, -1, -1, 92, 1, 2, 3, + -1, -1, -1, -1, 1, 2, 3, 4, 5, 6, + -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, + 17, 18, -1, 20, 21, 22, 23, 24, 25, -1, + -1, -1, -1, 59, -1, 61, -1, -1, -1, -1, + 66, 67, 68, 69, 70, 71, 72, -1, 74, 75, + 76, 77, 78, -1, 80, -1, -1, -1, -1, -1, + -1, 87, 59, -1, -1, -1, -1, 93, -1, 66, + 67, 68, 69, 70, 71, 72, -1, 74, 75, 76, + 77, 78, -1, 80, -1, -1, -1, -1, -1, -1, + 87, 88, -1, -1, -1, -1, 93, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, 23, - 24, 25, -1, -1, 58, -1, -1, -1, -1, -1, - -1, 65, 66, 67, 68, 69, 70, 71, -1, 73, - 74, 75, 76, 77, -1, 79, -1, -1, -1, -1, - -1, -1, 86, 87, 58, -1, -1, -1, 92, -1, - -1, 65, 66, 67, 68, 69, 70, 71, -1, 73, - 74, 75, 76, 77, -1, 79, -1, -1, -1, -1, - -1, -1, 86, 87, -1, -1, -1, -1, 92, 1, - 2, 3, 4, 5, 6, -1, 8, -1, -1, 11, - 12, 13, 14, 15, 16, 17, 18, -1, 20, 21, - 22, 23, 24, 25, -1, -1, -1, -1, 1, 2, - 3, 4, 5, 6, -1, 8, -1, -1, 11, 12, - 13, 14, 15, 16, 17, 18, -1, 20, 21, 22, - 23, 24, 25, -1, -1, -1, 58, -1, 60, -1, - -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, - -1, 73, 74, 75, 76, 77, -1, 79, -1, 19, - -1, -1, -1, -1, 86, 58, -1, -1, -1, -1, - 92, -1, 65, 66, 67, 68, 69, 70, 71, -1, - 73, 74, 75, 76, 77, 14, 79, -1, -1, -1, - 19, -1, -1, 86, 54, 55, 56, -1, -1, 92, - -1, -1, -1, -1, 33, 34, -1, -1, -1, -1, - -1, -1, -1, 42, -1, -1, -1, -1, -1, 79, - -1, -1, 82, 83, 84, 54, 55, 56, 14, 58, - 90, -1, -1, -1, -1, 64, 96, -1, -1, -1, - -1, -1, -1, 72, 73, 74, -1, 33, 34, 78, - 79, -1, 81, 82, 83, 84, -1, 86, -1, 88, - -1, 90, -1, -1, 93, -1, -1, 96, -1, 98, - -1, -1, 101, -1, 103, -1, 105, 106, 107, -1, - 109, 110, 111, -1, -1, -1, 72, 73, 74, -1, - -1, -1, 78, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 93, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, 105, - 106, -1, -1, 109, 110 + 24, 25, -1, -1, -1, 59, -1, -1, -1, -1, + -1, -1, 66, 67, 68, 69, 70, 71, 72, -1, + 74, 75, 76, 77, 78, -1, 80, -1, -1, -1, + -1, -1, -1, 87, 88, 59, -1, -1, -1, 93, + -1, -1, 66, 67, 68, 69, 70, 71, 72, -1, + 74, 75, 76, 77, 78, -1, 80, -1, -1, -1, + -1, -1, -1, 87, 88, -1, -1, -1, -1, 93, + 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, + 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, + 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, + 1, 2, 3, 4, 5, 6, -1, 8, -1, -1, + 11, 12, 13, 14, 15, 16, 17, 18, -1, 20, + 21, 22, 23, 24, 25, -1, -1, -1, 59, -1, + -1, -1, -1, -1, -1, 66, 67, 68, 69, 70, + 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, + -1, -1, -1, -1, -1, -1, 87, 88, 59, -1, + 61, -1, 93, -1, -1, 66, 67, 68, 69, 70, + 71, 72, -1, 74, 75, 76, 77, 78, -1, 80, + -1, -1, -1, -1, -1, -1, 87, -1, -1, -1, + -1, -1, 93, 1, 2, 3, 4, 5, 6, -1, + 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, + 18, -1, 20, 21, 22, 23, 24, 25, -1, -1, + -1, -1, -1, 1, 2, 3, 4, 5, 6, -1, + 8, -1, -1, 11, 12, 13, 14, 15, 16, 17, + 18, -1, 20, 21, 22, 23, 24, 25, -1, -1, + -1, 59, -1, -1, -1, -1, -1, 14, 66, 67, + 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, + 78, -1, 80, -1, -1, -1, 33, 34, -1, 87, + 88, 59, -1, -1, -1, 93, -1, -1, 66, 67, + 68, 69, 70, 71, 72, -1, 74, 75, 76, 77, + 78, 14, 80, -1, -1, -1, 19, -1, -1, 87, + -1, -1, -1, -1, -1, 93, 73, 74, 75, -1, + 33, 34, 79, -1, -1, -1, -1, -1, -1, -1, + 43, -1, -1, -1, -1, -1, -1, 94, -1, -1, + -1, -1, 55, 56, 57, 102, 59, -1, -1, 106, + 107, -1, 65, 110, 111, -1, -1, -1, -1, -1, + 73, 74, 75, -1, 19, -1, 79, 80, -1, 82, + 83, 84, 85, -1, 87, -1, 89, -1, 91, -1, + -1, 94, -1, -1, 97, -1, 99, -1, -1, 102, + -1, 104, -1, 106, 107, 108, -1, 110, 111, 112, + 55, 56, 57, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 80, -1, -1, 83, 84, + 85, -1, -1, -1, -1, -1, 91, -1, -1, -1, + -1, -1, 97 #line 179 "build/utility/kmyacc.c.parser" }; static short yybase[] = { - 1597, 213, 857, 1446, 1324, 1232, 1203, 1568, 989, 958, - 1354, 1476, 1111, 1081, 1597, 1597, 1597, 1597, 1597, 1597, - 1597, 1597, 1597, 361, 373, 372, 365, 371, 364, 370, - 105, 105, 105, 105, 105, 105, 311, 420, 529, 638, - 747, 747, 240, 305, 202, 76, 82, 82, 82, 82, - 80, -31, -36, -71, -71, -71, 111, -22, 52, 498, - 308, 302, 292, 292, 292, 377, 377, 377, 292, 292, - 292, 292, 377, 292, 1661, 1661, 1661, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 1661, 377, 377, 1661, 1661, 377, 1661, 377, - 377, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 378, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 81, 81, 81, - 81, 81, 328, 328, 328, 328, 336, 336, 336, 336, - 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, - 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, - 336, 336, 336, 336, 1704, 1704, 1704, 1704, 1704, 1704, - 1704, 1704, 275, 275, 275, 35, 29, 325, 79, 478, - 573, 398, 477, 397, 572, 396, 395, -3, -3, -3, - -3, -3, -3, -3, -3, -3, -3, -3, -3, 1630, - 1630, 1630, 236, 205, 177, 266, 60, 60, 60, 60, - 379, 379, 379, 296, 296, 296, 296, 296, 296, 296, - 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, - 296, 296, 296, 58, 104, 104, 104, 33, 33, 33, - -19, -19, -19, -19, -19, -19, 178, 185, -49, -49, - -49, -49, -49, -49, 98, -28, -28, -28, 252, 293, - 321, 245, 500, 502, 90, 635, 504, 323, 334, 340, - 145, 124, 271, 102, 258, 276, 366, 108, 425, 422, - 166, 323, 334, 340, 55, 369, 460, 452, 576, 124, - 271, 271, 271, 271, 271, 102, 102, 258, 440, 578, - 211, 577, 570, 571, 253, 88, 88, 88, 88, 88, - 376, 314, 530, 313, 313, 625, 303, 359, 530, 522, - 522, 376, 376, 376, 476, 470, 376, 530, 525, 327, - 416, 486, 486, 384, 384, 376, 376, 376, 483, 532, - 376, 376, 499, 499, 499, 499, 487, 376, 483, 499, - 532, 376, 499, 376, 499, 499, 499, 376, 499, 487, - 376, 499, 376, 376, 376, 376, 376, 376, 499, 499, - 499, 499, 487, 376, 376, 376, 376, 376, 524, 485, - 523, 569, 521, 484, 317, 431, 430, 318, 301, 322, - 332, 513, 496, 16, 428, 320, 324, 413, 566, 634, - 315, 184, 519, 427, 463, 531, 515, 514, 533, 411, - 410, 465, 356, 527, 335, 375, 374, 568, 567, 393, - 591, 560, 559, 557, 524, 523, 569, 521, 475, 461, - 474, 318, 322, 479, 480, 473, 481, 298, 400, 466, - 590, 392, 589, 419, 545, 516, 288, 268, 252, 399, - 360, 531, 482, 541, 418, 462, 312, 415, 367, 588, - 491, 629, 472, 628, 627, 593, 380, 466, 624, 299, - 320, 495, 324, 413, 566, 634, 315, 315, 315, 587, - 467, 623, 259, 411, 436, 344, 540, 537, 536, 535, - 339, 383, 417, 417, 417, 426, 368, 592, 586, 622, - 621, 612, 610, 608, 388, 363, 363, 494, 607, 382, - 585, 606, 140, 435, 584, 605, 583, 319, 412, 409, - 454, 582, 391, 295, 455, 432, 362, 603, 602, 601, - 598, 594, 581, 580, 631, 294, 417, 630, 297, 579, - 381, 381, 0, 0, 0, 0, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, -2, - -2, -2, -2, -2, -2, -2, 0, 0, 0, 0, - 0, 0, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 0, 0, 0, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 0, 1661, - 1661, 0, 0, 1661, 0, 1661, 1661, 0, 0, 0, - 0, 0, 0, 0, 0, 1661, 0, 0, 0, 0, - 0, 0, 0, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, - 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1630, 1630, - 1630, -3, -3, -3, 0, -3, -3, -3, -3, -3, - -3, -3, -3, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, - 89, 89, 89, 89, 89, 89, 89, 89, 89, -19, - -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, - -19, -19, -19, -19, -19, -19, -19, -19, -19, 88, - 89, 89, 89, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 88, 88, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 108, 88, 88, 0, 499, 499, - 0, 499, 499, 531, 515, 514, 0, 0, 0, 0, - 0, 0, 533, 0, 464, 464, 0, 531, 515, 514, - 0, 471, 471, 471, 471, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 464, 471, 0, 471, 471, 471 + 1612, 215, 865, 1459, 1336, 1243, 1214, 1489, 998, 967, + 1366, 1582, 1121, 1091, 1612, 1612, 1612, 1612, 1612, 1612, + 1612, 1612, 1612, 366, 369, 364, 368, 367, 312, 311, + 106, 106, 106, 106, 106, 106, 314, 534, 424, 644, + 754, 754, 242, 57, 249, 251, 186, 186, 186, 186, + 71, 107, 64, 44, 44, 44, 179, 182, 172, 490, + 331, 358, 377, 377, 377, 376, 376, 376, 377, 377, + 377, 377, 376, 377, 1677, 1677, 1677, 376, 376, 376, + 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, + 376, 376, 1677, 376, 376, 1677, 1677, 376, 1677, 376, + 376, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 374, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 9, 9, 9, + 9, 9, 263, 263, 263, 263, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, + 284, 284, 284, 284, 284, 1633, 1633, 1633, 1633, 1633, + 1633, 1633, 1633, 266, 266, 266, 43, 78, 289, 80, + 475, 573, 397, 474, 395, 572, 392, 388, -3, -3, + -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, + 1735, 1735, 1735, 238, 207, 111, -33, 210, 210, 210, + 210, 378, 378, 378, 320, 320, 320, 320, 320, 320, + 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, + 320, 320, 320, 320, 59, 51, 51, 51, 33, 33, + 33, 89, 89, 89, 89, 89, 89, 169, 92, 117, + 117, 117, 117, 117, 117, -29, -57, -57, -57, 194, + 334, 297, 13, 359, 495, 119, 626, 498, 290, 332, + 333, 349, 108, 99, 326, 318, 342, -24, -60, 422, + 421, 267, 290, 332, 333, 261, 549, 561, 439, 571, + 349, 108, 108, 108, 108, 108, 99, 99, 326, 436, + 575, 248, 574, 563, 564, 184, 63, 63, 63, 63, + 63, 375, 325, 521, 324, 324, 629, 255, 339, 521, + 507, 507, 375, 375, 375, 476, 466, 375, 521, 519, + 270, 371, 484, 484, 382, 382, 375, 375, 375, 481, + 526, 375, 375, 491, 491, 491, 491, 485, 375, 481, + 491, 526, 375, 491, 375, 491, 491, 491, 375, 491, + 485, 375, 491, 375, 375, 375, 375, 375, 375, 491, + 491, 491, 491, 485, 375, 375, 375, 375, 375, 518, + 483, 509, 545, 505, 482, 336, 431, 430, 329, 316, + 321, 327, 499, 489, 35, 429, 313, 283, 299, 370, + 462, 625, 317, 77, 504, 426, 423, 524, 502, 500, + 527, 399, 398, 412, 338, 520, 361, 373, 372, 542, + 541, 396, 590, 540, 538, 537, 518, 509, 545, 505, + 473, 468, 470, 329, 321, 477, 478, 469, 479, 300, + 384, 464, 589, 387, 588, 458, 536, 503, 94, 254, + 194, 418, 415, 524, 480, 535, 400, 420, 323, 402, + 346, 587, 486, 618, 467, 616, 614, 592, 380, 464, + 613, 310, 283, 299, 370, 462, 625, 317, 317, 317, + 586, 465, 612, 313, 488, 146, 399, 435, 337, 532, + 530, 529, 528, 335, 379, 413, 413, 413, 456, 360, + 591, 585, 611, 609, 608, 607, 604, 386, 383, 383, + 487, 600, 381, 584, 599, 74, 434, 583, 598, 582, + 322, 414, 404, 444, 581, 385, 303, 440, 432, 419, + 597, 596, 595, 594, 593, 578, 577, 628, 365, 413, + 627, 305, 576, 363, 363, 0, 0, 0, 0, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, -2, -2, -2, -2, -2, -2, -2, 0, + 0, 0, 0, 0, 0, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 0, 0, 0, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 0, 1677, 1677, 0, 0, 1677, 0, 1677, 1677, + 0, 0, 0, 0, 0, 0, 0, 0, 1677, 0, + 0, 0, 0, 0, 0, 0, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, + 1677, 1677, 1735, 1735, 1735, -3, -3, -3, 0, -3, + -3, -3, -3, -3, -3, -3, -3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 90, 90, 90, 90, 90, 90, 90, + 90, 90, 90, 89, 89, 89, 89, 89, 89, 89, + 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, + 89, 89, 89, 63, 90, 90, 90, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 63, 63, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -60, 63, + 63, 0, 491, 491, 0, 491, 491, 524, 502, 500, + 0, 0, 0, 0, 0, 527, 0, 0, 394, 394, + 0, 524, 502, 500, 0, 457, 457, 457, 457, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 394, 457, + 0, 457, 457, 457 #line 183 "build/utility/kmyacc.c.parser" }; -#define YY2TBLSTATE 294 +#define YY2TBLSTATE 295 static short yydefault[] = { 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767,32767, 384, 385, 386, 475, 475, 475, 475, -32767, 338,32767,32767,32767,32767, 522, 522, 522, 522, +32767,32767,32767, 385, 386, 387, 476, 476, 476, 476, +32767, 339,32767,32767,32767,32767, 523, 523, 523, 523, 32767,32767, 104,32767,32767,32767,32767,32767,32767, 94, - 346,32767, 104, 104, 104,32767,32767,32767, 104, 104, + 347,32767, 104, 104, 104,32767,32767,32767, 104, 104, 104, 104,32767, 104,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767,32767, 94,32767, 376, 377,32767,32767,32767, +32767,32767,32767, 94,32767, 377, 378,32767,32767,32767, 32767,32767, 96,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767, 224, 226,32767,32767,32767,32767,32767,32767, - 378,32767,32767,32767,32767,32767, 106,32767,32767,32767, -32767,32767,32767,32767,32767,32767,32767, 351, 93, 343, - 349, 344, 528, 353, 362, 347, 95, 350, 363,32767, - 151, 153,32767, 236,32767, 144, 234, 235, 232, 231, - 125, 529, 364, 503, 503, 503, 503, 503, 503, 503, - 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, - 503, 503,32767,32767, 145, 152, 154, 200, 201, 202, -32767,32767,32767, 379, 380,32767, 373, 374,32767,32767, -32767,32767,32767,32767, 520, 212, 214, 213, 461, 106, - 106, 177, 475, 475,32767, 475, 475,32767,32767,32767, - 187, 198, 203, 209, 219, 221,32767, 461,32767,32767, -32767, 395, 382, 383, 228,32767,32767,32767,32767, 199, - 205, 207, 208, 204, 206, 210, 211, 220,32767,32767, -32767,32767,32767,32767,32767, 106, 106, 106, 106, 106, -32767,32767,32767,32767,32767, 335, 79,32767,32767, 501, - 501,32767,32767, 370, 531, 337,32767,32767, 81, 83, - 337, 495, 495, 515, 515,32767,32767,32767, 182, 518, -32767,32767, 475, 475, 475, 475, 477,32767, 182, 475, - 518,32767, 475,32767, 475, 475, 475,32767, 475, 477, -32767, 475,32767,32767,32767,32767,32767,32767, 475, 475, - 475, 475, 477,32767,32767,32767,32767,32767,32767,32767, -32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767, 274,32767,32767, 188, 190, 192, 194, 196, - 215,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767, 105,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767,32767,32767, 365, 366, 368, 375, 255, 256, - 257, 387, 388, 474, 274, 275,32767,32767,32767, 339, -32767,32767,32767,32767,32767,32767,32767, 261, 259,32767, -32767, 395, 274,32767, 50,32767,32767,32767,32767,32767, - 507,32767, 504,32767,32767,32767,32767, 340,32767,32767, - 189,32767, 191, 193, 195, 197, 216, 217, 218,32767, - 523,32767,32767, 77,32767,32767,32767,32767,32767,32767, - 338,32767, 465, 466, 463,32767,32767,32767,32767,32767, -32767,32767,32767,32767,32767, 514, 512, 268,32767,32767, -32767,32767, 61,32767,32767,32767,32767,32767, 53, 462, +32767,32767,32767, 225, 227,32767,32767,32767,32767,32767, +32767, 379,32767,32767,32767,32767,32767, 106,32767,32767, +32767,32767,32767,32767,32767,32767,32767,32767, 352, 93, + 344, 350, 345, 529, 354, 363, 348, 95, 351, 364, +32767, 151, 153,32767, 237,32767, 144, 235, 236, 233, + 232, 125, 530, 365, 504, 504, 504, 504, 504, 504, + 504, 504, 504, 504, 504, 504, 504, 504, 504, 504, + 504, 504, 504,32767,32767, 145, 152, 154, 201, 202, + 203,32767,32767,32767, 380, 381,32767, 374, 375,32767, +32767,32767,32767,32767,32767, 521, 213, 215, 214, 462, + 106, 106, 177, 476, 476,32767, 476, 476,32767,32767, +32767, 199, 204, 210, 220, 222,32767, 185, 462,32767, +32767,32767, 396, 383, 384, 229,32767,32767,32767,32767, + 200, 206, 208, 209, 205, 207, 211, 212, 221,32767, +32767,32767,32767,32767,32767,32767, 106, 106, 106, 106, + 106,32767,32767,32767,32767,32767, 336, 79,32767,32767, + 502, 502,32767,32767, 371, 532, 338,32767,32767, 81, + 83, 338, 496, 496, 516, 516,32767,32767,32767, 182, + 519,32767,32767, 476, 476, 476, 476, 478,32767, 182, + 476, 519,32767, 476,32767, 476, 476, 476,32767, 476, + 478,32767, 476,32767,32767,32767,32767,32767,32767, 476, + 476, 476, 476, 478,32767,32767,32767,32767,32767,32767, 32767,32767,32767,32767,32767,32767,32767,32767,32767,32767, -32767,32767,32767,32767,32767,32767, 464,32767,32767,32767, - 483,32767, 531, 455, 455, 531 +32767,32767,32767, 275,32767,32767, 187, 189, 191, 193, + 195, 197, 216,32767,32767,32767,32767,32767,32767,32767, +32767,32767,32767, 105,32767,32767,32767,32767,32767,32767, +32767,32767,32767,32767,32767,32767, 366, 367, 369, 376, + 256, 257, 258, 388, 389, 475, 275, 276,32767,32767, +32767, 340,32767,32767,32767,32767,32767,32767,32767, 262, + 260,32767,32767, 396, 275,32767, 50,32767,32767,32767, +32767,32767, 508,32767, 505,32767,32767,32767,32767, 341, +32767,32767, 190, 192, 194, 196, 198, 217, 218, 219, +32767, 524,32767, 188,32767,32767, 77,32767,32767,32767, +32767,32767,32767, 339,32767, 466, 467, 464,32767,32767, +32767,32767,32767,32767,32767,32767,32767,32767, 515, 513, + 269,32767,32767,32767,32767, 61,32767,32767,32767,32767, +32767, 53, 463,32767,32767,32767,32767,32767,32767,32767, +32767,32767,32767,32767,32767,32767,32767,32767,32767, 465, +32767,32767,32767, 484,32767, 532, 456, 456, 532 #line 188 "build/utility/kmyacc.c.parser" }; static short yygoto[] = { - 184, 179, 179, 179, 182, 182, 182, 182, 180, 182, - 177, 184, 184, 184, 170, 170, 438, 178, 185, 174, - 177, 177, 177, 500, 522, 529, 177, 177, 177, 177, - 892, 177, 180, 180, 180, 717, 717, 717, 1020, 1020, - 716, 716, 716, 1019, 530, 461, 499, 721, 531, 989, - 180, 483, 484, 180, 180, 459, 180, 526, 988, 165, - 169, 178, 167, 165, 169, 181, 171, 183, 172, 173, - 186, 187, 188, 175, 176, 266, 266, 266, 266, 266, + 185, 180, 180, 180, 183, 183, 183, 183, 181, 183, + 178, 185, 185, 185, 171, 171, 440, 179, 186, 175, + 178, 178, 178, 503, 525, 532, 178, 178, 178, 178, + 642, 178, 181, 181, 181, 720, 720, 720, 1024, 1024, + 719, 719, 719, 1023, 533, 474, 502, 725, 534, 993, + 181, 486, 487, 181, 181, 896, 181, 529, 992, 166, + 170, 179, 168, 166, 170, 182, 172, 184, 173, 174, + 187, 188, 189, 176, 177, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 714, 675, - 275, 276, 278, 280, 281, 282, 283, 284, 684, 684, - 684, 781, 596, 457, 781, 781, 781, 781, 289, 663, - 698, 291, 292, 274, 293, 663, 663, 663, 703, 703, - 703, 769, 765, 766, 758, 759, 761, 763, 437, 782, - 668, 717, 782, 782, 782, 782, 668, 668, 668, 698, - 698, 698, 466, 467, 468, 703, 703, 703, 897, 897, - 897, 897, 897, 897, 412, 413, 1062, 412, 413, 450, - 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, - 450, 450, 450, 450, 450, 450, 450, 450, 450, 773, - 329, 340, 523, 1014, 538, 460, 248, 267, 267, 267, - 267, 267, 539, 391, 541, 541, 541, 541, 391, 502, - 599, 598, 610, 611, 609, 608, 607, 462, 306, 357, - 1047, 808, 777, 665, 685, 700, 1035, 228, 229, 1029, - 1030, 306, 366, 895, 1021, 893, 463, 479, 479, 479, - 224, 225, 226, 616, 620, 601, 285, 286, 1027, 1028, - 682, 682, 682, 465, 288, 696, 269, 464, 269, 1015, - 279, 1016, 596, 678, 677, 1017, 246, 247, 1018, 1042, - 1007, 1008, 1022, 1023, 1024, 1009, 11, 12, 13, 13, - 287, 691, 692, 693, 694, 695, 683, 683, 683, 674, - 338, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, - 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, - 1045, 196, 197, 198, 199, 472, 996, 406, 473, 399, - 399, 399, 399, 399, 672, 322, 481, 1046, 1046, 1046, - 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, - 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1033, 805, 805, - 712, 331, 496, 660, 400, 400, 400, 400, 400, 400, - 660, 660, 660, 119, 316, 316, 639, 660, 337, 317, - 1044, 158, 660, 660, 660, 660, 660, 660, 660, 660, - 660, 660, 660, 660, 660, 660, 660, 646, 660, 660, - 0, 0, 660, 0, 660, 660, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 896, 881, 649, 650, - 651, 652, 653, 654, 655, 656, 657, 658, 659, 647, - 648, 0, 646, 1061, 0, 0, 884, 202, 1004, 1063, - 0, 201, 201, 201, 201, 0, 201, 394, 202, 202, - 202, 194, 194, 0, 341, 343, 347, 513, 0, 0, - 394, 352, 0, 0, 353, 0, 354, 355, 356, 0, - 6, 0, 0, 7, 0, 0, 0, 0, 0, 0, - 363, 364, 365, 528, 453, 454, 458, 471, 488, 489, - 490, 491, 492, 493, 498, 501, 505, 517, 518, 519, - 520, 521, 0, 0, 0, 433, 439, 440, 445, 485, - 299, 474, 0, 0, 0, 503, 515, 516, 524, 0, - 527 + 266, 266, 266, 266, 266, 266, 266, 266, 300, 477, + 358, 396, 461, 506, 518, 519, 527, 599, 530, 687, + 687, 687, 785, 367, 396, 785, 785, 785, 785, 1066, + 666, 701, 11, 12, 13, 13, 666, 666, 666, 706, + 706, 706, 812, 781, 668, 688, 703, 1039, 439, 459, + 786, 671, 720, 786, 786, 786, 786, 671, 671, 671, + 701, 701, 701, 467, 468, 469, 706, 706, 706, 435, + 441, 442, 447, 488, 281, 282, 283, 284, 285, 473, + 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, + 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, + 777, 330, 341, 526, 1018, 541, 462, 249, 268, 268, + 268, 268, 268, 542, 393, 544, 544, 544, 544, 393, + 505, 602, 601, 613, 614, 612, 611, 610, 899, 307, + 897, 1051, 773, 769, 770, 762, 763, 765, 767, 463, + 1033, 1034, 307, 414, 415, 1025, 414, 415, 482, 482, + 482, 225, 226, 227, 619, 623, 604, 717, 678, 1031, + 1032, 685, 685, 685, 464, 289, 699, 270, 599, 270, + 1019, 465, 1020, 229, 230, 466, 1021, 286, 287, 1022, + 280, 1011, 1012, 1026, 1027, 1028, 1013, 275, 197, 198, + 199, 200, 694, 695, 696, 697, 698, 686, 686, 686, + 247, 248, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, + 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, + 1049, 1049, 901, 901, 901, 901, 901, 901, 288, 476, + 401, 401, 401, 401, 401, 681, 680, 1046, 1050, 1050, + 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, + 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1037, 809, + 809, 715, 677, 475, 663, 402, 402, 402, 402, 402, + 402, 663, 663, 663, 339, 317, 317, 675, 663, 338, + 323, 1000, 408, 663, 663, 663, 663, 663, 663, 663, + 663, 663, 663, 663, 663, 663, 663, 663, 649, 663, + 663, 484, 119, 663, 332, 663, 663, 499, 1048, 318, + 0, 0, 159, 0, 0, 0, 0, 900, 885, 652, + 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, + 650, 651, 0, 649, 1065, 0, 0, 888, 203, 1008, + 1067, 0, 202, 202, 202, 202, 0, 202, 0, 203, + 203, 203, 195, 195, 0, 342, 344, 348, 516, 0, + 0, 0, 353, 0, 0, 354, 0, 355, 356, 357, + 0, 6, 0, 0, 7, 0, 0, 0, 0, 0, + 0, 364, 365, 366, 531, 455, 456, 460, 472, 491, + 492, 493, 494, 495, 496, 501, 504, 508, 520, 521, + 522, 523, 524, 276, 277, 279, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 290, 0, 0, 292, 293, 0, 294 #line 192 "build/utility/kmyacc.c.parser" }; -#define YYGLAST 511 +#define YYGLAST 518 static char yygcheck[] = { 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 75, 37, 37, 37, - 37, 37, 37, 99, 99, 99, 37, 37, 37, 37, - 73, 37, 37, 37, 37, 7, 7, 7, 7, 7, - 41, 41, 41, 41, 41, 41, 41, 41, 41, 66, - 37, 82, 82, 37, 37, 67, 37, 82, 66, 37, + 37, 37, 37, 37, 37, 37, 74, 37, 37, 37, + 37, 37, 37, 98, 98, 98, 37, 37, 37, 37, + 31, 37, 37, 37, 37, 7, 7, 7, 7, 7, + 41, 41, 41, 41, 41, 41, 41, 41, 41, 65, + 37, 81, 81, 37, 37, 72, 37, 81, 65, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 117, 117, - 70, 70, 70, 51, 51, 51, 51, 51, 98, 98, - 98, 7, 35, 68, 7, 7, 7, 7, 70, 60, - 60, 70, 70, 57, 70, 60, 60, 60, 75, 75, - 75, 56, 56, 56, 56, 56, 56, 56, 63, 98, - 98, 7, 98, 98, 98, 98, 98, 98, 98, 60, - 60, 60, 54, 54, 54, 75, 75, 75, 57, 57, - 57, 57, 57, 57, 77, 77, 101, 77, 77, 75, - 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, - 75, 75, 75, 75, 75, 75, 75, 75, 75, 104, - 104, 104, 104, 104, 4, 44, 75, 75, 75, 75, - 75, 75, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 45, 7, 103, - 75, 59, 59, 59, 59, 59, 59, 50, 50, 7, - 7, 7, 103, 74, 7, 74, 46, 83, 83, 83, - 113, 113, 113, 7, 7, 7, 52, 52, 7, 7, - 63, 63, 63, 48, 80, 7, 80, 47, 80, 7, - 49, 7, 35, 112, 112, 7, 53, 53, 7, 96, - 7, 7, 7, 7, 7, 7, 3, 3, 3, 3, - 55, 7, 7, 7, 7, 7, 64, 64, 64, 118, - 32, 63, 63, 63, 63, 63, 63, 63, 63, 63, + 37, 37, 37, 37, 37, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, 40, 40, + 102, 31, 66, 40, 40, 40, 40, 35, 40, 97, + 97, 97, 7, 102, 31, 7, 7, 7, 7, 100, + 59, 59, 3, 3, 3, 3, 59, 59, 59, 74, + 74, 74, 58, 58, 58, 58, 58, 58, 62, 67, + 97, 97, 7, 97, 97, 97, 97, 97, 97, 97, + 59, 59, 59, 53, 53, 53, 74, 74, 74, 31, + 31, 31, 31, 31, 50, 50, 50, 50, 50, 42, + 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, + 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, + 103, 103, 103, 103, 103, 4, 43, 74, 74, 74, + 74, 74, 74, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 73, 7, + 73, 74, 55, 55, 55, 55, 55, 55, 55, 44, + 7, 7, 7, 76, 76, 7, 76, 76, 82, 82, + 82, 113, 113, 113, 7, 7, 7, 117, 117, 7, + 7, 62, 62, 62, 45, 79, 7, 79, 35, 79, + 7, 46, 7, 49, 49, 47, 7, 51, 51, 7, + 48, 7, 7, 7, 7, 7, 7, 56, 57, 57, + 57, 57, 7, 7, 7, 7, 7, 63, 63, 63, + 52, 52, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 56, 56, 56, 56, 56, 56, 54, 62, + 62, 62, 62, 62, 62, 112, 112, 95, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, - 63, 58, 58, 58, 58, 19, 81, 9, 63, 63, - 63, 63, 63, 63, 110, 92, 119, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 61, 61, 61, - 61, 90, 105, 108, 64, 64, 64, 64, 64, 64, - 108, 108, 108, 120, 102, 102, 31, 108, 102, 122, - 106, 107, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 108, 108, 108, 108, 108, 38, 108, 108, - -1, -1, 108, -1, 108, 108, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 38, 38, 38, 38, + 63, 63, 63, 63, 63, 63, 63, 63, 60, 60, + 60, 60, 118, 19, 108, 63, 63, 63, 63, 63, + 63, 108, 108, 108, 32, 101, 101, 110, 108, 101, + 91, 80, 9, 108, 108, 108, 108, 108, 108, 108, + 108, 108, 108, 108, 108, 108, 108, 108, 38, 108, + 108, 119, 120, 108, 89, 108, 108, 104, 105, 122, + -1, -1, 106, -1, -1, -1, -1, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, - 38, -1, 38, 38, -1, -1, 38, 39, 38, 38, - -1, 39, 39, 39, 39, -1, 39, 31, 39, 39, - 39, 39, 39, -1, 102, 102, 102, 102, -1, -1, - 31, 102, -1, -1, 102, -1, 102, 102, 102, -1, - 102, -1, -1, 102, -1, -1, -1, -1, -1, -1, - 102, 102, 102, 102, 94, 94, 94, 94, 94, 94, - 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, - 94, 94, -1, -1, -1, 31, 31, 31, 31, 31, - 40, 40, -1, -1, -1, 40, 40, 40, 40, -1, - 40 + 38, 38, -1, 38, 38, -1, -1, 38, 39, 38, + 38, -1, 39, 39, 39, 39, -1, 39, -1, 39, + 39, 39, 39, 39, -1, 101, 101, 101, 101, -1, + -1, -1, 101, -1, -1, 101, -1, 101, 101, 101, + -1, 101, -1, -1, 101, -1, -1, -1, -1, -1, + -1, 101, 101, 101, 101, 93, 93, 93, 93, 93, + 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, + 93, 93, 93, 69, 69, 69, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 69, -1, -1, 69, 69, -1, 69 #line 197 "build/utility/kmyacc.c.parser" }; static short yygbase[] = { - 0, 0, 0, 272, 194, 0, 0, -82, 0, 13, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 0, 0, 0, 118, 195, 0, 0, -82, 0, 67, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 200, 67, 0, 0, 70, 0, -42, 329, 385, - 437, -77, 0, 0, 69, 90, 108, 128, 123, 129, - 95, -31, 107, 125, 9, 134, -16, 122, 157, 197, - -75, 189, 0, 88, 124, 0, -259, 11, 68, 0, - 26, 0, 0, -11, 180, -34, 0, 133, 0, 0, - 24, 81, -15, 75, 0, 0, 0, 0, 0, 0, - 29, 0, 15, 0, 270, 0, 47, 0, -54, -24, - 0, 115, 112, -130, -50, 28, 30, -164, 295, 0, - 73, 0, 100, 51, 0, 0, 0, -20, 66, 6, - 25, 0, -165 + 0, -137, 140, 0, 0, 65, 0, -42, 330, 386, + 35, -77, 43, 69, 101, 125, 131, 134, 138, 130, + 29, 127, 148, 9, 171, 74, 276, 123, 108, -75, + 189, 0, 88, 124, 0, -260, 58, 94, 0, 419, + 0, 0, 14, 165, -34, 0, 202, 0, 0, 24, + 135, -15, 75, 0, 0, 0, 0, 0, 0, 71, + 0, 59, 0, 270, 0, 104, 0, -54, -24, 0, + 68, 112, -250, -50, 72, 57, -136, 0, 296, 0, + 115, 0, 161, 51, 0, 0, 0, 129, 128, 70, + 53, 0, -138 #line 201 "build/utility/kmyacc.c.parser" }; static short yygdefault[] = { --32768, 383, 8, 10, 540, 543, 542, 544, 545, 405, - 546, 320, 558, 547, 574, 575, 576, 602, 577, 436, - 548, 319, 325, 614, 553, 554, 295, 555, 556, 270, - 557, 393, 643, 559, 549, 550, 384, 166, 1003, 200, - 298, 669, 720, 260, 385, 386, 387, 388, 389, 261, - 227, 262, 263, 245, 390, 264, 265, 764, 193, 806, - 775, 774, 796, 797, 798, 799, 990, 428, 429, 45, - 277, 401, 315, 891, 894, 795, 426, 411, 1026, 592, - 268, 995, 482, 398, 593, 1005, 722, 1006, 594, 595, - 330, 244, 321, 1032, 451, 452, 1041, 780, 800, 469, - 470, 1060, 427, 350, 1012, 495, 509, 63, 645, 251, - 671, 223, 676, 195, 679, 697, 670, 673, 715, 456, - 118, 44, 308 +-32768, 384, 8, 10, 543, 546, 545, 547, 548, 407, + 549, 321, 561, 550, 577, 578, 579, 605, 580, 438, + 551, 320, 326, 617, 556, 557, 296, 558, 559, 271, + 560, 395, 646, 562, 552, 553, 385, 167, 1007, 201, + 299, 672, 386, 387, 388, 389, 390, 391, 261, 228, + 262, 263, 246, 392, 264, 265, 768, 194, 810, 779, + 778, 800, 801, 802, 803, 994, 430, 431, 45, 278, + 403, 316, 895, 898, 799, 428, 413, 1030, 595, 269, + 999, 485, 400, 596, 1009, 723, 1010, 597, 598, 331, + 245, 322, 1036, 453, 454, 1045, 784, 804, 470, 471, + 1064, 429, 351, 1016, 498, 512, 63, 267, 648, 252, + 674, 224, 679, 196, 682, 700, 673, 676, 718, 458, + 118, 44, 309 #line 205 "build/utility/kmyacc.c.parser" }; @@ -1695,42 +1703,42 @@ static char yylhs[] = { 112, 112, 112, 112, 112, 114, 114, 114, 114, 114, 114, 113, 113, 113, 113, 113, 113, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 116, 116, 117, - 117, 118, 120, 120, 41, 41, 42, 42, 43, 43, - 44, 44, 45, 45, 46, 46, 47, 47, 48, 48, - 49, 49, 49, 50, 50, 50, 50, 50, 50, 51, - 51, 51, 52, 52, 52, 53, 53, 53, 53, 54, - 54, 55, 55, 55, 55, 55, 55, 55, 56, 56, - 56, 56, 56, 56, 56, 56, 57, 57, 58, 58, - 58, 58, 58, 58, 58, 97, 97, 98, 98, 98, - 60, 60, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 75, 75, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, - 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, - 59, 63, 63, 62, 62, 121, 64, 119, 119, 67, - 67, 69, 69, 68, 68, 68, 68, 68, 68, 70, - 70, 71, 71, 71, 71, 72, 72, 73, 73, 73, - 73, 73, 74, 74, 74, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 65, 65, 65, 122, 66, 79, 79, 80, - 80, 81, 81, 81, 81, 81, 81, 82, 82, 84, - 84, 85, 85, 85, 83, 102, 102, 103, 103, 86, - 86, 86, 86, 86, 86, 86, 87, 87, 87, 77, - 77, 88, 88, 89, 89, 90, 90, 91, 91, 91, - 91, 92, 92, 94, 94, 95, 95, 96, 96, 96, - 96, 96, 104, 104, 104, 105, 105, 105, 106, 106, - 93, 93, 99, 99, 100, 100, 100, 100, 101, 101, - 101, 107 + 117, 118, 120, 120, 41, 41, 41, 107, 107, 42, + 42, 43, 43, 44, 44, 45, 45, 46, 46, 47, + 47, 48, 48, 48, 49, 49, 49, 49, 49, 49, + 50, 50, 50, 51, 51, 51, 52, 52, 52, 52, + 53, 53, 54, 54, 54, 54, 54, 54, 54, 55, + 55, 55, 55, 55, 55, 55, 55, 56, 56, 57, + 57, 57, 57, 57, 57, 57, 96, 96, 97, 97, + 97, 59, 59, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 74, 74, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 62, 62, 61, 61, 121, 63, 119, 119, + 66, 66, 68, 68, 67, 67, 67, 67, 67, 67, + 69, 69, 70, 70, 70, 70, 71, 71, 72, 72, + 72, 72, 72, 73, 73, 73, 75, 75, 75, 75, + 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, + 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, + 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, + 77, 77, 77, 64, 64, 64, 122, 65, 78, 78, + 79, 79, 80, 80, 80, 80, 80, 80, 81, 81, + 83, 83, 84, 84, 84, 82, 101, 101, 102, 102, + 85, 85, 85, 85, 85, 85, 85, 86, 86, 86, + 76, 76, 87, 87, 88, 88, 89, 89, 90, 90, + 90, 90, 91, 91, 93, 93, 94, 94, 95, 95, + 95, 95, 95, 103, 103, 103, 104, 104, 104, 105, + 105, 92, 92, 98, 98, 99, 99, 99, 99, 100, + 100, 100, 106 #line 209 "build/utility/kmyacc.c.parser" }; @@ -1753,25 +1761,25 @@ static char yylen[] = { 2, 2, 3, 2, 3, 6, 6, 6, 6, 7, 3, 1, 2, 4, 3, 3, 4, 1, 3, 1, 1, 1, 1, 1, 1, 3, 2, 0, 3, 1, - 1, 1, 0, 1, 1, 5, 1, 1, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 3, 1, 3, 3, 3, 3, 3, 1, - 3, 3, 1, 3, 3, 1, 3, 3, 3, 1, - 3, 1, 3, 3, 2, 3, 2, 3, 1, 2, - 2, 2, 2, 2, 2, 2, 1, 3, 1, 2, - 4, 3, 3, 4, 2, 1, 1, 5, 9, 8, + 1, 1, 0, 1, 1, 1, 5, 1, 3, 1, + 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, + 3, 1, 3, 3, 1, 3, 3, 3, 3, 3, + 1, 3, 3, 1, 3, 3, 1, 3, 3, 3, + 1, 3, 1, 3, 3, 2, 3, 2, 3, 1, + 2, 2, 2, 2, 2, 2, 2, 1, 3, 1, + 2, 4, 3, 3, 4, 2, 1, 1, 5, 9, + 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 6, 3, 3, 3, + 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 6, 3, 3, 3, 2, - 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 2, 2, 3, 2, 4, 0, 4, 0, 1, 1, - 2, 1, 2, 1, 2, 2, 2, 3, 4, 1, - 3, 1, 2, 3, 4, 1, 3, 5, 3, 3, - 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, + 2, 2, 2, 3, 2, 4, 0, 4, 0, 1, + 1, 2, 1, 2, 1, 2, 2, 2, 3, 4, + 1, 3, 1, 2, 3, 4, 1, 3, 5, 3, + 3, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1780,22 +1788,22 @@ static char yylen[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 3, 3, 2, 0, 3, 3, 3, 1, - 3, 1, 4, 3, 6, 3, 3, 1, 3, 1, - 1, 7, 7, 7, 1, 0, 2, 0, 2, 6, - 6, 6, 6, 7, 7, 3, 7, 7, 7, 1, - 1, 5, 5, 3, 3, 0, 4, 1, 4, 3, - 3, 0, 3, 0, 1, 1, 3, 1, 4, 1, - 1, 2, 2, 1, 2, 0, 2, 3, 0, 3, - 0, 3, 0, 1, 1, 2, 3, 4, 1, 1, - 1, 0 + 1, 2, 2, 3, 3, 2, 0, 3, 3, 3, + 1, 3, 1, 4, 3, 6, 3, 3, 1, 3, + 1, 1, 7, 7, 7, 1, 0, 2, 0, 2, + 6, 6, 6, 6, 7, 7, 3, 7, 7, 7, + 1, 1, 5, 5, 3, 3, 0, 4, 1, 4, + 3, 3, 0, 3, 0, 1, 1, 3, 1, 4, + 1, 1, 2, 2, 1, 2, 0, 2, 3, 0, + 3, 0, 3, 0, 1, 1, 2, 3, 4, 1, + 1, 1, 0 #line 213 "build/utility/kmyacc.c.parser" }; #line 235 "build/utility/kmyacc.c.parser" -#define YYSTATES 953 -#define YYNLSTATES 536 +#define YYSTATES 955 +#define YYNLSTATES 539 #define YYINTERRTOK 1 #define YYUNEXPECTED 32767 #define YYDEFAULT -32766 @@ -2360,836 +2368,839 @@ int yyparse(YYPARSE_ARG) case 181: #line 530 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_CALL, kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, (arytype_t){ .type = KX_UNKNOWN_T }, NULL, NULL, YYASP(1-1).obj, NULL), NULL); } break; - case 185: -#line 540 "src/kinx.y" + case 186: +#line 541 "src/kinx.y" { yyval.obj = kx_gen_texpr_object(YYASP(1-5).obj, YYASP(3-5).obj, YYASP(5-5).obj); } break; - case 189: -#line 550 "src/kinx.y" + case 188: +#line 546 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_CALL, YYASP(3-3).obj, YYASP(1-3).obj); } break; + case 190: +#line 551 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_LUNDEF, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 191: -#line 555 "src/kinx.y" + case 192: +#line 556 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_LOR, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 193: -#line 560 "src/kinx.y" + case 194: +#line 561 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_LAND, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 195: -#line 565 "src/kinx.y" + case 196: +#line 566 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_OR, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 197: -#line 570 "src/kinx.y" + case 198: +#line 571 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_XOR, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 199: -#line 575 "src/kinx.y" + case 200: +#line 576 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_AND, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 201: -#line 580 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_EQEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 202: #line 581 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_EQEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 203: +#line 582 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_NEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 204: -#line 586 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_LT, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 205: #line 587 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_LE, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_LT, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 206: #line 588 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_GT, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_LE, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 207: #line 589 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_GE, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_GT, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 208: #line 590 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_GE, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 209: +#line 591 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_LGE, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 210: -#line 595 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_SHL, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 211: #line 596 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_SHL, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 212: +#line 597 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_SHR, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 213: -#line 601 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_ADD, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 214: #line 602 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_ADD, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 215: +#line 603 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_SUB, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 216: -#line 607 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_MUL, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 217: #line 608 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DIV, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_MUL, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 218: #line 609 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_DIV, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 219: +#line 610 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_MOD, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 220: -#line 614 "src/kinx.y" + case 221: +#line 615 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_POW, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 222: -#line 619 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_REGEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 223: #line 620 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_REGNE, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_REGEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 224: #line 621 "src/kinx.y" -{ yyval.obj = kx_gen_range_object(YYASP(1-2).obj, kx_gen_special_object(KXVL_NULL), 0); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_REGNE, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 225: #line 622 "src/kinx.y" -{ yyval.obj = kx_gen_range_object(YYASP(1-3).obj, YYASP(3-3).obj, 0); } break; +{ yyval.obj = kx_gen_range_object(YYASP(1-2).obj, kx_gen_special_object(KXVL_NULL), 0); } break; case 226: #line 623 "src/kinx.y" -{ yyval.obj = kx_gen_range_object(YYASP(1-2).obj, kx_gen_special_object(KXVL_NULL), 1); } break; +{ yyval.obj = kx_gen_range_object(YYASP(1-3).obj, YYASP(3-3).obj, 0); } break; case 227: #line 624 "src/kinx.y" +{ yyval.obj = kx_gen_range_object(YYASP(1-2).obj, kx_gen_special_object(KXVL_NULL), 1); } break; + case 228: +#line 625 "src/kinx.y" { yyval.obj = kx_gen_range_object(YYASP(1-3).obj, YYASP(3-3).obj, 1); } break; - case 229: -#line 629 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_BNOT, YYASP(2-2).obj); } break; case 230: #line 630 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_NOT, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_BNOT, YYASP(2-2).obj); } break; case 231: #line 631 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_POSITIVE, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_NOT, YYASP(2-2).obj); } break; case 232: #line 632 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_NEGATIVE, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_POSITIVE, YYASP(2-2).obj); } break; case 233: #line 633 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_CONV, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_NEGATIVE, YYASP(2-2).obj); } break; case 234: #line 634 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_INC, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_CONV, YYASP(2-2).obj); } break; case 235: #line 635 "src/kinx.y" +{ yyval.obj = kx_gen_uexpr_object(KXOP_INC, YYASP(2-2).obj); } break; + case 236: +#line 636 "src/kinx.y" { yyval.obj = kx_gen_uexpr_object(KXOP_DEC, YYASP(2-2).obj); } break; - case 237: -#line 640 "src/kinx.y" + case 238: +#line 641 "src/kinx.y" { yyval.obj = kx_gen_cast_object(YYASP(1-3).obj, KX_UNKNOWN_T, YYASP(3-3).arraytype); } break; - case 239: -#line 645 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(YYASP(2-2).incdec, YYASP(1-2).obj); } break; case 240: #line 646 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-4).obj, YYASP(3-4).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(YYASP(2-2).incdec, YYASP(1-2).obj); } break; case 241: #line 647 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-4).obj, YYASP(3-4).obj); } break; case 242: #line 648 "src/kinx.y" -{ yyval.obj = kx_gen_typeof_object(YYASP(1-3).obj, YYASP(3-3).intval); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 243: #line 649 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_CALL, YYASP(1-4).obj, YYASP(3-4).obj); } break; +{ yyval.obj = kx_gen_typeof_object(YYASP(1-3).obj, YYASP(3-3).intval); } break; case 244: #line 650 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_CBBLOCK, YYASP(1-2).obj, YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_CALL, YYASP(1-4).obj, YYASP(3-4).obj); } break; case 245: -#line 654 "src/kinx.y" +#line 651 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_CBBLOCK, YYASP(1-2).obj, YYASP(2-2).obj); } break; + case 246: +#line 655 "src/kinx.y" { yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, (arytype_t){ .type = KX_UNKNOWN_T }, NULL, NULL, YYASP(1-1).obj, NULL); } break; - case 247: -#line 659 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(2-5).arraytype, NULL, NULL, kx_gen_stmt_object(KXST_RET, YYASP(4-5).obj, NULL, NULL), NULL); } break; case 248: #line 660 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-9).arraytype, NULL, YYASP(4-9).obj, kx_gen_stmt_object(KXST_RET, YYASP(8-9).obj, NULL, NULL), NULL); } break; +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(2-5).arraytype, NULL, NULL, kx_gen_stmt_object(KXST_RET, YYASP(4-5).obj, NULL, NULL), NULL); } break; case 249: #line 661 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-8).arraytype, NULL, YYASP(4-8).obj, YYASP(7-8).obj, NULL); } break; +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-9).arraytype, NULL, YYASP(4-9).obj, kx_gen_stmt_object(KXST_RET, YYASP(8-9).obj, NULL, NULL), NULL); } break; case 250: -#line 665 "src/kinx.y" -{ yyval.incdec = KXOP_INCP; } break; +#line 662 "src/kinx.y" +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-8).arraytype, NULL, YYASP(4-8).obj, YYASP(7-8).obj, NULL); } break; case 251: #line 666 "src/kinx.y" -{ yyval.incdec = KXOP_DECP; } break; +{ yyval.incdec = KXOP_INCP; } break; case 252: -#line 670 "src/kinx.y" -{ yyval.obj = kx_gen_int_object(YYASP(1-1).intval); } break; +#line 667 "src/kinx.y" +{ yyval.incdec = KXOP_DECP; } break; case 253: #line 671 "src/kinx.y" -{ yyval.obj = kx_gen_dbl_object(YYASP(1-1).dblval); } break; +{ yyval.obj = kx_gen_int_object(YYASP(1-1).intval); } break; case 254: #line 672 "src/kinx.y" -{ yyval.obj = kx_gen_big_object(YYASP(1-1).strval); } break; +{ yyval.obj = kx_gen_dbl_object(YYASP(1-1).dblval); } break; case 255: #line 673 "src/kinx.y" -{ yyval.obj = kx_gen_special_object(KXVL_NULL); } break; +{ yyval.obj = kx_gen_big_object(YYASP(1-1).strval); } break; case 256: #line 674 "src/kinx.y" -{ yyval.obj = kx_gen_special_object(KXVL_TRUE); } break; +{ yyval.obj = kx_gen_special_object(KXVL_NULL); } break; case 257: #line 675 "src/kinx.y" -{ yyval.obj = kx_gen_special_object(KXVL_FALSE); } break; +{ yyval.obj = kx_gen_special_object(KXVL_TRUE); } break; case 258: #line 676 "src/kinx.y" +{ yyval.obj = kx_gen_special_object(KXVL_FALSE); } break; + case 259: +#line 677 "src/kinx.y" { yyval.obj = kx_gen_str_object(YYASP(1-1).strval); } break; - case 265: -#line 683 "src/kinx.y" -{ yyval.obj = kx_gen_import_object(YYASP(4-6).strval); } break; case 266: #line 684 "src/kinx.y" -{ yyval.obj = YYASP(2-3).obj; } break; +{ yyval.obj = kx_gen_import_object(YYASP(4-6).strval); } break; case 267: #line 685 "src/kinx.y" { yyval.obj = YYASP(2-3).obj; } break; case 268: #line 686 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(YYASP(2-3).strval); } break; +{ yyval.obj = YYASP(2-3).obj; } break; case 269: #line 687 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(2-2).obj, kx_gen_str_object("create")); } break; +{ yyval.obj = kx_gen_str_object(YYASP(2-3).strval); } break; case 270: #line 688 "src/kinx.y" -{ yyval.obj = kx_gen_prop_func_object(YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(2-2).obj, kx_gen_str_object("create")); } break; case 271: #line 689 "src/kinx.y" -{ yyval.obj = kx_gen_typeprop_func_object(YYASP(2-2).intval); } break; +{ yyval.obj = kx_gen_prop_func_object(YYASP(2-2).obj); } break; case 272: #line 690 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, kx_gen_var_object("this", KX_UNKNOWN_T), YYASP(2-2).obj); } break; +{ yyval.obj = kx_gen_typeprop_func_object(YYASP(2-2).intval); } break; case 273: #line 691 "src/kinx.y" -{ yyval.obj = kx_gen_typeof_object(kx_gen_var_object("this", KX_UNKNOWN_T), YYASP(2-2).intval); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, kx_gen_var_object("this", KX_UNKNOWN_T), YYASP(2-2).obj); } break; case 274: -#line 695 "src/kinx.y" -{ yyval.obj = kx_gen_var_object_line_pos(YYASP(1-1).strinfo.name, KX_UNKNOWN_T, YYASP(1-1).strinfo.line, YYASP(1-1).strinfo.pos1, YYASP(1-1).strinfo.pos2); } break; +#line 692 "src/kinx.y" +{ yyval.obj = kx_gen_typeof_object(kx_gen_var_object("this", KX_UNKNOWN_T), YYASP(2-2).intval); } break; case 275: #line 696 "src/kinx.y" -{ yyval.obj = kx_gen_var_object(kx_gen_typestr_object(YYASP(1-1).intval), KX_UNKNOWN_T); } break; +{ yyval.obj = kx_gen_var_object_line_pos(YYASP(1-1).strinfo.name, KX_UNKNOWN_T, YYASP(1-1).strinfo.line, YYASP(1-1).strinfo.pos1, YYASP(1-1).strinfo.pos2); } break; case 276: -#line 700 "src/kinx.y" -{ yyval.obj = kx_gen_str_object_pos(YYASP(1-1).strinfo); } break; +#line 697 "src/kinx.y" +{ yyval.obj = kx_gen_var_object(kx_gen_typestr_object(YYASP(1-1).intval), KX_UNKNOWN_T); } break; case 277: #line 701 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(kx_gen_typestr_object(YYASP(1-1).intval)); } break; +{ yyval.obj = kx_gen_str_object_pos(YYASP(1-1).strinfo); } break; case 278: #line 702 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("if"); } break; +{ yyval.obj = kx_gen_str_object(kx_gen_typestr_object(YYASP(1-1).intval)); } break; case 279: #line 703 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("else"); } break; +{ yyval.obj = kx_gen_str_object("if"); } break; case 280: #line 704 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("while"); } break; +{ yyval.obj = kx_gen_str_object("else"); } break; case 281: #line 705 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("do"); } break; +{ yyval.obj = kx_gen_str_object("while"); } break; case 282: #line 706 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("for"); } break; +{ yyval.obj = kx_gen_str_object("do"); } break; case 283: #line 707 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("in"); } break; +{ yyval.obj = kx_gen_str_object("for"); } break; case 284: #line 708 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("try"); } break; +{ yyval.obj = kx_gen_str_object("in"); } break; case 285: #line 709 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("catch"); } break; +{ yyval.obj = kx_gen_str_object("try"); } break; case 286: #line 710 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("finally"); } break; +{ yyval.obj = kx_gen_str_object("catch"); } break; case 287: #line 711 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("break"); } break; +{ yyval.obj = kx_gen_str_object("finally"); } break; case 288: #line 712 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("continue"); } break; +{ yyval.obj = kx_gen_str_object("break"); } break; case 289: #line 713 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("switch"); } break; +{ yyval.obj = kx_gen_str_object("continue"); } break; case 290: #line 714 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("case"); } break; +{ yyval.obj = kx_gen_str_object("switch"); } break; case 291: #line 715 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("when"); } break; +{ yyval.obj = kx_gen_str_object("case"); } break; case 292: #line 716 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("default"); } break; +{ yyval.obj = kx_gen_str_object("when"); } break; case 293: #line 717 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("new"); } break; +{ yyval.obj = kx_gen_str_object("default"); } break; case 294: #line 718 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("var"); } break; +{ yyval.obj = kx_gen_str_object("new"); } break; case 295: #line 719 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("const"); } break; +{ yyval.obj = kx_gen_str_object("var"); } break; case 296: #line 720 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("native"); } break; +{ yyval.obj = kx_gen_str_object("const"); } break; case 297: #line 721 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("function"); } break; +{ yyval.obj = kx_gen_str_object("native"); } break; case 298: #line 722 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("_function"); } break; +{ yyval.obj = kx_gen_str_object("function"); } break; case 299: #line 723 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("public"); } break; +{ yyval.obj = kx_gen_str_object("_function"); } break; case 300: #line 724 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("private"); } break; +{ yyval.obj = kx_gen_str_object("public"); } break; case 301: #line 725 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("protectd"); } break; +{ yyval.obj = kx_gen_str_object("private"); } break; case 302: #line 726 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("class"); } break; +{ yyval.obj = kx_gen_str_object("protectd"); } break; case 303: #line 727 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("module"); } break; +{ yyval.obj = kx_gen_str_object("class"); } break; case 304: #line 728 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("return"); } break; +{ yyval.obj = kx_gen_str_object("module"); } break; case 305: #line 729 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("yield"); } break; +{ yyval.obj = kx_gen_str_object("return"); } break; case 306: #line 730 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("throw"); } break; +{ yyval.obj = kx_gen_str_object("yield"); } break; case 307: #line 731 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("null"); } break; +{ yyval.obj = kx_gen_str_object("throw"); } break; case 308: #line 732 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("true"); } break; +{ yyval.obj = kx_gen_str_object("null"); } break; case 309: #line 733 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("false"); } break; +{ yyval.obj = kx_gen_str_object("true"); } break; case 310: #line 734 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("import"); } break; +{ yyval.obj = kx_gen_str_object("false"); } break; case 311: #line 735 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("using"); } break; +{ yyval.obj = kx_gen_str_object("import"); } break; case 312: #line 736 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("<<"); } break; +{ yyval.obj = kx_gen_str_object("using"); } break; case 313: #line 737 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(">>"); } break; +{ yyval.obj = kx_gen_str_object("<<"); } break; case 314: #line 738 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("=="); } break; +{ yyval.obj = kx_gen_str_object(">>"); } break; case 315: #line 739 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("!="); } break; +{ yyval.obj = kx_gen_str_object("=="); } break; case 316: #line 740 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("<="); } break; +{ yyval.obj = kx_gen_str_object("!="); } break; case 317: #line 741 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("<"); } break; +{ yyval.obj = kx_gen_str_object("<="); } break; case 318: #line 742 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(">="); } break; +{ yyval.obj = kx_gen_str_object("<"); } break; case 319: #line 743 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(">"); } break; +{ yyval.obj = kx_gen_str_object(">="); } break; case 320: #line 744 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("<=>"); } break; +{ yyval.obj = kx_gen_str_object(">"); } break; case 321: #line 745 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("+"); } break; +{ yyval.obj = kx_gen_str_object("<=>"); } break; case 322: #line 746 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("-"); } break; +{ yyval.obj = kx_gen_str_object("+"); } break; case 323: #line 747 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("*"); } break; +{ yyval.obj = kx_gen_str_object("-"); } break; case 324: #line 748 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("/"); } break; +{ yyval.obj = kx_gen_str_object("*"); } break; case 325: #line 749 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("%"); } break; +{ yyval.obj = kx_gen_str_object("/"); } break; case 326: #line 750 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("&"); } break; +{ yyval.obj = kx_gen_str_object("%"); } break; case 327: #line 751 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("|"); } break; +{ yyval.obj = kx_gen_str_object("&"); } break; case 328: #line 752 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("^"); } break; +{ yyval.obj = kx_gen_str_object("|"); } break; case 329: #line 753 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("[]"); } break; +{ yyval.obj = kx_gen_str_object("^"); } break; case 330: #line 754 "src/kinx.y" -{ yyval.obj = kx_gen_str_object("()"); } break; +{ yyval.obj = kx_gen_str_object("[]"); } break; case 331: -#line 758 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKARY, NULL, YYASP(1-2).intval); } break; +#line 755 "src/kinx.y" +{ yyval.obj = kx_gen_str_object("()"); } break; case 332: #line 759 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKARY, YYASP(2-3).obj, YYASP(1-3).intval); } break; +{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKARY, NULL, YYASP(1-2).intval); } break; case 333: -#line 763 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_MKBIN, NULL); } break; +#line 760 "src/kinx.y" +{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKARY, YYASP(2-3).obj, YYASP(1-3).intval); } break; case 334: #line 764 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_MKBIN, YYASP(3-4).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_MKBIN, NULL); } break; case 335: -#line 768 "src/kinx.y" -{ kx_make_bin_mode(); } break; +#line 765 "src/kinx.y" +{ yyval.obj = kx_gen_uexpr_object(KXOP_MKBIN, YYASP(3-4).obj); } break; case 336: -#line 772 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKOBJ, YYASP(2-4).obj, YYASP(1-4).intval); } break; +#line 769 "src/kinx.y" +{ kx_make_bin_mode(); } break; case 337: -#line 776 "src/kinx.y" +#line 773 "src/kinx.y" +{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKOBJ, YYASP(2-4).obj, YYASP(1-4).intval); } break; + case 338: +#line 777 "src/kinx.y" {} break; - case 339: -#line 781 "src/kinx.y" -{ yyval.obj = kx_gen_adjust_array(YYASP(1-1).obj); } break; case 340: #line 782 "src/kinx.y" -{ yyval.obj = kx_gen_adjust_array(kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-2).obj, YYASP(2-2).obj)); } break; +{ yyval.obj = kx_gen_adjust_array(YYASP(1-1).obj); } break; case 341: -#line 786 "src/kinx.y" -{ yyval.obj = kx_gen_var_object(NULL, KX_UND_T); } break; +#line 783 "src/kinx.y" +{ yyval.obj = kx_gen_adjust_array(kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-2).obj, YYASP(2-2).obj)); } break; case 342: #line 787 "src/kinx.y" +{ yyval.obj = kx_gen_var_object(NULL, KX_UND_T); } break; + case 343: +#line 788 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-2).obj, kx_gen_var_object(NULL, KX_UND_T)); } break; - case 344: -#line 792 "src/kinx.y" -{ yyval.obj = YYASP(2-2).obj; yyval.obj->optional = KXDC_CONST; } break; case 345: #line 793 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj); } break; +{ yyval.obj = YYASP(2-2).obj; yyval.obj->optional = KXDC_CONST; } break; case 346: #line 794 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-2).obj, kx_gen_var_object(NULL, KX_UND_T)); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj); } break; case 347: #line 795 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-2).obj, kx_gen_var_object(NULL, KX_UND_T)); } break; case 348: #line 796 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 349: +#line 797 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-4).obj, kx_gen_uexpr_object(KXOP_SPREAD, YYASP(4-4).obj)); } break; - case 350: -#line 801 "src/kinx.y" + case 351: +#line 802 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRSEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 352: -#line 806 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKOBJ, NULL, YYASP(1-2).intval); } break; case 353: #line 807 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRSEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_uexpr_object_line(KXOP_MKOBJ, NULL, YYASP(1-2).intval); } break; case 354: #line 808 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRSEQ, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 355: +#line 809 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRSEQ, YYASP(1-4).obj, kx_gen_uexpr_object_line(KXOP_MKOBJ, NULL, YYASP(3-4).intval)); } break; - case 356: -#line 813 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 357: -#line 817 "src/kinx.y" -{ yyval.obj = kx_gen_keyvalue_object(YYASP(2-5).strval, YYASP(5-5).obj); } break; +#line 814 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 358: #line 818 "src/kinx.y" -{ yyval.obj = kx_gen_keyvalue_object(YYASP(1-3).strinfo.name, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_keyvalue_object(YYASP(2-5).strval, YYASP(5-5).obj); } break; case 359: #line 819 "src/kinx.y" -{ yyval.obj = kx_gen_keyvalue_object(YYASP(1-3).strval, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_keyvalue_object(YYASP(1-3).strinfo.name, YYASP(3-3).obj); } break; case 360: #line 820 "src/kinx.y" -{ yyval.obj = kx_gen_keyvalue_object(NULL, kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj)); } break; +{ yyval.obj = kx_gen_keyvalue_object(YYASP(1-3).strval, YYASP(3-3).obj); } break; case 361: #line 821 "src/kinx.y" +{ yyval.obj = kx_gen_keyvalue_object(NULL, kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj)); } break; + case 362: +#line 822 "src/kinx.y" { yyval.obj = kx_gen_keyvalue_shorthand(YYASP(1-1).obj); } break; - case 363: -#line 826 "src/kinx.y" + case 364: +#line 827 "src/kinx.y" { yyval.obj = YYASP(2-2).obj; yyval.obj->optional = KXDC_CONST; } break; - case 365: -#line 831 "src/kinx.y" -{ yyval.strval = "if"; } break; case 366: #line 832 "src/kinx.y" -{ yyval.strval = "while"; } break; +{ yyval.strval = "if"; } break; case 367: #line 833 "src/kinx.y" -{ yyval.strval = "do"; } break; +{ yyval.strval = "while"; } break; case 368: #line 834 "src/kinx.y" -{ yyval.strval = "for"; } break; +{ yyval.strval = "do"; } break; case 369: #line 835 "src/kinx.y" -{ yyval.strval = "in"; } break; +{ yyval.strval = "for"; } break; case 370: #line 836 "src/kinx.y" -{ yyval.strval = "try"; } break; +{ yyval.strval = "in"; } break; case 371: #line 837 "src/kinx.y" -{ yyval.strval = "catch"; } break; +{ yyval.strval = "try"; } break; case 372: #line 838 "src/kinx.y" -{ yyval.strval = "finally"; } break; +{ yyval.strval = "catch"; } break; case 373: #line 839 "src/kinx.y" -{ yyval.strval = "break"; } break; +{ yyval.strval = "finally"; } break; case 374: #line 840 "src/kinx.y" -{ yyval.strval = "continue"; } break; +{ yyval.strval = "break"; } break; case 375: #line 841 "src/kinx.y" -{ yyval.strval = "switch"; } break; +{ yyval.strval = "continue"; } break; case 376: #line 842 "src/kinx.y" -{ yyval.strval = "case"; } break; +{ yyval.strval = "switch"; } break; case 377: #line 843 "src/kinx.y" -{ yyval.strval = "when"; } break; +{ yyval.strval = "case"; } break; case 378: #line 844 "src/kinx.y" -{ yyval.strval = "new"; } break; +{ yyval.strval = "when"; } break; case 379: #line 845 "src/kinx.y" -{ yyval.strval = "var"; } break; +{ yyval.strval = "new"; } break; case 380: #line 846 "src/kinx.y" -{ yyval.strval = "const"; } break; +{ yyval.strval = "var"; } break; case 381: #line 847 "src/kinx.y" -{ yyval.strval = "native"; } break; +{ yyval.strval = "const"; } break; case 382: #line 848 "src/kinx.y" -{ yyval.strval = "function"; } break; +{ yyval.strval = "native"; } break; case 383: #line 849 "src/kinx.y" -{ yyval.strval = "_function"; } break; +{ yyval.strval = "function"; } break; case 384: #line 850 "src/kinx.y" -{ yyval.strval = "public"; } break; +{ yyval.strval = "_function"; } break; case 385: #line 851 "src/kinx.y" -{ yyval.strval = "private"; } break; +{ yyval.strval = "public"; } break; case 386: #line 852 "src/kinx.y" -{ yyval.strval = "protectd"; } break; +{ yyval.strval = "private"; } break; case 387: #line 853 "src/kinx.y" -{ yyval.strval = "class"; } break; +{ yyval.strval = "protectd"; } break; case 388: #line 854 "src/kinx.y" -{ yyval.strval = "module"; } break; +{ yyval.strval = "class"; } break; case 389: #line 855 "src/kinx.y" -{ yyval.strval = "return"; } break; +{ yyval.strval = "module"; } break; case 390: #line 856 "src/kinx.y" -{ yyval.strval = "yield"; } break; +{ yyval.strval = "return"; } break; case 391: #line 857 "src/kinx.y" -{ yyval.strval = "throw"; } break; +{ yyval.strval = "yield"; } break; case 392: #line 858 "src/kinx.y" -{ yyval.strval = "null"; } break; +{ yyval.strval = "throw"; } break; case 393: #line 859 "src/kinx.y" -{ yyval.strval = "true"; } break; +{ yyval.strval = "null"; } break; case 394: #line 860 "src/kinx.y" -{ yyval.strval = "false"; } break; +{ yyval.strval = "true"; } break; case 395: #line 861 "src/kinx.y" -{ yyval.strval = "import"; } break; +{ yyval.strval = "false"; } break; case 396: #line 862 "src/kinx.y" -{ yyval.strval = "using"; } break; +{ yyval.strval = "import"; } break; case 397: #line 863 "src/kinx.y" -{ yyval.strval = kx_gen_typestr_object(YYASP(1-1).intval); } break; +{ yyval.strval = "using"; } break; case 398: #line 864 "src/kinx.y" -{ yyval.strval = kx_gen_typeofstr_object(YYASP(1-1).intval); } break; +{ yyval.strval = kx_gen_typestr_object(YYASP(1-1).intval); } break; case 399: -#line 868 "src/kinx.y" -{ yyval.strval = "if"; } break; +#line 865 "src/kinx.y" +{ yyval.strval = kx_gen_typeofstr_object(YYASP(1-1).intval); } break; case 400: #line 869 "src/kinx.y" -{ yyval.strval = "else"; } break; +{ yyval.strval = "if"; } break; case 401: #line 870 "src/kinx.y" -{ yyval.strval = "while"; } break; +{ yyval.strval = "else"; } break; case 402: #line 871 "src/kinx.y" -{ yyval.strval = "do"; } break; +{ yyval.strval = "while"; } break; case 403: #line 872 "src/kinx.y" -{ yyval.strval = "for"; } break; +{ yyval.strval = "do"; } break; case 404: #line 873 "src/kinx.y" -{ yyval.strval = "in"; } break; +{ yyval.strval = "for"; } break; case 405: #line 874 "src/kinx.y" -{ yyval.strval = "try"; } break; +{ yyval.strval = "in"; } break; case 406: #line 875 "src/kinx.y" -{ yyval.strval = "catch"; } break; +{ yyval.strval = "try"; } break; case 407: #line 876 "src/kinx.y" -{ yyval.strval = "finally"; } break; +{ yyval.strval = "catch"; } break; case 408: #line 877 "src/kinx.y" -{ yyval.strval = "break"; } break; +{ yyval.strval = "finally"; } break; case 409: #line 878 "src/kinx.y" -{ yyval.strval = "continue"; } break; +{ yyval.strval = "break"; } break; case 410: #line 879 "src/kinx.y" -{ yyval.strval = "switch"; } break; +{ yyval.strval = "continue"; } break; case 411: #line 880 "src/kinx.y" -{ yyval.strval = "case"; } break; +{ yyval.strval = "switch"; } break; case 412: #line 881 "src/kinx.y" -{ yyval.strval = "when"; } break; +{ yyval.strval = "case"; } break; case 413: #line 882 "src/kinx.y" -{ yyval.strval = "new"; } break; +{ yyval.strval = "when"; } break; case 414: #line 883 "src/kinx.y" -{ yyval.strval = "var"; } break; +{ yyval.strval = "new"; } break; case 415: #line 884 "src/kinx.y" -{ yyval.strval = "const"; } break; +{ yyval.strval = "var"; } break; case 416: #line 885 "src/kinx.y" -{ yyval.strval = "function"; } break; +{ yyval.strval = "const"; } break; case 417: #line 886 "src/kinx.y" -{ yyval.strval = "_function"; } break; +{ yyval.strval = "function"; } break; case 418: #line 887 "src/kinx.y" -{ yyval.strval = "public"; } break; +{ yyval.strval = "_function"; } break; case 419: #line 888 "src/kinx.y" -{ yyval.strval = "private"; } break; +{ yyval.strval = "public"; } break; case 420: #line 889 "src/kinx.y" -{ yyval.strval = "protectd"; } break; +{ yyval.strval = "private"; } break; case 421: #line 890 "src/kinx.y" -{ yyval.strval = "class"; } break; +{ yyval.strval = "protectd"; } break; case 422: #line 891 "src/kinx.y" -{ yyval.strval = "module"; } break; +{ yyval.strval = "class"; } break; case 423: #line 892 "src/kinx.y" -{ yyval.strval = "return"; } break; +{ yyval.strval = "module"; } break; case 424: #line 893 "src/kinx.y" -{ yyval.strval = "yield"; } break; +{ yyval.strval = "return"; } break; case 425: #line 894 "src/kinx.y" -{ yyval.strval = "throw"; } break; +{ yyval.strval = "yield"; } break; case 426: #line 895 "src/kinx.y" -{ yyval.strval = "null"; } break; +{ yyval.strval = "throw"; } break; case 427: #line 896 "src/kinx.y" -{ yyval.strval = "true"; } break; +{ yyval.strval = "null"; } break; case 428: #line 897 "src/kinx.y" -{ yyval.strval = "false"; } break; +{ yyval.strval = "true"; } break; case 429: #line 898 "src/kinx.y" -{ yyval.strval = "import"; } break; +{ yyval.strval = "false"; } break; case 430: #line 899 "src/kinx.y" -{ yyval.strval = "using"; } break; +{ yyval.strval = "import"; } break; case 431: #line 900 "src/kinx.y" -{ yyval.strval = kx_gen_typestr_object(YYASP(1-1).intval); } break; +{ yyval.strval = "using"; } break; case 432: #line 901 "src/kinx.y" -{ yyval.strval = kx_gen_typeofstr_object(YYASP(1-1).intval); } break; +{ yyval.strval = kx_gen_typestr_object(YYASP(1-1).intval); } break; case 433: #line 902 "src/kinx.y" -{ yyval.strval = "<<"; } break; +{ yyval.strval = kx_gen_typeofstr_object(YYASP(1-1).intval); } break; case 434: #line 903 "src/kinx.y" -{ yyval.strval = ">>"; } break; +{ yyval.strval = "<<"; } break; case 435: #line 904 "src/kinx.y" -{ yyval.strval = "=="; } break; +{ yyval.strval = ">>"; } break; case 436: #line 905 "src/kinx.y" -{ yyval.strval = "!="; } break; +{ yyval.strval = "=="; } break; case 437: #line 906 "src/kinx.y" -{ yyval.strval = "<="; } break; +{ yyval.strval = "!="; } break; case 438: #line 907 "src/kinx.y" -{ yyval.strval = "<"; } break; +{ yyval.strval = "<="; } break; case 439: #line 908 "src/kinx.y" -{ yyval.strval = ">="; } break; +{ yyval.strval = "<"; } break; case 440: #line 909 "src/kinx.y" -{ yyval.strval = ">"; } break; +{ yyval.strval = ">="; } break; case 441: #line 910 "src/kinx.y" -{ yyval.strval = "<=>"; } break; +{ yyval.strval = ">"; } break; case 442: #line 911 "src/kinx.y" -{ yyval.strval = "+"; } break; +{ yyval.strval = "<=>"; } break; case 443: #line 912 "src/kinx.y" -{ yyval.strval = "-"; } break; +{ yyval.strval = "+"; } break; case 444: #line 913 "src/kinx.y" -{ yyval.strval = "*"; } break; +{ yyval.strval = "-"; } break; case 445: #line 914 "src/kinx.y" -{ yyval.strval = "/"; } break; +{ yyval.strval = "*"; } break; case 446: #line 915 "src/kinx.y" -{ yyval.strval = "%"; } break; +{ yyval.strval = "/"; } break; case 447: #line 916 "src/kinx.y" -{ yyval.strval = "&"; } break; +{ yyval.strval = "%"; } break; case 448: #line 917 "src/kinx.y" -{ yyval.strval = "|"; } break; +{ yyval.strval = "&"; } break; case 449: #line 918 "src/kinx.y" -{ yyval.strval = "^"; } break; +{ yyval.strval = "|"; } break; case 450: #line 919 "src/kinx.y" -{ yyval.strval = "[]"; } break; +{ yyval.strval = "^"; } break; case 451: #line 920 "src/kinx.y" -{ yyval.strval = "()"; } break; +{ yyval.strval = "[]"; } break; case 452: -#line 924 "src/kinx.y" -{ yyval.obj = kx_gen_regex_object(YYASP(3-3).strval, 0); } break; +#line 921 "src/kinx.y" +{ yyval.strval = "()"; } break; case 453: #line 925 "src/kinx.y" -{ yyval.obj = kx_gen_regex_object(YYASP(3-3).strval, 1); } break; +{ yyval.obj = kx_gen_regex_object(YYASP(3-3).strval, 0); } break; case 454: #line 926 "src/kinx.y" -{ yyval.obj = kx_gen_regex_object(YYASP(2-2).strval, 0); } break; +{ yyval.obj = kx_gen_regex_object(YYASP(3-3).strval, 1); } break; case 455: -#line 930 "src/kinx.y" -{ kx_make_regex_mode('/'); } break; +#line 927 "src/kinx.y" +{ yyval.obj = kx_gen_regex_object(YYASP(2-2).strval, 0); } break; case 456: -#line 934 "src/kinx.y" -{ yyval.strval = YYASP(2-3).strval; } break; +#line 931 "src/kinx.y" +{ kx_make_regex_mode('/'); } break; case 457: -#line 938 "src/kinx.y" -{ yyval.obj = YYASP(2-3).obj; } break; +#line 935 "src/kinx.y" +{ yyval.strval = YYASP(2-3).strval; } break; case 458: #line 939 "src/kinx.y" +{ yyval.obj = YYASP(2-3).obj; } break; + case 459: +#line 940 "src/kinx.y" { yyval.obj = kx_add_const(YYASP(2-3).obj); } break; - case 460: -#line 944 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 461: -#line 948 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-1).obj, NULL); } break; +#line 945 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 462: #line 949 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, kx_gen_var_type_object(YYASP(1-4).obj, YYASP(3-4).arraytype, YYASP(4-4).intval), NULL); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-1).obj, NULL); } break; case 463: #line 950 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, kx_gen_var_type_object(YYASP(1-4).obj, YYASP(3-4).arraytype, YYASP(4-4).intval), NULL); } break; case 464: #line 951 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, kx_gen_var_type_object(YYASP(1-6).obj, YYASP(3-6).arraytype, YYASP(4-6).intval), YYASP(6-6).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 465: #line 952 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, kx_gen_var_type_object(YYASP(1-6).obj, YYASP(3-6).arraytype, YYASP(4-6).intval), YYASP(6-6).obj); } break; case 466: #line 953 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 468: -#line 958 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_ASSIGN, YYASP(1-3).obj, YYASP(3-3).obj); } break; + case 467: +#line 954 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_DECL, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 469: -#line 962 "src/kinx.y" -{ yyval.obj = kx_gen_stmt_object(KXST_EXPR, YYASP(1-1).obj, NULL, NULL); } break; +#line 959 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXOP_ASSIGN, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 470: #line 963 "src/kinx.y" { yyval.obj = kx_gen_stmt_object(KXST_EXPR, YYASP(1-1).obj, NULL, NULL); } break; case 471: -#line 967 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +#line 964 "src/kinx.y" +{ yyval.obj = kx_gen_stmt_object(KXST_EXPR, YYASP(1-1).obj, NULL, NULL); } break; case 472: #line 968 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_SYSFUNC, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_FUNCTION, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; case 473: #line 969 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_NATIVE, 0, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_SYSFUNC, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; case 474: -#line 973 "src/kinx.y" -{ kx_make_native_mode(); yyval.intval = YYASP(1-1).intval; } break; +#line 970 "src/kinx.y" +{ yyval.obj = kx_gen_func_object_line(KXST_NATIVE, 0, YYASP(6-7).arraytype, YYASP(2-7).strinfo.name, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; case 475: -#line 977 "src/kinx.y" -{ yyval.arraytype = (arytype_t){ .type = KX_UNKNOWN_T }; } break; +#line 974 "src/kinx.y" +{ kx_make_native_mode(); yyval.intval = YYASP(1-1).intval; } break; case 476: #line 978 "src/kinx.y" -{ yyval.arraytype = YYASP(2-2).arraytype; } break; +{ yyval.arraytype = (arytype_t){ .type = KX_UNKNOWN_T }; } break; case 477: -#line 982 "src/kinx.y" -{ yyval.arraytype = (arytype_t){ .type = KX_INT_T }; } break; +#line 979 "src/kinx.y" +{ yyval.arraytype = YYASP(2-2).arraytype; } break; case 478: #line 983 "src/kinx.y" -{ yyval.arraytype = YYASP(2-2).arraytype; } break; +{ yyval.arraytype = (arytype_t){ .type = KX_INT_T }; } break; case 479: -#line 987 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; +#line 984 "src/kinx.y" +{ yyval.arraytype = YYASP(2-2).arraytype; } break; case 480: #line 988 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_SYSFUNC, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; case 481: #line 989 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_COROUTINE, KXFT_SYSFUNC, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_SYSFUNC, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; case 482: #line 990 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_NATIVE, 0, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_COROUTINE, KXFT_SYSFUNC, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL, YYASP(1-6).intval); } break; case 483: #line 991 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-7).arraytype, NULL, YYASP(3-7).obj, kx_gen_stmt_object(KXST_RET, YYASP(7-7).obj, NULL, NULL), NULL); } break; +{ yyval.obj = kx_gen_func_object(KXST_NATIVE, 0, YYASP(5-6).arraytype, NULL, YYASP(3-6).obj, YYASP(6-6).obj, NULL); } break; case 484: #line 992 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-7).arraytype, NULL, YYASP(3-7).obj, YYASP(7-7).obj, NULL); } break; +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-7).arraytype, NULL, YYASP(3-7).obj, kx_gen_stmt_object(KXST_RET, YYASP(7-7).obj, NULL, NULL), NULL); } break; case 485: #line 993 "src/kinx.y" -{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(2-3).arraytype, NULL, NULL, YYASP(3-3).obj, NULL); } break; +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(5-7).arraytype, NULL, YYASP(3-7).obj, YYASP(7-7).obj, NULL); } break; case 486: -#line 997 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PUBLIC, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +#line 994 "src/kinx.y" +{ yyval.obj = kx_gen_func_object(KXST_FUNCTION, KXFT_FUNCTION, YYASP(2-3).arraytype, NULL, NULL, YYASP(3-3).obj, NULL); } break; case 487: #line 998 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PRIVATE, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PUBLIC, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; case 488: #line 999 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PROTECTED, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PRIVATE, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; case 489: -#line 1003 "src/kinx.y" +#line 1000 "src/kinx.y" +{ yyval.obj = kx_gen_func_object_line(KXST_FUNCTION, KXFT_PROTECTED, YYASP(6-7).arraytype, YYASP(2-7).strval, YYASP(4-7).obj, YYASP(7-7).obj, NULL, YYASP(1-7).intval); } break; + case 490: +#line 1004 "src/kinx.y" { yyval.strval = YYASP(1-1).strinfo.name; } break; - case 491: -#line 1008 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_name_line(KXST_CLASS, KXFT_CLASS, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-5).strinfo.name, YYASP(3-5).obj, YYASP(5-5).obj, YYASP(4-5).namedstmt, YYASP(1-5).intval); } break; case 492: #line 1009 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_name_line(KXST_SYSCLASS, KXFT_CLASS, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-5).strinfo.name, YYASP(3-5).obj, YYASP(5-5).obj, YYASP(4-5).namedstmt, YYASP(1-5).intval); } break; +{ yyval.obj = kx_gen_func_object_name_line(KXST_CLASS, KXFT_CLASS, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-5).strinfo.name, YYASP(3-5).obj, YYASP(5-5).obj, YYASP(4-5).namedstmt, YYASP(1-5).intval); } break; case 493: -#line 1013 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_CLASS, KXFT_MODULE, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-3).strinfo.name, NULL, YYASP(3-3).obj, NULL, YYASP(1-3).intval); } break; +#line 1010 "src/kinx.y" +{ yyval.obj = kx_gen_func_object_name_line(KXST_SYSCLASS, KXFT_CLASS, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-5).strinfo.name, YYASP(3-5).obj, YYASP(5-5).obj, YYASP(4-5).namedstmt, YYASP(1-5).intval); } break; case 494: #line 1014 "src/kinx.y" -{ yyval.obj = kx_gen_func_object_line(KXST_SYSCLASS, KXFT_MODULE, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-3).strinfo.name, NULL, YYASP(3-3).obj, NULL, YYASP(1-3).intval); } break; +{ yyval.obj = kx_gen_func_object_line(KXST_CLASS, KXFT_MODULE, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-3).strinfo.name, NULL, YYASP(3-3).obj, NULL, YYASP(1-3).intval); } break; case 495: -#line 1018 "src/kinx.y" -{ yyval.namedstmt = (named_stmt_t){ .name = NULL, .stmt = NULL }; } break; +#line 1015 "src/kinx.y" +{ yyval.obj = kx_gen_func_object_line(KXST_SYSCLASS, KXFT_MODULE, (arytype_t){ .type = KX_UNKNOWN_T }, YYASP(2-3).strinfo.name, NULL, YYASP(3-3).obj, NULL, YYASP(1-3).intval); } break; case 496: -#line 1020 "src/kinx.y" +#line 1019 "src/kinx.y" +{ yyval.namedstmt = (named_stmt_t){ .name = NULL, .stmt = NULL }; } break; + case 497: +#line 1021 "src/kinx.y" { yyval.namedstmt = (named_stmt_t){ .name = kx_check_the_name(YYASP(3-4).obj), @@ -3202,86 +3213,86 @@ int yyparse(YYPARSE_ARG) ), }; } break; - case 498: -#line 1036 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-4).obj, YYASP(3-4).obj); } break; case 499: #line 1037 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-3).obj, YYASP(3-3).obj); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-4).obj, YYASP(3-4).obj); } break; case 500: #line 1038 "src/kinx.y" -{ yyval.obj = kx_gen_typeof_object(YYASP(1-3).obj, YYASP(3-3).intval); } break; +{ yyval.obj = kx_gen_bexpr_object(KXOP_IDX, YYASP(1-3).obj, YYASP(3-3).obj); } break; case 501: -#line 1042 "src/kinx.y" -{ yyval.obj = NULL; } break; +#line 1039 "src/kinx.y" +{ yyval.obj = kx_gen_typeof_object(YYASP(1-3).obj, YYASP(3-3).intval); } break; case 502: #line 1043 "src/kinx.y" -{ yyval.obj = YYASP(2-3).obj; } break; +{ yyval.obj = NULL; } break; case 503: -#line 1047 "src/kinx.y" +#line 1044 "src/kinx.y" +{ yyval.obj = YYASP(2-3).obj; } break; + case 504: +#line 1048 "src/kinx.y" { yyval.obj = NULL; } break; - case 506: -#line 1053 "src/kinx.y" + case 507: +#line 1054 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(1-3).obj, YYASP(3-3).obj); } break; - case 508: -#line 1058 "src/kinx.y" -{ yyval.obj = kx_gen_var_type_object(YYASP(1-4).obj, YYASP(3-4).arraytype, YYASP(4-4).intval); } break; case 509: #line 1059 "src/kinx.y" -{ yyval.obj = kx_gen_ary_var_object(YYASP(1-1).obj->lhs, KX_LARY_T); } break; +{ yyval.obj = kx_gen_var_type_object(YYASP(1-4).obj, YYASP(3-4).arraytype, YYASP(4-4).intval); } break; case 510: #line 1060 "src/kinx.y" -{ yyval.obj = kx_gen_ary_var_object(YYASP(1-1).obj->lhs, KX_LOBJ_T); } break; +{ yyval.obj = kx_gen_ary_var_object(YYASP(1-1).obj->lhs, KX_LARY_T); } break; case 511: #line 1061 "src/kinx.y" -{ YYASP(2-2).obj->var_type = KX_SPR_T; yyval.obj = YYASP(2-2).obj; } break; +{ yyval.obj = kx_gen_ary_var_object(YYASP(1-1).obj->lhs, KX_LOBJ_T); } break; case 512: -#line 1065 "src/kinx.y" -{ yyval.arraytype = (arytype_t){ .type = YYASP(1-2).intval, .depth = YYASP(2-2).intval }; } break; +#line 1062 "src/kinx.y" +{ YYASP(2-2).obj->var_type = KX_SPR_T; yyval.obj = YYASP(2-2).obj; } break; case 513: #line 1066 "src/kinx.y" -{ yyval.arraytype = (arytype_t){ .type = KX_NFNC_T }; } break; +{ yyval.arraytype = (arytype_t){ .type = YYASP(1-2).intval, .depth = YYASP(2-2).intval }; } break; case 514: #line 1067 "src/kinx.y" -{ yyval.arraytype = (arytype_t){ .type = KX_OBJ_T, .depth = YYASP(2-2).intval, .name = kx_gen_constant_string(YYASP(1-2).strinfo.name) }; } break; +{ yyval.arraytype = (arytype_t){ .type = KX_NFNC_T }; } break; case 515: -#line 1071 "src/kinx.y" -{ yyval.intval = 0; } break; +#line 1068 "src/kinx.y" +{ yyval.arraytype = (arytype_t){ .type = KX_OBJ_T, .depth = YYASP(2-2).intval, .name = kx_gen_constant_string(YYASP(1-2).strinfo.name) }; } break; case 516: #line 1072 "src/kinx.y" -{ yyval.intval = 1; } break; +{ yyval.intval = 0; } break; case 517: #line 1073 "src/kinx.y" -{ yyval.intval = YYASP(1-3).intval + 1; } break; +{ yyval.intval = 1; } break; case 518: -#line 1077 "src/kinx.y" -{ yyval.intval = KX_UNKNOWN_T; } break; +#line 1074 "src/kinx.y" +{ yyval.intval = YYASP(1-3).intval + 1; } break; case 519: #line 1078 "src/kinx.y" -{ yyval.intval = YYASP(2-3).arraytype.type; } break; +{ yyval.intval = KX_UNKNOWN_T; } break; case 520: -#line 1082 "src/kinx.y" -{ yyval.obj = NULL; } break; +#line 1079 "src/kinx.y" +{ yyval.intval = YYASP(2-3).arraytype.type; } break; case 521: #line 1083 "src/kinx.y" -{ yyval.obj = YYASP(2-3).obj; } break; +{ yyval.obj = NULL; } break; case 522: -#line 1087 "src/kinx.y" +#line 1084 "src/kinx.y" +{ yyval.obj = YYASP(2-3).obj; } break; + case 523: +#line 1088 "src/kinx.y" { yyval.obj = NULL; } break; - case 525: -#line 1093 "src/kinx.y" -{ yyval.obj = kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj); } break; case 526: #line 1094 "src/kinx.y" -{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(3-3).obj, YYASP(1-3).obj); } break; +{ yyval.obj = kx_gen_uexpr_object(KXOP_SPREAD, YYASP(2-2).obj); } break; case 527: #line 1095 "src/kinx.y" +{ yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, YYASP(3-3).obj, YYASP(1-3).obj); } break; + case 528: +#line 1096 "src/kinx.y" { yyval.obj = kx_gen_bexpr_object(KXST_EXPRLIST, kx_gen_uexpr_object(KXOP_SPREAD, YYASP(4-4).obj), YYASP(1-4).obj); } break; - case 530: -#line 1101 "src/kinx.y" -{ yyval.obj = kx_gen_str_object(YYASP(1-1).strval); } break; case 531: -#line 1105 "src/kinx.y" +#line 1102 "src/kinx.y" +{ yyval.obj = kx_gen_str_object(YYASP(1-1).strval); } break; + case 532: +#line 1106 "src/kinx.y" { yyval.intval = kx_lexinfo.line; } break; #line 389 "build/utility/kmyacc.c.parser" }