From bf59aafddc92ef52e9e5c61152e2c1d182f453bf Mon Sep 17 00:00:00 2001 From: Daniel Morsing Date: Wed, 12 Dec 2012 16:43:54 +0100 Subject: [PATCH] cmd/gc: Give better line numbers for errors in composite literals. Credit to Russ for suggesting this fix. Fixes #3925. R=golang-dev, franciscossouza, rsc CC=golang-dev https://golang.org/cl/6920051 --- src/cmd/gc/go.y | 29 +- src/cmd/gc/y.tab.c | 3280 +++++++++++++++++++---------------- src/cmd/gc/y.tab.h | 36 +- src/cmd/gc/yerr.h | 2 +- test/fixedbugs/issue3925.go | 23 + 5 files changed, 1869 insertions(+), 1501 deletions(-) create mode 100644 test/fixedbugs/issue3925.go diff --git a/src/cmd/gc/go.y b/src/cmd/gc/go.y index 29e6e3b342..5f9d5935f7 100644 --- a/src/cmd/gc/go.y +++ b/src/cmd/gc/go.y @@ -54,7 +54,7 @@ static void fixlbrace(int); %type stmt ntype %type arg_type %type case caseblock -%type compound_stmt dotname embed expr complitexpr +%type compound_stmt dotname embed expr complitexpr bare_complitexpr %type expr_or_type %type fndcl hidden_fndcl fnliteral %type for_body for_header for_stmt if_header if_stmt non_dcl_stmt @@ -974,6 +974,29 @@ keyval: $$ = nod(OKEY, $1, $3); } +bare_complitexpr: + expr + { + // These nodes do not carry line numbers. + // Since a composite literal commonly spans several lines, + // the line number on errors may be misleading. + // Introduce a wrapper node to give the correct line. + $$ = $1; + switch($$->op) { + case ONAME: + case ONONAME: + case OTYPE: + case OPACK: + case OLITERAL: + $$ = nod(OPAREN, $$, N); + } + } +| '{' start_complit braced_keyval_list '}' + { + $$ = $2; + $$->list = $3; + } + complitexpr: expr | '{' start_complit braced_keyval_list '}' @@ -1761,7 +1784,7 @@ keyval_list: { $$ = list1($1); } -| complitexpr +| bare_complitexpr { $$ = list1($1); } @@ -1769,7 +1792,7 @@ keyval_list: { $$ = list($1, $3); } -| keyval_list ',' complitexpr +| keyval_list ',' bare_complitexpr { $$ = list($1, $3); } diff --git a/src/cmd/gc/y.tab.c b/src/cmd/gc/y.tab.c index 26ae8e1833..792dc661cd 100644 --- a/src/cmd/gc/y.tab.c +++ b/src/cmd/gc/y.tab.c @@ -1,8 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.6.5. */ +/* A Bison parser, made by GNU Bison 2.5. */ /* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.6.5" +#define YYBISON_VERSION "2.5" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -58,11 +58,14 @@ /* Pull parsers. */ #define YYPULL 1 +/* Using locations. */ +#define YYLSP_NEEDED 0 /* Copy the first part of user declarations. */ -/* Line 360 of yacc.c */ + +/* Line 268 of yacc.c */ #line 20 "go.y" #include @@ -72,16 +75,14 @@ static void fixlbrace(int); -/* Line 360 of yacc.c */ -#line 77 "y.tab.c" -# ifndef YY_NULL -# if defined __cplusplus && 201103L <= __cplusplus -# define YY_NULL nullptr -# else -# define YY_NULL 0 -# endif -# endif +/* Line 268 of yacc.c */ +#line 81 "y.tab.c" + +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif /* Enabling verbose error messages. */ #ifdef YYERROR_VERBOSE @@ -91,18 +92,12 @@ static void fixlbrace(int); # define YYERROR_VERBOSE 1 #endif -/* In a future release of Bison, this section will be replaced - by #include "y.tab.h". */ -#ifndef YY_YY_Y_TAB_H_INCLUDED -# define YY_YY_Y_TAB_H_INCLUDED -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif -#if YYDEBUG -extern int yydebug; +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 #endif + /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE @@ -213,10 +208,12 @@ extern int yydebug; + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE { -/* Line 376 of yacc.c */ + +/* Line 293 of yacc.c */ #line 28 "go.y" Node* node; @@ -227,36 +224,21 @@ typedef union YYSTYPE int i; -/* Line 376 of yacc.c */ -#line 232 "y.tab.c" + +/* Line 293 of yacc.c */ +#line 230 "y.tab.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 #endif -extern YYSTYPE yylval; - -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ - -#endif /* !YY_YY_Y_TAB_H_INCLUDED */ /* Copy the second part of user declarations. */ -/* Line 379 of yacc.c */ -#line 260 "y.tab.c" + +/* Line 343 of yacc.c */ +#line 242 "y.tab.c" #ifdef short # undef short @@ -309,24 +291,24 @@ typedef short int yytype_int16; # if defined YYENABLE_NLS && YYENABLE_NLS # if ENABLE_NLS # include /* INFRINGES ON USER NAME SPACE */ -# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# define YY_(msgid) dgettext ("bison-runtime", msgid) # endif # endif # ifndef YY_ -# define YY_(Msgid) Msgid +# define YY_(msgid) msgid # endif #endif /* Suppress unused-variable warnings by "using" E. */ #if ! defined lint || defined __GNUC__ -# define YYUSE(E) ((void) (E)) +# define YYUSE(e) ((void) (e)) #else -# define YYUSE(E) /* empty */ +# define YYUSE(e) /* empty */ #endif /* Identity function, used to suppress warnings about constant conditions. */ #ifndef lint -# define YYID(N) (N) +# define YYID(n) (n) #else #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) @@ -362,7 +344,6 @@ YYID (yyi) # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include /* INFRINGES ON USER NAME SPACE */ - /* Use EXIT_SUCCESS as a witness for stdlib.h. */ # ifndef EXIT_SUCCESS # define EXIT_SUCCESS 0 # endif @@ -454,20 +435,20 @@ union yyalloc #endif #if defined YYCOPY_NEEDED && YYCOPY_NEEDED -/* Copy COUNT objects from SRC to DST. The source and destination do +/* Copy COUNT objects from FROM to TO. The source and destination do not overlap. */ # ifndef YYCOPY # if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(Dst, Src, Count) \ - __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) # else -# define YYCOPY(Dst, Src, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (Dst)[yyi] = (Src)[yyi]; \ - } \ +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ while (YYID (0)) # endif # endif @@ -476,16 +457,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 4 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 2049 +#define YYLAST 2144 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 76 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 141 +#define YYNNTS 142 /* YYNRULES -- Number of rules. */ -#define YYNRULES 347 +#define YYNRULES 349 /* YYNRULES -- Number of states. */ -#define YYNSTATES 658 +#define YYNSTATES 662 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -549,58 +530,58 @@ static const yytype_uint16 yyprhs[] = 366, 370, 374, 378, 382, 384, 387, 390, 393, 396, 399, 402, 405, 408, 412, 418, 425, 427, 429, 433, 439, 445, 450, 457, 459, 464, 470, 476, 484, 486, - 487, 491, 493, 498, 500, 504, 506, 508, 510, 512, - 514, 516, 518, 519, 521, 523, 525, 527, 532, 534, - 536, 538, 541, 543, 545, 547, 549, 551, 555, 557, - 559, 561, 564, 566, 568, 570, 572, 576, 578, 580, - 582, 584, 586, 588, 590, 592, 594, 598, 603, 608, - 611, 615, 621, 623, 625, 628, 632, 638, 642, 648, - 652, 656, 662, 671, 677, 686, 692, 693, 697, 698, - 700, 704, 706, 711, 714, 715, 719, 721, 725, 727, - 731, 733, 737, 739, 743, 745, 749, 753, 756, 761, - 765, 771, 777, 779, 783, 785, 788, 790, 794, 799, - 801, 804, 807, 809, 811, 815, 816, 819, 820, 822, - 824, 826, 828, 830, 832, 834, 836, 838, 839, 844, - 846, 849, 852, 855, 858, 861, 864, 866, 870, 872, - 876, 878, 882, 884, 888, 890, 894, 896, 898, 902, - 906, 907, 910, 911, 913, 914, 916, 917, 919, 920, - 922, 923, 925, 926, 928, 929, 931, 932, 934, 935, - 937, 942, 947, 953, 960, 965, 970, 972, 974, 976, - 978, 980, 982, 984, 986, 988, 992, 997, 1003, 1008, - 1013, 1016, 1019, 1024, 1028, 1032, 1038, 1042, 1047, 1051, - 1057, 1059, 1060, 1062, 1066, 1068, 1070, 1073, 1075, 1077, - 1083, 1084, 1087, 1089, 1093, 1095, 1099, 1101 + 487, 491, 493, 498, 500, 505, 507, 511, 513, 515, + 517, 519, 521, 523, 525, 526, 528, 530, 532, 534, + 539, 541, 543, 545, 548, 550, 552, 554, 556, 558, + 562, 564, 566, 568, 571, 573, 575, 577, 579, 583, + 585, 587, 589, 591, 593, 595, 597, 599, 601, 605, + 610, 615, 618, 622, 628, 630, 632, 635, 639, 645, + 649, 655, 659, 663, 669, 678, 684, 693, 699, 700, + 704, 705, 707, 711, 713, 718, 721, 722, 726, 728, + 732, 734, 738, 740, 744, 746, 750, 752, 756, 760, + 763, 768, 772, 778, 784, 786, 790, 792, 795, 797, + 801, 806, 808, 811, 814, 816, 818, 822, 823, 826, + 827, 829, 831, 833, 835, 837, 839, 841, 843, 845, + 846, 851, 853, 856, 859, 862, 865, 868, 871, 873, + 877, 879, 883, 885, 889, 891, 895, 897, 901, 903, + 905, 909, 913, 914, 917, 918, 920, 921, 923, 924, + 926, 927, 929, 930, 932, 933, 935, 936, 938, 939, + 941, 942, 944, 949, 954, 960, 967, 972, 977, 979, + 981, 983, 985, 987, 989, 991, 993, 995, 999, 1004, + 1010, 1015, 1020, 1023, 1026, 1031, 1035, 1039, 1045, 1049, + 1054, 1058, 1064, 1066, 1067, 1069, 1073, 1075, 1077, 1080, + 1082, 1084, 1090, 1091, 1094, 1096, 1100, 1102, 1106, 1108 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 77, 0, -1, 79, 78, 81, 165, -1, -1, 25, - 140, 62, -1, -1, 80, 86, 88, -1, -1, 81, - 82, 62, -1, 21, 83, -1, 21, 59, 84, 189, + 77, 0, -1, 79, 78, 81, 166, -1, -1, 25, + 141, 62, -1, -1, 80, 86, 88, -1, -1, 81, + 82, 62, -1, 21, 83, -1, 21, 59, 84, 190, 60, -1, 21, 59, 60, -1, 85, 86, 88, -1, 85, 88, -1, 83, -1, 84, 62, 83, -1, 3, - -1, 140, 3, -1, 63, 3, -1, 25, 24, 87, - 62, -1, -1, 24, -1, -1, 89, 213, 64, 64, - -1, -1, 91, -1, 157, -1, 180, -1, 1, -1, - 32, 93, -1, 32, 59, 166, 189, 60, -1, 32, - 59, 60, -1, 92, 94, -1, 92, 59, 94, 189, - 60, -1, 92, 59, 94, 62, 167, 189, 60, -1, - 92, 59, 60, -1, 31, 97, -1, 31, 59, 168, - 189, 60, -1, 31, 59, 60, -1, 9, -1, 184, - 145, -1, 184, 145, 65, 185, -1, 184, 65, 185, - -1, 184, 145, 65, 185, -1, 184, 65, 185, -1, - 94, -1, 184, 145, -1, 184, -1, 140, -1, 96, - 145, -1, 126, -1, 126, 4, 126, -1, 185, 65, - 185, -1, 185, 5, 185, -1, 126, 42, -1, 126, - 37, -1, 7, 186, 66, -1, 7, 186, 65, 126, - 66, -1, 7, 186, 5, 126, 66, -1, 12, 66, - -1, -1, 67, 101, 182, 68, -1, -1, 99, 103, - 182, -1, -1, 104, 102, -1, -1, 35, 106, 182, - 68, -1, 185, 65, 26, 126, -1, 185, 5, 26, - 126, -1, 193, 62, 193, 62, 193, -1, 193, -1, + -1, 141, 3, -1, 63, 3, -1, 25, 24, 87, + 62, -1, -1, 24, -1, -1, 89, 214, 64, 64, + -1, -1, 91, -1, 158, -1, 181, -1, 1, -1, + 32, 93, -1, 32, 59, 167, 190, 60, -1, 32, + 59, 60, -1, 92, 94, -1, 92, 59, 94, 190, + 60, -1, 92, 59, 94, 62, 168, 190, 60, -1, + 92, 59, 60, -1, 31, 97, -1, 31, 59, 169, + 190, 60, -1, 31, 59, 60, -1, 9, -1, 185, + 146, -1, 185, 146, 65, 186, -1, 185, 65, 186, + -1, 185, 146, 65, 186, -1, 185, 65, 186, -1, + 94, -1, 185, 146, -1, 185, -1, 141, -1, 96, + 146, -1, 126, -1, 126, 4, 126, -1, 186, 65, + 186, -1, 186, 5, 186, -1, 126, 42, -1, 126, + 37, -1, 7, 187, 66, -1, 7, 187, 65, 126, + 66, -1, 7, 187, 5, 126, 66, -1, 12, 66, + -1, -1, 67, 101, 183, 68, -1, -1, 99, 103, + 183, -1, -1, 104, 102, -1, -1, 35, 106, 183, + 68, -1, 186, 65, 26, 126, -1, 186, 5, 26, + 126, -1, 194, 62, 194, 62, 194, -1, 194, -1, 107, -1, 108, 105, -1, -1, 16, 111, 109, -1, - 193, -1, 193, 62, 193, -1, -1, -1, -1, 20, + 194, -1, 194, 62, 194, -1, -1, -1, -1, 20, 114, 112, 115, 105, 116, 119, 120, -1, -1, 14, 20, 118, 112, 105, -1, -1, 119, 117, -1, -1, 14, 100, -1, -1, -1, 30, 122, 112, 123, 35, @@ -613,79 +594,80 @@ static const yytype_int16 yyrhs[] = 126, 53, 126, -1, 126, 54, 126, -1, 126, 55, 126, -1, 126, 56, 126, -1, 126, 34, 126, -1, 126, 44, 126, -1, 126, 48, 126, -1, 126, 36, - 126, -1, 133, -1, 53, 127, -1, 56, 127, -1, + 126, -1, 134, -1, 53, 127, -1, 56, 127, -1, 49, 127, -1, 50, 127, -1, 69, 127, -1, 70, - 127, -1, 52, 127, -1, 36, 127, -1, 133, 59, - 60, -1, 133, 59, 186, 190, 60, -1, 133, 59, - 186, 11, 190, 60, -1, 3, -1, 142, -1, 133, - 63, 140, -1, 133, 63, 59, 134, 60, -1, 133, - 63, 59, 31, 60, -1, 133, 71, 126, 72, -1, - 133, 71, 191, 66, 191, 72, -1, 128, -1, 148, - 59, 126, 60, -1, 149, 136, 130, 188, 68, -1, - 129, 67, 130, 188, 68, -1, 59, 134, 60, 67, - 130, 188, 68, -1, 164, -1, -1, 126, 66, 132, - -1, 126, -1, 67, 130, 188, 68, -1, 129, -1, - 59, 134, 60, -1, 126, -1, 146, -1, 145, -1, - 35, -1, 67, -1, 140, -1, 140, -1, -1, 137, - -1, 24, -1, 141, -1, 73, -1, 74, 3, 63, - 24, -1, 140, -1, 137, -1, 11, -1, 11, 145, - -1, 154, -1, 160, -1, 152, -1, 153, -1, 151, - -1, 59, 145, 60, -1, 154, -1, 160, -1, 152, - -1, 53, 146, -1, 160, -1, 152, -1, 153, -1, - 151, -1, 59, 145, 60, -1, 160, -1, 152, -1, - 152, -1, 154, -1, 160, -1, 152, -1, 153, -1, - 151, -1, 142, -1, 142, 63, 140, -1, 71, 191, - 72, 145, -1, 71, 11, 72, 145, -1, 8, 147, - -1, 8, 36, 145, -1, 23, 71, 145, 72, 145, - -1, 155, -1, 156, -1, 53, 145, -1, 36, 8, - 145, -1, 29, 136, 169, 189, 68, -1, 29, 136, - 68, -1, 22, 136, 170, 189, 68, -1, 22, 136, - 68, -1, 17, 158, 161, -1, 140, 59, 178, 60, - 162, -1, 59, 178, 60, 140, 59, 178, 60, 162, - -1, 199, 59, 194, 60, 209, -1, 59, 214, 60, - 140, 59, 194, 60, 209, -1, 17, 59, 178, 60, - 162, -1, -1, 67, 182, 68, -1, -1, 150, -1, - 59, 178, 60, -1, 160, -1, 163, 136, 182, 68, - -1, 163, 1, -1, -1, 165, 90, 62, -1, 93, - -1, 166, 62, 93, -1, 95, -1, 167, 62, 95, - -1, 97, -1, 168, 62, 97, -1, 171, -1, 169, - 62, 171, -1, 174, -1, 170, 62, 174, -1, 183, - 145, 197, -1, 173, 197, -1, 59, 173, 60, 197, - -1, 53, 173, 197, -1, 59, 53, 173, 60, 197, - -1, 53, 59, 173, 60, 197, -1, 24, -1, 24, - 63, 140, -1, 172, -1, 137, 175, -1, 172, -1, - 59, 172, 60, -1, 59, 178, 60, 162, -1, 135, - -1, 140, 135, -1, 140, 144, -1, 144, -1, 176, - -1, 177, 75, 176, -1, -1, 177, 190, -1, -1, - 100, -1, 91, -1, 180, -1, 1, -1, 98, -1, - 110, -1, 121, -1, 124, -1, 113, -1, -1, 143, - 66, 181, 179, -1, 15, -1, 6, 139, -1, 10, - 139, -1, 18, 128, -1, 13, 128, -1, 19, 137, - -1, 27, 192, -1, 179, -1, 182, 62, 179, -1, - 137, -1, 183, 75, 137, -1, 138, -1, 184, 75, - 138, -1, 126, -1, 185, 75, 126, -1, 134, -1, - 186, 75, 134, -1, 131, -1, 132, -1, 187, 75, - 131, -1, 187, 75, 132, -1, -1, 187, 190, -1, - -1, 62, -1, -1, 75, -1, -1, 126, -1, -1, - 185, -1, -1, 98, -1, -1, 214, -1, -1, 215, - -1, -1, 216, -1, -1, 3, -1, 21, 24, 3, - 62, -1, 32, 199, 201, 62, -1, 9, 199, 65, - 212, 62, -1, 9, 199, 201, 65, 212, 62, -1, - 31, 200, 201, 62, -1, 17, 159, 161, 62, -1, - 141, -1, 199, -1, 203, -1, 204, -1, 205, -1, - 203, -1, 205, -1, 141, -1, 24, -1, 71, 72, - 201, -1, 71, 3, 72, 201, -1, 23, 71, 201, - 72, 201, -1, 29, 67, 195, 68, -1, 22, 67, - 196, 68, -1, 53, 201, -1, 8, 202, -1, 8, - 59, 204, 60, -1, 8, 36, 201, -1, 36, 8, - 201, -1, 17, 59, 194, 60, 209, -1, 140, 201, - 197, -1, 140, 11, 201, 197, -1, 140, 201, 197, - -1, 140, 59, 194, 60, 209, -1, 201, -1, -1, - 210, -1, 59, 194, 60, -1, 201, -1, 3, -1, - 50, 3, -1, 140, -1, 211, -1, 59, 211, 49, - 211, 60, -1, -1, 213, 198, -1, 206, -1, 214, - 75, 206, -1, 207, -1, 215, 62, 207, -1, 208, - -1, 216, 62, 208, -1 + 127, -1, 52, 127, -1, 36, 127, -1, 134, 59, + 60, -1, 134, 59, 187, 191, 60, -1, 134, 59, + 187, 11, 191, 60, -1, 3, -1, 143, -1, 134, + 63, 141, -1, 134, 63, 59, 135, 60, -1, 134, + 63, 59, 31, 60, -1, 134, 71, 126, 72, -1, + 134, 71, 192, 66, 192, 72, -1, 128, -1, 149, + 59, 126, 60, -1, 150, 137, 130, 189, 68, -1, + 129, 67, 130, 189, 68, -1, 59, 135, 60, 67, + 130, 189, 68, -1, 165, -1, -1, 126, 66, 133, + -1, 126, -1, 67, 130, 189, 68, -1, 126, -1, + 67, 130, 189, 68, -1, 129, -1, 59, 135, 60, + -1, 126, -1, 147, -1, 146, -1, 35, -1, 67, + -1, 141, -1, 141, -1, -1, 138, -1, 24, -1, + 142, -1, 73, -1, 74, 3, 63, 24, -1, 141, + -1, 138, -1, 11, -1, 11, 146, -1, 155, -1, + 161, -1, 153, -1, 154, -1, 152, -1, 59, 146, + 60, -1, 155, -1, 161, -1, 153, -1, 53, 147, + -1, 161, -1, 153, -1, 154, -1, 152, -1, 59, + 146, 60, -1, 161, -1, 153, -1, 153, -1, 155, + -1, 161, -1, 153, -1, 154, -1, 152, -1, 143, + -1, 143, 63, 141, -1, 71, 192, 72, 146, -1, + 71, 11, 72, 146, -1, 8, 148, -1, 8, 36, + 146, -1, 23, 71, 146, 72, 146, -1, 156, -1, + 157, -1, 53, 146, -1, 36, 8, 146, -1, 29, + 137, 170, 190, 68, -1, 29, 137, 68, -1, 22, + 137, 171, 190, 68, -1, 22, 137, 68, -1, 17, + 159, 162, -1, 141, 59, 179, 60, 163, -1, 59, + 179, 60, 141, 59, 179, 60, 163, -1, 200, 59, + 195, 60, 210, -1, 59, 215, 60, 141, 59, 195, + 60, 210, -1, 17, 59, 179, 60, 163, -1, -1, + 67, 183, 68, -1, -1, 151, -1, 59, 179, 60, + -1, 161, -1, 164, 137, 183, 68, -1, 164, 1, + -1, -1, 166, 90, 62, -1, 93, -1, 167, 62, + 93, -1, 95, -1, 168, 62, 95, -1, 97, -1, + 169, 62, 97, -1, 172, -1, 170, 62, 172, -1, + 175, -1, 171, 62, 175, -1, 184, 146, 198, -1, + 174, 198, -1, 59, 174, 60, 198, -1, 53, 174, + 198, -1, 59, 53, 174, 60, 198, -1, 53, 59, + 174, 60, 198, -1, 24, -1, 24, 63, 141, -1, + 173, -1, 138, 176, -1, 173, -1, 59, 173, 60, + -1, 59, 179, 60, 163, -1, 136, -1, 141, 136, + -1, 141, 145, -1, 145, -1, 177, -1, 178, 75, + 177, -1, -1, 178, 191, -1, -1, 100, -1, 91, + -1, 181, -1, 1, -1, 98, -1, 110, -1, 121, + -1, 124, -1, 113, -1, -1, 144, 66, 182, 180, + -1, 15, -1, 6, 140, -1, 10, 140, -1, 18, + 128, -1, 13, 128, -1, 19, 138, -1, 27, 193, + -1, 180, -1, 183, 62, 180, -1, 138, -1, 184, + 75, 138, -1, 139, -1, 185, 75, 139, -1, 126, + -1, 186, 75, 126, -1, 135, -1, 187, 75, 135, + -1, 131, -1, 132, -1, 188, 75, 131, -1, 188, + 75, 132, -1, -1, 188, 191, -1, -1, 62, -1, + -1, 75, -1, -1, 126, -1, -1, 186, -1, -1, + 98, -1, -1, 215, -1, -1, 216, -1, -1, 217, + -1, -1, 3, -1, 21, 24, 3, 62, -1, 32, + 200, 202, 62, -1, 9, 200, 65, 213, 62, -1, + 9, 200, 202, 65, 213, 62, -1, 31, 201, 202, + 62, -1, 17, 160, 162, 62, -1, 142, -1, 200, + -1, 204, -1, 205, -1, 206, -1, 204, -1, 206, + -1, 142, -1, 24, -1, 71, 72, 202, -1, 71, + 3, 72, 202, -1, 23, 71, 202, 72, 202, -1, + 29, 67, 196, 68, -1, 22, 67, 197, 68, -1, + 53, 202, -1, 8, 203, -1, 8, 59, 205, 60, + -1, 8, 36, 202, -1, 36, 8, 202, -1, 17, + 59, 195, 60, 210, -1, 141, 202, 198, -1, 141, + 11, 202, 198, -1, 141, 202, 198, -1, 141, 59, + 195, 60, 210, -1, 202, -1, -1, 211, -1, 59, + 195, 60, -1, 202, -1, 3, -1, 50, 3, -1, + 141, -1, 212, -1, 59, 212, 49, 212, 60, -1, + -1, 214, 199, -1, 207, -1, 215, 75, 207, -1, + 208, -1, 216, 62, 208, -1, 209, -1, 217, 62, + 209, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -705,31 +687,31 @@ static const yytype_uint16 yyrline[] = 820, 824, 828, 833, 839, 840, 844, 855, 859, 863, 867, 872, 876, 886, 890, 895, 903, 907, 908, 919, 923, 927, 931, 935, 936, 942, 949, 955, 962, 965, - 972, 978, 979, 986, 987, 1005, 1006, 1009, 1012, 1016, - 1027, 1036, 1042, 1045, 1048, 1055, 1056, 1062, 1077, 1085, - 1097, 1102, 1108, 1109, 1110, 1111, 1112, 1113, 1119, 1120, - 1121, 1122, 1128, 1129, 1130, 1131, 1132, 1138, 1139, 1142, - 1145, 1146, 1147, 1148, 1149, 1152, 1153, 1166, 1170, 1175, - 1180, 1185, 1189, 1190, 1193, 1199, 1206, 1212, 1219, 1225, - 1236, 1247, 1276, 1316, 1341, 1359, 1368, 1371, 1379, 1383, - 1387, 1394, 1400, 1405, 1417, 1420, 1429, 1430, 1436, 1437, - 1443, 1447, 1453, 1454, 1460, 1464, 1470, 1493, 1498, 1504, - 1510, 1517, 1526, 1535, 1550, 1556, 1561, 1565, 1572, 1585, - 1586, 1592, 1598, 1601, 1605, 1611, 1614, 1623, 1626, 1627, - 1631, 1632, 1638, 1639, 1640, 1641, 1642, 1644, 1643, 1658, - 1663, 1667, 1671, 1675, 1679, 1684, 1703, 1709, 1717, 1721, - 1727, 1731, 1737, 1741, 1747, 1751, 1760, 1764, 1768, 1772, - 1778, 1781, 1789, 1790, 1792, 1793, 1796, 1799, 1802, 1805, - 1808, 1811, 1814, 1817, 1820, 1823, 1826, 1829, 1832, 1835, - 1841, 1845, 1849, 1853, 1857, 1861, 1881, 1888, 1899, 1900, - 1901, 1904, 1905, 1908, 1912, 1922, 1926, 1930, 1934, 1938, - 1942, 1946, 1952, 1958, 1966, 1974, 1980, 1987, 2003, 2021, - 2025, 2031, 2034, 2037, 2041, 2051, 2055, 2070, 2078, 2079, - 2091, 2092, 2095, 2099, 2105, 2109, 2115, 2119 + 972, 978, 994, 1001, 1002, 1009, 1010, 1028, 1029, 1032, + 1035, 1039, 1050, 1059, 1065, 1068, 1071, 1078, 1079, 1085, + 1100, 1108, 1120, 1125, 1131, 1132, 1133, 1134, 1135, 1136, + 1142, 1143, 1144, 1145, 1151, 1152, 1153, 1154, 1155, 1161, + 1162, 1165, 1168, 1169, 1170, 1171, 1172, 1175, 1176, 1189, + 1193, 1198, 1203, 1208, 1212, 1213, 1216, 1222, 1229, 1235, + 1242, 1248, 1259, 1270, 1299, 1339, 1364, 1382, 1391, 1394, + 1402, 1406, 1410, 1417, 1423, 1428, 1440, 1443, 1452, 1453, + 1459, 1460, 1466, 1470, 1476, 1477, 1483, 1487, 1493, 1516, + 1521, 1527, 1533, 1540, 1549, 1558, 1573, 1579, 1584, 1588, + 1595, 1608, 1609, 1615, 1621, 1624, 1628, 1634, 1637, 1646, + 1649, 1650, 1654, 1655, 1661, 1662, 1663, 1664, 1665, 1667, + 1666, 1681, 1686, 1690, 1694, 1698, 1702, 1707, 1726, 1732, + 1740, 1744, 1750, 1754, 1760, 1764, 1770, 1774, 1783, 1787, + 1791, 1795, 1801, 1804, 1812, 1813, 1815, 1816, 1819, 1822, + 1825, 1828, 1831, 1834, 1837, 1840, 1843, 1846, 1849, 1852, + 1855, 1858, 1864, 1868, 1872, 1876, 1880, 1884, 1904, 1911, + 1922, 1923, 1924, 1927, 1928, 1931, 1935, 1945, 1949, 1953, + 1957, 1961, 1965, 1969, 1975, 1981, 1989, 1997, 2003, 2010, + 2026, 2044, 2048, 2054, 2057, 2060, 2064, 2074, 2078, 2093, + 2101, 2102, 2114, 2115, 2118, 2122, 2128, 2132, 2138, 2142 }; #endif -#if YYDEBUG || YYERROR_VERBOSE || 1 +#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ const char *yytname[] = @@ -753,27 +735,28 @@ const char *yytname[] = "$@6", "if_header", "if_stmt", "$@7", "$@8", "$@9", "elseif", "$@10", "elseif_list", "else", "switch_stmt", "$@11", "$@12", "select_stmt", "$@13", "expr", "uexpr", "pseudocall", "pexpr_no_paren", "start_complit", - "keyval", "complitexpr", "pexpr", "expr_or_type", "name_or_type", - "lbrace", "new_name", "dcl_name", "onew_name", "sym", "hidden_importsym", - "name", "labelname", "dotdotdot", "ntype", "non_expr_type", - "non_recvchantype", "convtype", "comptype", "fnret_type", "dotname", - "othertype", "ptrtype", "recvchantype", "structtype", "interfacetype", - "xfndcl", "fndcl", "hidden_fndcl", "fntype", "fnbody", "fnres", - "fnlitdcl", "fnliteral", "xdcl_list", "vardcl_list", "constdcl_list", - "typedcl_list", "structdcl_list", "interfacedcl_list", "structdcl", - "packname", "embed", "interfacedcl", "indcl", "arg_type", - "arg_type_list", "oarg_type_list_ocomma", "stmt", "non_dcl_stmt", "$@14", - "stmt_list", "new_name_list", "dcl_name_list", "expr_list", - "expr_or_type_list", "keyval_list", "braced_keyval_list", "osemi", - "ocomma", "oexpr", "oexpr_list", "osimple_stmt", "ohidden_funarg_list", - "ohidden_structdcl_list", "ohidden_interfacedcl_list", "oliteral", - "hidden_import", "hidden_pkg_importsym", "hidden_pkgtype", "hidden_type", + "keyval", "bare_complitexpr", "complitexpr", "pexpr", "expr_or_type", + "name_or_type", "lbrace", "new_name", "dcl_name", "onew_name", "sym", + "hidden_importsym", "name", "labelname", "dotdotdot", "ntype", + "non_expr_type", "non_recvchantype", "convtype", "comptype", + "fnret_type", "dotname", "othertype", "ptrtype", "recvchantype", + "structtype", "interfacetype", "xfndcl", "fndcl", "hidden_fndcl", + "fntype", "fnbody", "fnres", "fnlitdcl", "fnliteral", "xdcl_list", + "vardcl_list", "constdcl_list", "typedcl_list", "structdcl_list", + "interfacedcl_list", "structdcl", "packname", "embed", "interfacedcl", + "indcl", "arg_type", "arg_type_list", "oarg_type_list_ocomma", "stmt", + "non_dcl_stmt", "$@14", "stmt_list", "new_name_list", "dcl_name_list", + "expr_list", "expr_or_type_list", "keyval_list", "braced_keyval_list", + "osemi", "ocomma", "oexpr", "oexpr_list", "osimple_stmt", + "ohidden_funarg_list", "ohidden_structdcl_list", + "ohidden_interfacedcl_list", "oliteral", "hidden_import", + "hidden_pkg_importsym", "hidden_pkgtype", "hidden_type", "hidden_type_non_recv_chan", "hidden_type_misc", "hidden_type_recv_chan", "hidden_type_func", "hidden_funarg", "hidden_structdcl", "hidden_interfacedcl", "ohidden_funres", "hidden_funres", "hidden_literal", "hidden_constant", "hidden_import_list", "hidden_funarg_list", "hidden_structdcl_list", - "hidden_interfacedcl_list", YY_NULL + "hidden_interfacedcl_list", 0 }; #endif @@ -810,27 +793,27 @@ static const yytype_uint8 yyr1[] = 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 130, - 131, 132, 132, 133, 133, 134, 134, 135, 136, 136, - 137, 138, 139, 139, 140, 140, 140, 141, 142, 143, - 144, 144, 145, 145, 145, 145, 145, 145, 146, 146, - 146, 146, 147, 147, 147, 147, 147, 148, 148, 149, - 150, 150, 150, 150, 150, 151, 151, 152, 152, 152, - 152, 152, 152, 152, 153, 154, 155, 155, 156, 156, - 157, 158, 158, 159, 159, 160, 161, 161, 162, 162, - 162, 163, 164, 164, 165, 165, 166, 166, 167, 167, - 168, 168, 169, 169, 170, 170, 171, 171, 171, 171, - 171, 171, 172, 172, 173, 174, 174, 174, 175, 176, - 176, 176, 176, 177, 177, 178, 178, 179, 179, 179, - 179, 179, 180, 180, 180, 180, 180, 181, 180, 180, - 180, 180, 180, 180, 180, 180, 182, 182, 183, 183, - 184, 184, 185, 185, 186, 186, 187, 187, 187, 187, + 131, 132, 132, 133, 133, 134, 134, 135, 135, 136, + 137, 137, 138, 139, 140, 140, 141, 141, 141, 142, + 143, 144, 145, 145, 146, 146, 146, 146, 146, 146, + 147, 147, 147, 147, 148, 148, 148, 148, 148, 149, + 149, 150, 151, 151, 151, 151, 151, 152, 152, 153, + 153, 153, 153, 153, 153, 153, 154, 155, 156, 156, + 157, 157, 158, 159, 159, 160, 160, 161, 162, 162, + 163, 163, 163, 164, 165, 165, 166, 166, 167, 167, + 168, 168, 169, 169, 170, 170, 171, 171, 172, 172, + 172, 172, 172, 172, 173, 173, 174, 175, 175, 175, + 176, 177, 177, 177, 177, 178, 178, 179, 179, 180, + 180, 180, 180, 180, 181, 181, 181, 181, 181, 182, + 181, 181, 181, 181, 181, 181, 181, 181, 183, 183, + 184, 184, 185, 185, 186, 186, 187, 187, 188, 188, 188, 188, 189, 189, 190, 190, 191, 191, 192, 192, 193, 193, 194, 194, 195, 195, 196, 196, 197, 197, - 198, 198, 198, 198, 198, 198, 199, 200, 201, 201, - 201, 202, 202, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 204, 205, 206, 206, 207, 208, - 208, 209, 209, 210, 210, 211, 211, 211, 212, 212, - 213, 213, 214, 214, 215, 215, 216, 216 + 198, 198, 199, 199, 199, 199, 199, 199, 200, 201, + 202, 202, 202, 203, 203, 204, 204, 204, 204, 204, + 204, 204, 204, 204, 204, 204, 205, 206, 207, 207, + 208, 209, 209, 210, 210, 211, 211, 212, 212, 212, + 213, 213, 214, 214, 215, 215, 216, 216, 217, 217 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -850,27 +833,27 @@ static const yytype_uint8 yyr2[] = 3, 3, 3, 3, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 5, 6, 1, 1, 3, 5, 5, 4, 6, 1, 4, 5, 5, 7, 1, 0, - 3, 1, 4, 1, 3, 1, 1, 1, 1, 1, - 1, 1, 0, 1, 1, 1, 1, 4, 1, 1, - 1, 2, 1, 1, 1, 1, 1, 3, 1, 1, - 1, 2, 1, 1, 1, 1, 3, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 3, 4, 4, 2, - 3, 5, 1, 1, 2, 3, 5, 3, 5, 3, - 3, 5, 8, 5, 8, 5, 0, 3, 0, 1, - 3, 1, 4, 2, 0, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 3, 2, 4, 3, - 5, 5, 1, 3, 1, 2, 1, 3, 4, 1, - 2, 2, 1, 1, 3, 0, 2, 0, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 0, 4, 1, - 2, 2, 2, 2, 2, 2, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 1, 3, 3, - 0, 2, 0, 1, 0, 1, 0, 1, 0, 1, + 3, 1, 4, 1, 4, 1, 3, 1, 1, 1, + 1, 1, 1, 1, 0, 1, 1, 1, 1, 4, + 1, 1, 1, 2, 1, 1, 1, 1, 1, 3, + 1, 1, 1, 2, 1, 1, 1, 1, 3, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 4, + 4, 2, 3, 5, 1, 1, 2, 3, 5, 3, + 5, 3, 3, 5, 8, 5, 8, 5, 0, 3, + 0, 1, 3, 1, 4, 2, 0, 3, 1, 3, + 1, 3, 1, 3, 1, 3, 1, 3, 3, 2, + 4, 3, 5, 5, 1, 3, 1, 2, 1, 3, + 4, 1, 2, 2, 1, 1, 3, 0, 2, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 4, 1, 2, 2, 2, 2, 2, 2, 1, 3, + 1, 3, 1, 3, 1, 3, 1, 3, 1, 1, + 3, 3, 0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, - 4, 4, 5, 6, 4, 4, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 3, 4, 5, 4, 4, - 2, 2, 4, 3, 3, 5, 3, 4, 3, 5, - 1, 0, 1, 3, 1, 1, 2, 1, 1, 5, - 0, 2, 1, 3, 1, 3, 1, 3 + 0, 1, 4, 4, 5, 6, 4, 4, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 3, 4, 5, + 4, 4, 2, 2, 4, 3, 3, 5, 3, 4, + 3, 5, 1, 0, 1, 3, 1, 1, 2, 1, + 1, 5, 0, 2, 1, 3, 1, 3, 1, 3 }; /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. @@ -878,72 +861,73 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 5, 0, 3, 0, 1, 0, 7, 0, 22, 154, - 156, 0, 0, 155, 214, 20, 6, 340, 0, 4, + 5, 0, 3, 0, 1, 0, 7, 0, 22, 156, + 158, 0, 0, 157, 216, 20, 6, 342, 0, 4, 0, 0, 0, 21, 0, 0, 0, 16, 0, 0, - 9, 22, 0, 8, 28, 126, 152, 0, 39, 152, - 0, 259, 74, 0, 0, 0, 78, 0, 0, 288, + 9, 22, 0, 8, 28, 126, 154, 0, 39, 154, + 0, 261, 74, 0, 0, 0, 78, 0, 0, 290, 91, 0, 88, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 286, 0, 25, 0, 252, 253, - 256, 254, 255, 50, 93, 133, 143, 114, 159, 158, - 127, 0, 0, 0, 179, 192, 193, 26, 211, 0, + 0, 0, 0, 0, 288, 0, 25, 0, 254, 255, + 258, 256, 257, 50, 93, 133, 145, 114, 161, 160, + 127, 0, 0, 0, 181, 194, 195, 26, 213, 0, 138, 27, 0, 19, 0, 0, 0, 0, 0, 0, - 341, 157, 11, 14, 282, 18, 22, 13, 17, 153, - 260, 150, 0, 0, 0, 0, 158, 185, 189, 175, - 173, 174, 172, 261, 133, 0, 290, 245, 0, 206, - 133, 264, 290, 148, 149, 0, 0, 272, 289, 265, - 0, 0, 290, 0, 0, 36, 48, 0, 29, 270, - 151, 0, 122, 117, 118, 121, 115, 116, 0, 0, - 145, 0, 146, 170, 168, 169, 119, 120, 0, 287, - 0, 215, 0, 32, 0, 0, 0, 0, 0, 55, + 343, 159, 11, 14, 284, 18, 22, 13, 17, 155, + 262, 152, 0, 0, 0, 0, 160, 187, 191, 177, + 175, 176, 174, 263, 133, 0, 292, 247, 0, 208, + 133, 266, 292, 150, 151, 0, 0, 274, 291, 267, + 0, 0, 292, 0, 0, 36, 48, 0, 29, 272, + 153, 0, 122, 117, 118, 121, 115, 116, 0, 0, + 147, 0, 148, 172, 170, 171, 119, 120, 0, 289, + 0, 217, 0, 32, 0, 0, 0, 0, 0, 55, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 0, - 0, 286, 257, 0, 139, 213, 0, 0, 0, 0, - 306, 0, 0, 206, 0, 0, 307, 0, 0, 23, - 283, 0, 12, 245, 0, 0, 190, 166, 164, 165, - 162, 163, 194, 0, 0, 291, 72, 0, 75, 0, - 71, 160, 239, 158, 242, 147, 243, 284, 0, 245, - 0, 200, 79, 76, 154, 0, 199, 0, 282, 236, - 224, 0, 64, 0, 0, 197, 268, 282, 222, 234, - 298, 0, 89, 38, 220, 282, 49, 31, 216, 282, - 0, 0, 40, 0, 171, 144, 0, 0, 35, 282, + 0, 288, 259, 0, 139, 215, 0, 0, 0, 0, + 308, 0, 0, 208, 0, 0, 309, 0, 0, 23, + 285, 0, 12, 247, 0, 0, 192, 168, 166, 167, + 164, 165, 196, 0, 0, 293, 72, 0, 75, 0, + 71, 162, 241, 160, 244, 149, 245, 286, 0, 247, + 0, 202, 79, 76, 156, 0, 201, 0, 284, 238, + 226, 0, 64, 0, 0, 199, 270, 284, 224, 236, + 300, 0, 89, 38, 222, 284, 49, 31, 218, 284, + 0, 0, 40, 0, 173, 146, 0, 0, 35, 284, 0, 0, 51, 95, 110, 113, 96, 100, 101, 99, 111, 98, 97, 94, 112, 102, 103, 104, 105, 106, - 107, 108, 109, 280, 123, 274, 284, 0, 128, 287, - 0, 0, 0, 280, 251, 60, 249, 248, 266, 250, - 0, 53, 52, 273, 0, 0, 0, 0, 314, 0, - 0, 0, 0, 0, 313, 0, 308, 309, 310, 0, - 342, 0, 0, 292, 0, 0, 0, 15, 10, 0, - 0, 0, 176, 186, 66, 73, 0, 0, 290, 161, - 240, 241, 285, 246, 208, 0, 0, 0, 290, 0, - 232, 0, 245, 235, 283, 0, 0, 0, 0, 298, - 0, 0, 283, 0, 299, 227, 0, 298, 0, 283, - 0, 283, 0, 42, 271, 0, 0, 0, 195, 166, - 164, 165, 163, 139, 188, 187, 283, 0, 44, 0, - 139, 141, 276, 277, 284, 0, 284, 285, 0, 0, - 0, 131, 286, 258, 134, 0, 0, 0, 212, 0, - 0, 321, 311, 312, 292, 296, 0, 294, 0, 320, - 335, 0, 0, 337, 338, 0, 0, 0, 0, 0, - 298, 0, 0, 305, 0, 293, 300, 304, 301, 208, - 167, 0, 0, 0, 0, 244, 245, 158, 209, 184, - 182, 183, 180, 181, 205, 208, 207, 80, 77, 233, - 237, 0, 225, 198, 191, 0, 0, 92, 62, 65, - 0, 229, 0, 298, 223, 196, 269, 226, 64, 221, - 37, 217, 30, 41, 0, 280, 45, 218, 282, 47, - 33, 43, 280, 0, 285, 281, 136, 285, 0, 275, - 124, 130, 129, 0, 135, 0, 267, 323, 0, 0, - 314, 0, 313, 0, 330, 346, 297, 0, 0, 0, - 344, 295, 324, 336, 0, 302, 0, 315, 0, 298, - 326, 0, 343, 331, 0, 69, 68, 290, 0, 245, - 201, 84, 208, 0, 59, 0, 298, 298, 228, 0, - 167, 0, 283, 0, 46, 0, 141, 140, 278, 279, - 125, 132, 61, 322, 331, 292, 319, 0, 0, 298, - 318, 0, 0, 316, 303, 327, 292, 292, 334, 203, - 332, 67, 70, 210, 0, 86, 238, 0, 0, 56, - 0, 63, 231, 230, 90, 137, 219, 34, 142, 325, - 0, 347, 317, 328, 345, 0, 0, 0, 208, 0, - 85, 81, 0, 0, 331, 339, 331, 333, 202, 82, - 87, 58, 57, 329, 204, 290, 0, 83 + 107, 108, 109, 282, 123, 276, 286, 0, 128, 289, + 0, 0, 0, 282, 253, 60, 251, 250, 268, 252, + 0, 53, 52, 275, 0, 0, 0, 0, 316, 0, + 0, 0, 0, 0, 315, 0, 310, 311, 312, 0, + 344, 0, 0, 294, 0, 0, 0, 15, 10, 0, + 0, 0, 178, 188, 66, 73, 0, 0, 292, 163, + 242, 243, 287, 248, 210, 0, 0, 0, 292, 0, + 234, 0, 247, 237, 285, 0, 0, 0, 0, 300, + 0, 0, 285, 0, 301, 229, 0, 300, 0, 285, + 0, 285, 0, 42, 273, 0, 0, 0, 197, 168, + 166, 167, 165, 139, 190, 189, 285, 0, 44, 0, + 139, 141, 278, 279, 286, 0, 286, 287, 0, 0, + 0, 131, 288, 260, 134, 0, 0, 0, 214, 0, + 0, 323, 313, 314, 294, 298, 0, 296, 0, 322, + 337, 0, 0, 339, 340, 0, 0, 0, 0, 0, + 300, 0, 0, 307, 0, 295, 302, 306, 303, 210, + 169, 0, 0, 0, 0, 246, 247, 160, 211, 186, + 184, 185, 182, 183, 207, 210, 209, 80, 77, 235, + 239, 0, 227, 200, 193, 0, 0, 92, 62, 65, + 0, 231, 0, 300, 225, 198, 271, 228, 64, 223, + 37, 219, 30, 41, 0, 282, 45, 220, 284, 47, + 33, 43, 282, 0, 287, 283, 136, 287, 0, 277, + 124, 130, 129, 0, 135, 0, 269, 325, 0, 0, + 316, 0, 315, 0, 332, 348, 299, 0, 0, 0, + 346, 297, 326, 338, 0, 304, 0, 317, 0, 300, + 328, 0, 345, 333, 0, 69, 68, 292, 0, 247, + 203, 84, 210, 0, 59, 0, 300, 300, 230, 0, + 169, 0, 285, 0, 46, 0, 139, 143, 140, 280, + 281, 125, 132, 61, 324, 333, 294, 321, 0, 0, + 300, 320, 0, 0, 318, 305, 329, 294, 294, 336, + 205, 334, 67, 70, 212, 0, 86, 240, 0, 0, + 56, 0, 63, 233, 232, 90, 137, 221, 34, 142, + 282, 327, 0, 349, 319, 330, 347, 0, 0, 0, + 210, 0, 85, 81, 0, 0, 0, 333, 341, 333, + 335, 204, 82, 87, 58, 57, 144, 331, 206, 292, + 0, 83 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -953,538 +937,559 @@ static const yytype_int16 yydefgoto[] = 8, 24, 16, 17, 65, 326, 67, 148, 516, 517, 144, 145, 68, 498, 327, 436, 499, 575, 387, 365, 471, 236, 237, 238, 69, 126, 252, 70, 132, 377, - 571, 640, 655, 615, 641, 71, 142, 398, 72, 140, - 73, 74, 75, 76, 313, 422, 423, 77, 315, 242, - 135, 78, 149, 110, 116, 13, 80, 81, 244, 245, - 162, 118, 82, 83, 478, 227, 84, 229, 230, 85, - 86, 87, 129, 213, 88, 251, 484, 89, 90, 22, - 279, 518, 275, 267, 258, 268, 269, 270, 260, 383, - 246, 247, 248, 328, 329, 321, 330, 271, 151, 92, - 316, 424, 425, 221, 373, 170, 139, 253, 464, 549, - 543, 395, 100, 211, 217, 608, 441, 346, 347, 348, - 350, 550, 545, 609, 610, 454, 455, 25, 465, 551, - 546 + 571, 642, 659, 616, 643, 71, 142, 398, 72, 140, + 73, 74, 75, 76, 313, 422, 423, 588, 77, 315, + 242, 135, 78, 149, 110, 116, 13, 80, 81, 244, + 245, 162, 118, 82, 83, 478, 227, 84, 229, 230, + 85, 86, 87, 129, 213, 88, 251, 484, 89, 90, + 22, 279, 518, 275, 267, 258, 268, 269, 270, 260, + 383, 246, 247, 248, 328, 329, 321, 330, 271, 151, + 92, 316, 424, 425, 221, 373, 170, 139, 253, 464, + 549, 543, 395, 100, 211, 217, 609, 441, 346, 347, + 348, 350, 550, 545, 610, 611, 454, 455, 25, 465, + 551, 546 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -459 +#define YYPACT_NINF -467 static const yytype_int16 yypact[] = { - -459, 55, 46, 53, -459, 181, -459, 44, -459, -459, - -459, 91, 20, -459, 75, 122, -459, -459, 97, -459, - 472, 124, 1062, -459, 129, 276, 153, -459, 228, 190, - -459, 53, 200, -459, -459, -459, 181, 1638, -459, 181, - 66, -459, -459, 197, 66, 181, -459, 30, 142, 1475, - -459, 30, -459, 444, 467, 1475, 1475, 1475, 1475, 1475, - 1475, 1518, 1475, 1475, 638, 163, -459, 485, -459, -459, - -459, -459, -459, 830, -459, -459, 172, 240, -459, 187, - -459, 192, 201, 30, 213, -459, -459, -459, 218, 65, - -459, -459, 40, -459, 204, 5, 271, 204, 204, 241, - -459, -459, -459, -459, 238, -459, -459, -459, -459, -459, - -459, -459, 251, 1663, 1663, 1663, -459, 254, -459, -459, - -459, -459, -459, -459, 79, 240, 1475, 1630, 261, 246, - 236, -459, 1475, -459, -459, 413, 1663, 804, 248, -459, - 301, 662, 1475, 508, 1663, -459, -459, 551, -459, -459, - -459, 477, -459, -459, -459, -459, -459, -459, 1561, 1518, - 804, 278, -459, 17, -459, 42, -459, -459, 270, 804, - 279, -459, 561, -459, 1604, 1475, 1475, 1475, 1475, -459, - 1475, 1475, 1475, -459, 1475, 1475, 1475, 1475, 1475, 1475, - 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, -459, 946, - 564, 1475, -459, 1475, -459, -459, 1212, 1475, 1475, 1475, - -459, 335, 181, 246, 295, 367, -459, 1832, 1832, -459, - 29, 322, -459, 1630, 376, 1663, -459, -459, -459, -459, - -459, -459, -459, 332, 181, -459, -459, 360, -459, 106, - 339, 1663, -459, 1630, -459, -459, -459, 338, 354, 1630, - 1212, -459, -459, 356, 170, 395, -459, 362, 361, -459, - -459, 358, -459, 22, 125, -459, -459, 364, -459, -459, - 424, 884, -459, -459, -459, 366, -459, -459, -459, 371, - 1475, 181, 370, 1697, -459, 374, 1663, 1663, -459, 400, - 1475, 373, 804, 1993, -459, 1946, 690, 690, 690, 690, - -459, 690, 690, 1970, -459, 751, 751, 751, 751, -459, - -459, -459, -459, 1267, -459, -459, 52, 1322, -459, 1843, - 397, 1138, 1922, 1267, -459, -459, -459, -459, -459, -459, - -8, 248, 248, 804, 1755, 405, 416, 417, -459, 422, - 487, 1832, 419, 54, -459, 433, -459, -459, -459, 648, - -459, 10, 440, 181, 442, 443, 446, -459, -459, 450, - 1663, 451, -459, -459, -459, -459, 1377, 1432, 1475, -459, - -459, -459, 1630, -459, 1722, 461, 128, 360, 1475, 181, - 459, 464, 1630, -459, 580, 457, 1663, 60, 395, 424, - 395, 469, 259, 475, -459, -459, 181, 424, 492, 181, - 489, 181, 493, 248, -459, 1475, 1730, 1663, -459, 309, - 314, 326, 330, -459, -459, -459, 181, 495, 248, 1475, - -459, 991, -459, -459, 462, 479, 481, 1518, 500, 503, - 514, -459, 1475, -459, -459, 510, 1212, 1138, -459, 1832, - 540, -459, -459, -459, 181, 1789, 1832, 181, 1832, -459, - -459, 576, 272, -459, -459, 518, 511, 1832, 419, 1832, - 424, 181, 181, -459, 524, 516, -459, -459, -459, 1722, - -459, 1212, 1475, 1475, 532, -459, 1630, 527, -459, -459, - -459, -459, -459, -459, -459, 1722, -459, -459, -459, -459, - -459, 538, -459, -459, -459, 1518, 537, -459, -459, -459, - 546, -459, 548, 424, -459, -459, -459, -459, -459, -459, - -459, -459, -459, 248, 553, 1267, -459, -459, 552, 1604, - -459, 248, 1267, 1267, 1267, -459, -459, -459, 556, -459, - -459, -459, -459, 547, -459, 146, -459, -459, 558, 562, - 567, 569, 572, 568, -459, -459, 578, 571, 1832, 579, - -459, 582, -459, -459, 599, -459, 1832, -459, 588, 424, - -459, 592, -459, 1799, 168, 804, 804, 1475, 597, 1630, - -459, -459, 1722, 68, -459, 1138, 424, 424, -459, 86, - 340, 584, 181, 604, 373, 598, 804, -459, -459, -459, - -459, -459, -459, -459, 1799, 181, -459, 1789, 1832, 424, - -459, 181, 272, -459, -459, -459, 181, 181, -459, -459, - -459, -459, -459, -459, 608, 655, -459, 1475, 1475, -459, - 1518, 611, -459, -459, -459, -459, -459, -459, -459, -459, - 615, -459, -459, -459, -459, 618, 619, 620, 1722, 41, - -459, -459, 1874, 1898, 1799, -459, 1799, -459, -459, -459, - -459, -459, -459, -459, -459, 1475, 360, -459 + -467, 53, 59, 64, -467, 34, -467, 120, -467, -467, + -467, 144, 94, -467, 177, 181, -467, -467, 145, -467, + 54, 160, 1026, -467, 163, 397, 215, -467, 113, 237, + -467, 64, 239, -467, -467, -467, 34, 1711, -467, 34, + 1567, -467, -467, 336, 1567, 34, -467, 161, 180, 1464, + -467, 161, -467, 389, 409, 1464, 1464, 1464, 1464, 1464, + 1464, 1507, 1464, 1464, 840, 191, -467, 461, -467, -467, + -467, -467, -467, 672, -467, -467, 207, 227, -467, 213, + -467, 228, 199, 161, 218, -467, -467, -467, 236, 91, + -467, -467, 76, -467, 223, -13, 276, 223, 223, 247, + -467, -467, -467, -467, 255, -467, -467, -467, -467, -467, + -467, -467, 263, 1722, 1722, 1722, -467, 262, -467, -467, + -467, -467, -467, -467, 261, 227, 1464, 1679, 265, 259, + 335, -467, 1464, -467, -467, 399, 1722, 2040, 269, -467, + 293, 23, 1464, 211, 1722, -467, -467, 291, -467, -467, + -467, 1593, -467, -467, -467, -467, -467, -467, 1550, 1507, + 2040, 280, -467, 31, -467, 171, -467, -467, 300, 2040, + 304, -467, 347, -467, 1620, 1464, 1464, 1464, 1464, -467, + 1464, 1464, 1464, -467, 1464, 1464, 1464, 1464, 1464, 1464, + 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, -467, 726, + 484, 1464, -467, 1464, -467, -467, 1187, 1464, 1464, 1464, + -467, 310, 34, 259, 295, 377, -467, 1267, 1267, -467, + 115, 322, -467, 1679, 375, 1722, -467, -467, -467, -467, + -467, -467, -467, 326, 34, -467, -467, 353, -467, 78, + 327, 1722, -467, 1679, -467, -467, -467, 323, 339, 1679, + 1187, -467, -467, 343, 122, 388, -467, 342, 354, -467, + -467, 358, -467, 21, 32, -467, -467, 379, -467, -467, + 412, 1652, -467, -467, -467, 387, -467, -467, -467, 413, + 1464, 34, 411, 1754, -467, 383, 1722, 1722, -467, 416, + 1464, 414, 2040, 881, -467, 2064, 1178, 1178, 1178, 1178, + -467, 1178, 1178, 2088, -467, 598, 598, 598, 598, -467, + -467, -467, -467, 936, -467, -467, 48, 1256, -467, 1913, + 408, 1113, 2015, 936, -467, -467, -467, -467, -467, -467, + -8, 269, 269, 2040, 1833, 425, 419, 421, -467, 424, + 485, 1267, 90, 49, -467, 430, -467, -467, -467, 1841, + -467, 27, 435, 34, 439, 440, 442, -467, -467, 445, + 1722, 446, -467, -467, -467, -467, 1311, 1366, 1464, -467, + -467, -467, 1679, -467, 1780, 447, 148, 353, 1464, 34, + 459, 449, 1679, -467, 501, 455, 1722, 92, 388, 412, + 388, 450, 240, 458, -467, -467, 34, 412, 492, 34, + 468, 34, 472, 269, -467, 1464, 1807, 1722, -467, 165, + 167, 253, 392, -467, -467, -467, 34, 480, 269, 1464, + -467, 1943, -467, -467, 470, 478, 473, 1507, 489, 490, + 491, -467, 1464, -467, -467, 487, 1187, 1113, -467, 1267, + 516, -467, -467, -467, 34, 1866, 1267, 34, 1267, -467, + -467, 550, 196, -467, -467, 494, 493, 1267, 90, 1267, + 412, 34, 34, -467, 503, 486, -467, -467, -467, 1780, + -467, 1187, 1464, 1464, 507, -467, 1679, 512, -467, -467, + -467, -467, -467, -467, -467, 1780, -467, -467, -467, -467, + -467, 513, -467, -467, -467, 1507, 515, -467, -467, -467, + 518, -467, 519, 412, -467, -467, -467, -467, -467, -467, + -467, -467, -467, 269, 522, 936, -467, -467, 521, 1620, + -467, 269, 936, 1409, 936, -467, -467, -467, 524, -467, + -467, -467, -467, 514, -467, 192, -467, -467, 525, 528, + 530, 533, 535, 527, -467, -467, 537, 532, 1267, 538, + -467, 543, -467, -467, 562, -467, 1267, -467, 551, 412, + -467, 553, -467, 1874, 219, 2040, 2040, 1464, 554, 1679, + -467, -467, 1780, 45, -467, 1113, 412, 412, -467, 93, + 429, 548, 34, 557, 414, 552, -467, 2040, -467, -467, + -467, -467, -467, -467, -467, 1874, 34, -467, 1866, 1267, + 412, -467, 34, 196, -467, -467, -467, 34, 34, -467, + -467, -467, -467, -467, -467, 558, 605, -467, 1464, 1464, + -467, 1507, 560, -467, -467, -467, -467, -467, -467, -467, + 936, -467, 563, -467, -467, -467, -467, 564, 565, 567, + 1780, 68, -467, -467, 1967, 1991, 561, 1874, -467, 1874, + -467, -467, -467, -467, -467, -467, -467, -467, -467, 1464, + 353, -467 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -459, -459, -459, -459, -459, -459, -459, -4, -459, -459, - 651, -459, 4, -459, -459, 661, -459, -134, -41, 103, - -459, -135, -121, -459, 50, -459, -459, -459, 184, -374, - -459, -459, -459, -459, -459, -459, -140, -459, -459, -459, - -459, -459, -459, -459, -459, -459, -459, -459, -459, -459, - 581, 61, 115, -459, -186, 169, -411, 250, -55, 452, - 264, -6, 418, 659, -5, 382, 346, -459, 460, 48, - 541, -459, -459, -459, -459, -33, 38, -18, -11, -459, - -459, -459, -459, -459, 43, 497, -458, -459, -459, -459, - -459, -459, -459, -459, -459, 310, -110, -205, 321, -459, - 341, -459, -207, -293, 692, -459, -236, -459, -66, -39, - 222, -459, -311, -238, -260, -192, -459, -119, -397, -459, - -459, -353, -459, 307, -459, 355, -459, 391, 286, 393, - 267, 132, 140, -418, -459, -430, 289, -459, 536, -459, - -459 + -467, -467, -467, -467, -467, -467, -467, -6, -467, -467, + 599, -467, 13, -467, -467, 613, -467, -123, -24, 58, + -467, -127, -121, -467, 2, -467, -467, -467, 128, -369, + -467, -467, -467, -467, -467, -467, -140, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + 632, 12, 33, -467, -201, 121, 123, -467, 183, -54, + 401, 114, -26, 369, 616, -5, 420, 385, -467, 417, + -50, 498, -467, -467, -467, -467, -33, 18, -31, -25, + -467, -467, -467, -467, -467, 194, 448, -460, -467, -467, + -467, -467, -467, -467, -467, -467, 267, -109, -231, 278, + -467, 292, -467, -214, -282, 643, -467, -223, -467, -66, + 282, 172, -467, -311, -238, -274, -183, -467, -112, -414, + -467, -467, -294, -467, 264, -467, 85, -467, 332, 229, + 340, 216, 71, 77, -466, -467, -424, 222, -467, 474, + -467, -467 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -273 +#define YYTABLE_NINF -275 static const yytype_int16 yytable[] = { - 12, 174, 272, 487, 119, 235, 161, 240, 274, 320, - 138, 235, 435, 278, 376, 32, 359, 79, 323, 121, - 385, 235, 554, 32, 103, 259, 173, 570, 433, 393, - 109, 111, 27, 109, 111, 107, 501, 400, 128, 131, - 111, 402, 375, -211, 507, 207, 380, 539, 146, 150, - 164, 417, -179, 9, 437, 4, 428, 456, 389, 391, - 438, 649, 150, 426, 212, 133, 205, 495, 15, 35, - 461, 5, 496, 617, 37, 120, -178, -211, 7, 11, - 122, 388, 19, 112, -179, 462, -263, 239, 47, 48, - 9, -263, 29, 495, 18, 51, 20, 134, 496, 163, - 133, -177, 10, 11, 165, 208, 174, 560, 325, -211, - 222, 366, 587, 589, 616, 209, 152, 153, 154, 155, - 156, 157, 243, 166, 167, 61, 457, 427, 497, 257, - 111, 289, 134, 618, 619, 266, 111, 64, 146, 10, - 11, -263, 150, 620, 536, 381, 23, -263, 164, 380, - 578, 228, 228, 228, 624, 124, 231, 231, 231, 130, - 26, 226, 232, 233, 525, 228, 528, 150, 331, 332, - 231, 367, 635, -232, 228, 491, 629, 101, 390, 231, - 648, 209, 228, 500, 261, 502, 33, 231, 164, 228, - 437, 93, 276, 105, 231, 318, 486, 163, 630, 282, - 535, 79, 165, 108, 581, 9, 605, 349, 437, 636, - 637, 585, 228, 136, 592, 32, 357, 231, 243, 152, - 156, 9, 291, 622, 623, 171, 653, 515, 654, 363, - 437, 27, -232, 379, 522, 564, 611, 163, -232, 198, - 533, 403, 165, -262, 243, 79, 633, 235, -262, 474, - 409, 418, 9, -150, 10, 11, 127, 235, 202, 488, - 203, 228, 430, 228, 509, 411, 231, 511, 231, 568, - 10, 11, -178, 361, 259, 450, 150, -177, 11, 228, - 583, 228, 657, 254, 231, 94, 231, 228, 102, 369, - 125, 29, 231, 95, 125, 215, 9, 96, -262, 199, - 220, 10, 11, 200, -262, 219, 164, 97, 98, 228, - 223, 201, 263, 250, 231, 141, 79, 234, 264, 397, - 249, 410, 451, 209, 228, 228, 412, 331, 332, 231, - 231, 408, 10, 11, 414, 415, 262, 453, 285, 621, - 99, 479, 286, 334, -175, 10, 11, 204, 349, -173, - 519, 287, 335, 206, 353, 163, 481, 336, 337, 338, - 165, -174, 614, 482, 339, -172, 513, 243, -175, 477, - 354, 340, 529, -173, 489, -176, -175, 243, 257, 111, - 521, -173, 358, 117, 360, -174, 266, 111, 341, -172, - 506, 111, 362, -174, 146, 364, 150, -172, 228, -176, - 342, 368, 214, 231, 216, 218, 343, -176, 408, 11, - 228, 150, 480, 372, 374, 231, 164, 483, 378, 380, - 228, 382, 450, 384, 228, 231, 392, 394, 399, 231, - 386, 79, 79, 401, 494, 405, 479, 254, 419, 349, - 541, 413, 548, 9, 228, 228, 235, 453, 612, 231, - 231, 481, 479, 453, 226, 514, 561, 349, 482, 117, - 117, 117, 416, 432, 444, 163, 79, 481, 9, 451, - 165, 243, 255, 117, 482, 27, 210, 210, 452, 210, - 210, 256, 117, 445, 164, 37, 10, 11, 446, 447, - 117, 9, 10, 11, 112, 448, 9, 117, 458, 47, - 48, 9, 463, 143, 466, 467, 51, 480, 468, 9, - 469, 470, 483, 224, 228, 656, 519, 10, 11, 231, - 117, 485, 379, 480, 490, 493, 147, 508, 483, 503, - 114, 28, 9, 163, 235, 29, 225, 524, 165, 479, - 10, 11, 280, 505, 172, 10, 11, 526, 64, 510, - 10, 11, 281, 512, 481, 520, 527, 228, 10, 11, - 530, 482, 231, 531, 243, 529, 345, 584, 273, 117, - 79, 117, 355, 356, 532, 9, 340, 150, 534, 553, - 555, 10, 11, 556, 563, 9, 569, 117, 9, 117, - 349, 462, 541, 344, 567, 117, 548, 453, 572, 344, - 344, 349, 349, 574, 254, 479, 576, 228, 577, 164, - 480, 277, 231, 580, 582, 483, 590, 117, 593, 591, - 481, 288, 594, 317, 10, 11, -154, 482, 595, 117, - 137, -155, 117, 117, 10, 11, 596, 10, 11, 255, - 597, 35, 160, 598, 601, 169, 37, 600, 602, 168, - 604, 606, 625, 10, 11, 112, 334, 613, 163, 459, - 47, 48, 9, 165, 627, 335, 628, 51, 638, 639, - 336, 337, 338, 437, 55, 644, 480, 339, 645, 646, - 647, 483, 106, 66, 340, 626, 254, 56, 57, 650, - 58, 59, 579, 588, 60, 370, 449, 61, 123, 404, - 284, 341, 504, 371, 460, 492, 117, 62, 63, 64, - 352, 10, 11, 475, 91, 263, 344, 573, 117, 343, - 117, 264, 11, 344, 177, 442, 538, 443, 117, 562, - 265, 344, 117, 634, 185, 10, 11, 631, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 558, 351, 0, - 0, 0, 117, 117, 0, 0, 292, 293, 294, 295, - 0, 296, 297, 298, 0, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 0, - 160, 0, 319, 0, 322, 177, 0, 0, 137, 137, - 333, 0, 0, 0, 537, 185, 0, 0, 0, 189, - 544, 547, 0, 552, 194, 195, 196, 197, 0, 0, - 0, 0, 557, 0, 559, 117, 0, 0, 0, 0, - 0, 344, 117, 0, 0, 0, 0, 542, 344, 0, - 344, 117, 0, 0, 175, -272, 0, 176, 177, 344, - 178, 344, 180, 181, 182, 0, 0, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 137, 0, 176, 177, 117, 178, 179, 180, 181, - 182, 137, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 0, 0, 0, - 0, 0, 37, 0, 421, -272, 0, 0, 160, 0, - 0, 112, 0, 599, 421, -272, 47, 48, 9, 0, - 0, 603, 0, 51, 0, 117, 0, 0, 117, 0, - 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 344, 0, 0, 0, 0, 0, 0, 114, 344, 0, - 0, 0, 0, 225, 0, 344, 0, 137, 137, 35, - 0, 0, 544, 632, 37, 64, 0, 10, 11, 396, - 0, 0, 0, 112, 0, 0, 0, 0, 47, 48, - 9, 0, 0, 0, 0, 51, 344, 0, 0, 542, - 344, 0, 158, 0, 117, 0, 137, 0, 0, 0, - 0, 0, 0, 0, 0, 56, 57, 0, 58, 159, - 137, 0, 60, 0, 0, 61, 314, 0, 160, 0, - 0, 0, 0, 169, 0, 62, 63, 64, 0, 10, - 11, 0, 0, 0, 176, 177, 344, 178, 344, 180, - 181, 182, 0, 0, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 0, 0, - 0, 0, 0, 565, 566, 0, 0, 523, 0, 0, - 0, 0, -2, 34, 0, 35, 0, 0, 36, 0, - 37, 38, 39, 0, 0, 40, 160, 41, 42, 43, - 44, 45, 46, 0, 47, 48, 9, 0, 0, 49, - 50, 51, 52, 53, 54, 0, 421, 0, 55, 0, - 0, 0, 0, 421, 586, 421, 0, 0, 0, 0, - 0, 56, 57, 0, 58, 59, 0, 0, 60, 0, - 0, 61, 0, 0, -24, 0, 0, 0, 0, 0, - 0, 62, 63, 64, 0, 10, 11, 0, 0, 324, - 0, 35, 0, 0, 36, -247, 37, 38, 39, 0, - -247, 40, 0, 41, 42, 112, 44, 45, 46, 0, - 47, 48, 9, 0, 0, 49, 50, 51, 52, 53, - 54, 0, 0, 0, 55, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 56, 57, 0, - 58, 59, 0, 0, 60, 0, 0, 61, 642, 643, - -247, 160, 0, 0, 0, 325, -247, 62, 63, 64, - 0, 10, 11, 324, 0, 35, 0, 0, 36, 0, - 37, 38, 39, 0, 0, 40, 0, 41, 42, 112, - 44, 45, 46, 0, 47, 48, 9, 0, 0, 49, - 50, 51, 52, 53, 54, 0, 0, 0, 55, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 56, 57, 0, 58, 59, 0, 0, 60, 0, - 35, 61, 0, 0, -247, 37, 0, 0, 0, 325, - -247, 62, 63, 64, 112, 10, 11, 0, 0, 47, - 48, 9, 0, 0, 0, 0, 51, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 56, 57, 0, 58, - 59, 0, 0, 60, 0, 35, 61, 0, 0, 0, - 37, 0, 0, 0, 420, 0, 62, 63, 64, 112, - 10, 11, 0, 0, 47, 48, 9, 0, 0, 0, - 0, 51, 0, 429, 0, 0, 0, 0, 158, 0, + 12, 174, 272, 323, 119, 235, 121, 161, 487, 359, + 109, 235, 435, 109, 240, 32, 274, 79, 320, 131, + 385, 235, 103, 32, 278, 570, 259, 376, 554, 393, + 539, 111, 389, 391, 111, 375, 164, 400, 128, 433, + 111, 402, 428, 173, 107, 380, 212, 254, 146, 150, + 618, 417, 456, 4, 437, 120, 380, 27, 9, 426, + 438, 11, 150, 226, 232, 233, -181, 152, 153, 154, + 155, 156, 157, 124, 166, 167, 263, 130, 9, 163, + 388, 207, 264, 366, 5, 390, 261, 461, 652, 7, + -180, 265, 205, 450, 276, 501, 10, 11, -181, 495, + 495, 282, 462, 507, 496, 496, 174, 10, 11, 257, + 619, 620, 617, 28, 9, 266, 27, 29, 27, 222, + 621, 457, 243, 427, 291, -234, 133, 10, 11, 631, + 111, 228, 228, 228, 164, 325, 111, 9, 146, 9, + 451, 208, 150, 367, 15, 228, 381, 18, 289, 452, + 525, 209, 528, 209, 228, 536, 19, 500, 134, 502, + 497, 625, 228, 10, 11, 141, 560, 150, 491, 228, + 152, 156, -213, 102, 164, 361, 29, 163, 29, 637, + 651, 657, 632, 658, -234, 379, 10, 11, 10, 11, + -234, 369, 228, 638, 639, 318, 133, 204, 20, 450, + -177, 79, -175, 206, 581, 23, -213, 349, 26, 578, + 437, 585, 515, 535, 357, 32, 486, 163, 243, 522, + 9, 397, 33, 125, -177, 93, -175, 125, 134, 363, + -179, 122, -177, 408, -175, 9, 414, 415, -213, 101, + 105, 228, 108, 228, 243, 79, 451, 235, 564, 533, + 409, 136, 411, 171, 437, 165, 474, 235, 203, 228, + 593, 228, 568, 430, 254, 606, 488, 228, -265, 10, + 11, 273, 509, -265, 198, 259, 150, -180, 511, -152, + 583, 437, 623, 624, 10, 11, 199, 612, -176, 228, + 200, 661, 164, 263, 202, -179, 345, 11, 201, 264, + 215, 410, 355, 356, 228, 228, 635, 231, 231, 231, + 408, 219, -176, 10, 11, 9, 79, 220, 334, 646, + -176, 231, 223, -265, 249, 234, 250, 335, 262, -265, + 231, 138, 336, 337, 338, 163, 494, 453, 231, 339, + 285, 479, -264, 481, 209, 231, 340, -264, 349, 482, + 519, 277, 622, 165, 353, 615, 226, 514, 257, 214, + 9, 216, 218, 341, 10, 11, 266, 243, 231, 477, + 506, 9, 286, 529, 489, 342, 287, 243, 228, 111, + 354, 343, 358, 360, 11, 630, 362, 111, 364, 368, + 228, 111, 480, 165, 146, 127, 150, -264, 372, 374, + 228, 382, 164, -264, 228, 378, 94, 288, 239, 10, + 11, 150, 380, 9, 95, 394, 384, 231, 96, 231, + 10, 11, 117, 254, 228, 228, 449, -174, 97, 98, + 386, 79, 79, 9, 460, 231, 479, 231, 481, 349, + 541, 392, 548, 231, 482, 163, 235, 453, 143, 399, + 413, -174, 479, 453, 481, 613, 561, 349, 255, -174, + 482, 99, 10, 11, -178, 231, 79, 256, 147, 584, + 164, 243, 10, 11, 432, 401, 405, 412, 416, 419, + 231, 231, 10, 11, 444, 9, 445, 480, -178, 331, + 332, 447, 446, 448, 228, 458, -178, 463, 117, 117, + 117, 466, 467, 480, 468, 469, 470, 485, 9, 490, + 503, 165, 117, 163, 210, 210, 519, 210, 210, 660, + 172, 117, 379, 493, 537, 254, 505, 508, 510, 117, + 544, 547, 512, 552, 10, 11, 117, 228, 235, 479, + 520, 481, 557, 317, 559, 524, 526, 482, 527, 530, + 531, 532, 340, 553, 231, 534, 555, 10, 11, 117, + 255, 462, 403, 563, 243, 556, 231, 529, 483, 567, + 79, 569, 418, 572, 10, 11, 231, 150, 576, 577, + 231, 574, 580, 582, 591, 594, 592, 228, 595, -156, + 480, 349, 596, 541, -157, 597, 164, 548, 453, 598, + 231, 231, 349, 349, 599, 602, 601, 479, 117, 481, + 117, 603, 607, 605, 614, 482, 626, 628, 640, 641, + 629, 165, 437, 647, 648, 649, 117, 650, 117, 656, + 106, 344, 177, 600, 117, 66, 579, 344, 344, 163, + 627, 604, 185, 653, 370, 589, 189, 590, 331, 332, + 404, 194, 195, 196, 197, 123, 117, 284, 480, 504, + 371, 352, 492, 483, 475, 91, 442, 573, 117, 538, + 231, 117, 117, 636, 443, 633, 175, -274, 562, 483, + 558, 137, 0, 544, 634, 0, 351, 513, 0, 165, + 0, 0, 0, 160, 0, 0, 169, 0, 0, 0, + 0, 521, 0, 0, 0, 176, 177, 0, 178, 179, + 180, 181, 182, 231, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 35, + 0, 0, 0, 0, 37, 0, 0, -274, 0, 0, + 0, 0, 0, 112, 0, 117, 0, -274, 47, 48, + 9, 0, 0, 0, 344, 51, 0, 117, 0, 117, + 0, 344, 158, 231, 0, 0, 483, 117, 0, 344, + 0, 117, 0, 0, 0, 56, 57, 0, 58, 159, + 0, 0, 60, 0, 0, 61, 314, 0, 0, 0, + 0, 117, 117, 0, 0, 62, 63, 64, 0, 10, + 11, 0, 0, 0, 0, 0, 0, 292, 293, 294, + 295, 0, 296, 297, 298, 165, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 0, 160, 0, 319, 483, 322, 0, 0, 0, 137, + 137, 333, 0, 35, 0, 0, 0, 0, 37, 0, + 0, 168, 0, 0, 117, 0, 0, 112, 0, 344, + 0, 117, 47, 48, 9, 542, 344, 0, 344, 51, + 117, 0, 0, 0, 0, 0, 55, 344, 0, 344, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, + 57, 0, 58, 59, 0, 0, 60, 0, 0, 61, + 0, 0, 0, 0, 117, 0, 0, 0, 0, 62, + 63, 64, 137, 10, 11, 177, 0, 0, 0, 180, + 181, 182, 137, 0, 184, 185, 186, 187, 0, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 0, 35, + 0, 0, 0, 0, 37, 421, 0, 0, 0, 160, + 0, 0, 0, 112, 117, 421, 0, 117, 47, 48, + 9, 0, 0, 0, 0, 51, 0, 0, 344, 0, + 0, 0, 55, 0, 0, 0, 344, 0, 0, 0, + 0, 0, 0, 344, 0, 56, 57, 0, 58, 59, + 0, 0, 60, 0, 0, 61, 0, 0, 137, 137, + 0, 0, 0, 420, 0, 62, 63, 64, 0, 10, + 11, 0, 0, 0, 0, 344, 0, 0, 542, 344, + 0, 0, 0, 0, 0, 117, -2, 34, 0, 35, + 0, 0, 36, 0, 37, 38, 39, 137, 0, 40, + 0, 41, 42, 43, 44, 45, 46, 0, 47, 48, + 9, 137, 0, 49, 50, 51, 52, 53, 54, 160, + 0, 0, 55, 0, 169, 0, 0, 344, 0, 344, + 0, 0, 0, 0, 0, 56, 57, 0, 58, 59, + 0, 0, 60, 0, 0, 61, 0, 0, -24, 0, + 0, 0, 0, 0, 0, 62, 63, 64, 0, 10, + 11, 0, 0, 0, 565, 566, 0, 0, 0, 0, + 0, 0, 0, 0, 324, 0, 35, 0, 0, 36, + -249, 37, 38, 39, 0, -249, 40, 160, 41, 42, + 112, 44, 45, 46, 0, 47, 48, 9, 0, 0, + 49, 50, 51, 52, 53, 54, 0, 421, 0, 55, + 0, 0, 0, 0, 421, 587, 421, 0, 0, 0, + 0, 0, 56, 57, 0, 58, 59, 0, 0, 60, + 0, 0, 61, 0, 0, -249, 0, 0, 0, 0, + 325, -249, 62, 63, 64, 0, 10, 11, 324, 0, + 35, 0, 0, 36, 0, 37, 38, 39, 0, 0, + 40, 0, 41, 42, 112, 44, 45, 46, 0, 47, + 48, 9, 177, 0, 49, 50, 51, 52, 53, 54, + 0, 0, 185, 55, 0, 0, 189, 190, 191, 192, + 193, 194, 195, 196, 197, 0, 56, 57, 0, 58, + 59, 0, 0, 60, 0, 0, 61, 0, 0, -249, + 644, 645, 0, 160, 325, -249, 62, 63, 64, 35, + 10, 11, 421, 0, 37, 0, 0, 0, 0, 0, + 0, 0, 0, 112, 0, 334, 0, 0, 47, 48, + 9, 0, 0, 0, 335, 51, 0, 429, 0, 336, + 337, 338, 158, 0, 0, 0, 339, 0, 0, 0, + 0, 0, 0, 340, 0, 56, 57, 0, 58, 159, + 0, 0, 60, 0, 35, 61, 0, 0, 0, 37, + 341, 0, 0, 0, 0, 62, 63, 64, 112, 10, + 11, 0, 0, 47, 48, 9, 0, 472, 343, 0, + 51, 11, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 56, 57, 0, 58, 159, 0, 0, 60, 0, - 35, 61, 0, 0, 0, 37, 0, 0, 0, 0, - 0, 62, 63, 64, 112, 10, 11, 0, 0, 47, - 48, 9, 0, 472, 0, 0, 51, 0, 0, 0, - 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 56, 57, 0, 58, - 59, 0, 0, 60, 0, 35, 61, 0, 0, 0, - 37, 0, 0, 0, 0, 0, 62, 63, 64, 112, - 10, 11, 0, 0, 47, 48, 9, 0, 473, 0, - 0, 51, 0, 0, 0, 0, 0, 0, 55, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, - 0, 56, 57, 37, 58, 59, 0, 0, 60, 0, - 0, 61, 112, 0, 0, 0, 0, 47, 48, 9, - 0, 62, 63, 64, 51, 10, 11, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 35, 0, 0, 56, 57, 37, 58, 59, 0, - 0, 60, 0, 0, 61, 112, 0, 0, 0, 0, - 47, 48, 9, 0, 62, 63, 64, 51, 10, 11, - 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 35, 0, 0, 56, 57, 283, - 58, 159, 0, 0, 60, 0, 0, 61, 112, 0, - 0, 0, 0, 47, 48, 9, 0, 62, 63, 64, - 51, 10, 11, 0, 0, 0, 0, 55, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 56, 57, 37, 58, 59, 0, 0, 60, 0, 0, - 61, 112, 0, 0, 0, 0, 47, 48, 9, 0, - 62, 63, 64, 51, 10, 11, 0, 0, 37, 0, - 224, 241, 0, 0, 0, 0, 37, 112, 0, 0, - 0, 0, 47, 48, 9, 112, 0, 114, 0, 51, - 47, 48, 9, 225, 0, 0, 224, 51, 0, 290, - 0, 37, 0, 0, 113, 64, 0, 10, 11, 281, - 112, 0, 0, 114, 0, 47, 48, 9, 0, 225, - 0, 114, 51, 0, 0, 0, 0, 115, 0, 224, - 0, 64, 0, 10, 11, 37, 0, 0, 0, 64, - 0, 10, 11, 0, 112, 0, 114, 0, 0, 47, - 48, 9, 225, 0, 0, 0, 51, 0, 0, 0, - 37, 0, 0, 406, 64, 0, 10, 11, 283, 112, - 0, 0, 0, 0, 47, 48, 9, 112, 0, 0, - 114, 51, 47, 48, 9, 0, 407, 0, 224, 51, - 0, 0, 0, 334, 0, 0, 224, 0, 64, 0, - 10, 11, 335, 0, 0, 114, 0, 336, 337, 338, - 0, 476, 0, 114, 339, 0, 0, 0, 0, 225, - 0, 439, 0, 64, 0, 10, 11, 334, 0, 0, - 0, 64, 0, 10, 11, 0, 335, 334, 341, 0, - 0, 336, 337, 540, 440, 0, 335, 0, 339, 0, - 0, 336, 337, 338, 0, 340, 343, 0, 339, 11, - 0, 0, 0, 0, 0, 340, 0, 0, 0, 0, - 334, 0, 341, 0, 0, 0, 0, 0, 0, 335, - 0, 0, 341, 0, 336, 337, 338, 0, 607, 0, - 343, 339, 10, 11, 0, 0, 0, 0, 340, 0, - 343, 0, 0, 11, 0, 0, 176, 177, 0, 178, - 0, 180, 181, 182, 0, 341, 184, 185, 186, 187, + 56, 57, 0, 58, 59, 0, 0, 60, 0, 35, + 61, 0, 0, 0, 37, 0, 0, 0, 0, 0, + 62, 63, 64, 112, 10, 11, 0, 0, 47, 48, + 9, 0, 473, 0, 0, 51, 0, 0, 0, 0, + 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 35, 0, 0, 56, 57, 37, 58, 59, + 0, 0, 60, 0, 0, 61, 112, 0, 0, 0, + 0, 47, 48, 9, 0, 62, 63, 64, 51, 10, + 11, 0, 0, 0, 0, 55, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 56, 57, + 0, 58, 59, 0, 0, 60, 0, 35, 61, 0, + 0, 0, 37, 0, 0, 0, 586, 0, 62, 63, + 64, 112, 10, 11, 0, 0, 47, 48, 9, 0, + 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, + 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 35, 0, 0, 56, 57, 37, 58, 59, 0, 0, + 60, 0, 0, 61, 112, 0, 0, 0, 0, 47, + 48, 9, 0, 62, 63, 64, 51, 10, 11, 0, + 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 35, 0, 0, 56, 57, 283, 58, + 159, 0, 0, 60, 0, 0, 61, 112, 0, 0, + 35, 0, 47, 48, 9, 37, 62, 63, 64, 51, + 10, 11, 0, 0, 112, 0, 55, 0, 0, 47, + 48, 9, 0, 0, 0, 0, 51, 0, 0, 56, + 57, 37, 58, 59, 0, 0, 60, 0, 0, 61, + 112, 0, 0, 0, 0, 47, 48, 9, 0, 62, + 63, 64, 51, 10, 11, 0, 61, 0, 37, 224, + 0, 0, 0, 0, 0, 0, 0, 112, 64, 0, + 10, 11, 47, 48, 9, 0, 114, 0, 0, 51, + 0, 0, 225, 0, 0, 0, 224, 0, 280, 0, + 37, 0, 0, 0, 64, 0, 10, 11, 281, 112, + 0, 0, 0, 114, 47, 48, 9, 0, 0, 225, + 0, 51, 0, 0, 0, 290, 0, 37, 224, 0, + 241, 64, 0, 10, 11, 281, 112, 0, 0, 0, + 0, 47, 48, 9, 0, 114, 0, 0, 51, 0, + 0, 225, 0, 0, 0, 224, 0, 0, 0, 37, + 0, 0, 0, 64, 0, 10, 11, 396, 112, 0, + 37, 0, 114, 47, 48, 9, 0, 0, 225, 112, + 51, 0, 0, 0, 47, 48, 9, 113, 0, 0, + 64, 51, 10, 11, 0, 0, 0, 0, 224, 0, + 0, 0, 37, 0, 114, 0, 0, 0, 0, 0, + 115, 112, 0, 0, 0, 114, 47, 48, 9, 0, + 0, 225, 64, 51, 10, 11, 0, 0, 37, 0, + 406, 0, 0, 64, 0, 10, 11, 112, 0, 0, + 0, 0, 47, 48, 9, 0, 0, 114, 0, 51, + 0, 0, 0, 407, 0, 283, 224, 0, 0, 0, + 0, 0, 0, 0, 112, 64, 0, 10, 11, 47, + 48, 9, 0, 114, 0, 0, 51, 0, 0, 476, + 0, 334, 0, 224, 0, 0, 0, 0, 0, 334, + 335, 64, 459, 10, 11, 336, 337, 338, 335, 0, + 114, 0, 339, 336, 337, 338, 225, 0, 0, 439, + 339, 0, 0, 0, 334, 0, 0, 340, 64, 0, + 10, 11, 334, 335, 0, 0, 341, 0, 336, 337, + 540, 335, 440, 0, 341, 339, 336, 337, 338, 0, + 0, 0, 340, 339, 343, 0, 0, 11, 0, 0, + 340, 0, 343, 0, 0, 11, 0, 0, 0, 341, + 0, 0, 0, 0, 0, 0, 0, 341, 0, 0, + 0, 0, 0, 608, 0, 0, 0, 343, 0, 10, + 11, 0, 0, 0, 0, 343, 176, 177, 11, 178, + 0, 180, 181, 182, 0, 0, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 0, 0, 0, 343, 0, 0, 11, 176, 177, 0, - 178, 0, 180, 181, 182, 431, 0, 184, 185, 186, + 0, 0, 0, 0, 0, 0, 176, 177, 0, 178, + 0, 180, 181, 182, 0, 431, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 176, 177, 0, 178, 0, 180, 181, 182, 0, 523, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 176, 177, 0, 178, 0, 180, + 181, 182, 0, 654, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 176, 177, + 0, 178, 0, 180, 181, 182, 0, 655, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 0, 176, 177, 434, 178, 0, 180, 181, + 182, 0, 0, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 195, 196, 197, 176, 177, 0, + 0, 0, 180, 181, 182, 0, 0, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 176, 177, 0, 178, 0, 180, 181, 182, 0, - 651, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 176, 177, 0, 178, 0, - 180, 181, 182, 0, 652, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 176, - 177, 0, 434, 0, 180, 181, 182, 0, 0, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 176, 177, 0, 0, 0, 180, 181, - 182, 0, 0, 184, 185, 186, 187, 0, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 177, 0, 0, - 0, 180, 181, 182, 0, 0, 184, 185, 186, 187, - 0, 189, 190, 191, 192, 193, 194, 195, 196, 197 + 197, 176, 177, 0, 0, 0, 180, 181, 182, 0, + 0, 184, 185, 186, 187, 0, 189, 190, 191, 192, + 193, 194, 195, 196, 197 }; -#define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-459))) +#define yypact_value_is_default(yystate) \ + ((yystate) == (-467)) -#define yytable_value_is_error(Yytable_value) \ +#define yytable_value_is_error(yytable_value) \ YYID (0) static const yytype_int16 yycheck[] = { - 5, 67, 142, 377, 37, 126, 61, 126, 143, 201, - 49, 132, 323, 147, 250, 20, 223, 22, 204, 37, - 258, 142, 452, 28, 28, 135, 67, 485, 321, 267, - 36, 36, 3, 39, 39, 31, 389, 275, 43, 45, - 45, 279, 249, 1, 397, 5, 24, 444, 53, 54, - 61, 289, 35, 24, 62, 0, 316, 3, 263, 264, - 68, 20, 67, 11, 59, 35, 1, 7, 24, 3, - 60, 25, 12, 5, 8, 37, 59, 35, 25, 74, - 37, 59, 62, 17, 67, 75, 7, 126, 22, 23, - 24, 12, 63, 7, 3, 29, 21, 67, 12, 61, - 35, 59, 73, 74, 61, 65, 172, 460, 67, 67, - 106, 5, 523, 524, 572, 75, 55, 56, 57, 58, - 59, 60, 127, 62, 63, 59, 72, 75, 68, 135, - 135, 172, 67, 65, 66, 141, 141, 71, 143, 73, - 74, 62, 147, 75, 437, 255, 24, 68, 159, 24, - 503, 113, 114, 115, 68, 40, 113, 114, 115, 44, - 63, 113, 114, 115, 424, 127, 426, 172, 207, 208, - 127, 65, 602, 3, 136, 382, 594, 24, 53, 136, - 638, 75, 144, 388, 136, 390, 62, 144, 199, 151, - 62, 62, 144, 3, 151, 200, 68, 159, 595, 151, - 436, 206, 159, 3, 515, 24, 559, 212, 62, 606, - 607, 522, 174, 71, 68, 220, 220, 174, 223, 158, - 159, 24, 174, 576, 577, 62, 644, 413, 646, 234, - 62, 3, 62, 63, 420, 471, 68, 199, 68, 67, - 432, 280, 199, 7, 249, 250, 599, 368, 12, 368, - 283, 290, 24, 66, 73, 74, 59, 378, 66, 378, - 59, 223, 317, 225, 399, 283, 223, 401, 225, 476, - 73, 74, 59, 225, 384, 3, 281, 59, 74, 241, - 518, 243, 656, 24, 241, 9, 243, 249, 60, 241, - 40, 63, 249, 17, 44, 24, 24, 21, 62, 59, - 62, 73, 74, 63, 68, 64, 317, 31, 32, 271, - 59, 71, 53, 67, 271, 51, 321, 63, 59, 271, - 59, 283, 50, 75, 286, 287, 283, 366, 367, 286, - 287, 283, 73, 74, 286, 287, 35, 342, 60, 575, - 64, 374, 72, 8, 35, 73, 74, 83, 353, 35, - 416, 72, 17, 89, 59, 317, 374, 22, 23, 24, - 317, 35, 569, 374, 29, 35, 405, 372, 59, 374, - 3, 36, 427, 59, 379, 35, 67, 382, 384, 384, - 419, 67, 60, 37, 8, 59, 392, 392, 53, 59, - 396, 396, 60, 67, 399, 35, 401, 67, 360, 59, - 65, 62, 95, 360, 97, 98, 71, 67, 360, 74, - 372, 416, 374, 75, 60, 372, 427, 374, 62, 24, - 382, 59, 3, 62, 386, 382, 62, 3, 62, 386, - 72, 436, 437, 62, 386, 65, 469, 24, 65, 444, - 445, 67, 447, 24, 406, 407, 567, 452, 567, 406, - 407, 469, 485, 458, 406, 407, 461, 462, 469, 113, - 114, 115, 62, 66, 59, 427, 471, 485, 24, 50, - 427, 476, 59, 127, 485, 3, 94, 95, 59, 97, - 98, 68, 136, 67, 495, 8, 73, 74, 71, 67, - 144, 24, 73, 74, 17, 8, 24, 151, 65, 22, - 23, 24, 62, 59, 62, 62, 29, 469, 62, 24, - 60, 60, 469, 36, 476, 655, 582, 73, 74, 476, - 174, 60, 63, 485, 60, 68, 59, 35, 485, 60, - 53, 59, 24, 495, 655, 63, 59, 75, 495, 572, - 73, 74, 65, 68, 59, 73, 74, 68, 71, 60, - 73, 74, 75, 60, 572, 60, 75, 519, 73, 74, - 60, 572, 519, 60, 569, 620, 211, 519, 60, 223, - 575, 225, 217, 218, 60, 24, 36, 582, 68, 3, - 62, 73, 74, 72, 60, 24, 59, 241, 24, 243, - 595, 75, 597, 211, 62, 249, 601, 602, 60, 217, - 218, 606, 607, 66, 24, 638, 60, 569, 60, 620, - 572, 60, 569, 60, 62, 572, 60, 271, 60, 72, - 638, 60, 60, 59, 73, 74, 59, 638, 59, 283, - 49, 59, 286, 287, 73, 74, 68, 73, 74, 59, - 62, 3, 61, 72, 62, 64, 8, 68, 49, 11, - 62, 59, 68, 73, 74, 17, 8, 60, 620, 11, - 22, 23, 24, 620, 60, 17, 68, 29, 60, 14, - 22, 23, 24, 62, 36, 60, 638, 29, 60, 60, - 60, 638, 31, 22, 36, 582, 24, 49, 50, 639, - 52, 53, 508, 524, 56, 243, 341, 59, 39, 281, - 159, 53, 392, 243, 349, 384, 360, 69, 70, 71, - 213, 73, 74, 372, 22, 53, 334, 495, 372, 71, - 374, 59, 74, 341, 34, 334, 440, 334, 382, 462, - 68, 349, 386, 601, 44, 73, 74, 597, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 458, 212, -1, - -1, -1, 406, 407, -1, -1, 175, 176, 177, 178, - -1, 180, 181, 182, -1, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, -1, - 199, -1, 201, -1, 203, 34, -1, -1, 207, 208, - 209, -1, -1, -1, 439, 44, -1, -1, -1, 48, - 445, 446, -1, 448, 53, 54, 55, 56, -1, -1, - -1, -1, 457, -1, 459, 469, -1, -1, -1, -1, - -1, 439, 476, -1, -1, -1, -1, 445, 446, -1, - 448, 485, -1, -1, 4, 5, -1, 33, 34, 457, - 36, 459, 38, 39, 40, -1, -1, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 280, -1, 33, 34, 519, 36, 37, 38, 39, - 40, 290, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, -1, -1, -1, - -1, -1, 8, -1, 313, 65, -1, -1, 317, -1, - -1, 17, -1, 548, 323, 75, 22, 23, 24, -1, - -1, 556, -1, 29, -1, 569, -1, -1, 572, -1, - 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 548, -1, -1, -1, -1, -1, -1, 53, 556, -1, - -1, -1, -1, 59, -1, 563, -1, 366, 367, 3, - -1, -1, 597, 598, 8, 71, -1, 73, 74, 75, - -1, -1, -1, 17, -1, -1, -1, -1, 22, 23, - 24, -1, -1, -1, -1, 29, 594, -1, -1, 597, - 598, -1, 36, -1, 638, -1, 405, -1, -1, -1, + 5, 67, 142, 204, 37, 126, 37, 61, 377, 223, + 36, 132, 323, 39, 126, 20, 143, 22, 201, 45, + 258, 142, 28, 28, 147, 485, 135, 250, 452, 267, + 444, 36, 263, 264, 39, 249, 61, 275, 43, 321, + 45, 279, 316, 67, 31, 24, 59, 24, 53, 54, + 5, 289, 3, 0, 62, 37, 24, 3, 24, 11, + 68, 74, 67, 113, 114, 115, 35, 55, 56, 57, + 58, 59, 60, 40, 62, 63, 53, 44, 24, 61, + 59, 5, 59, 5, 25, 53, 136, 60, 20, 25, + 59, 68, 1, 3, 144, 389, 73, 74, 67, 7, + 7, 151, 75, 397, 12, 12, 172, 73, 74, 135, + 65, 66, 572, 59, 24, 141, 3, 63, 3, 106, + 75, 72, 127, 75, 174, 3, 35, 73, 74, 595, + 135, 113, 114, 115, 159, 67, 141, 24, 143, 24, + 50, 65, 147, 65, 24, 127, 255, 3, 172, 59, + 424, 75, 426, 75, 136, 437, 62, 388, 67, 390, + 68, 68, 144, 73, 74, 51, 460, 172, 382, 151, + 158, 159, 1, 60, 199, 225, 63, 159, 63, 603, + 640, 647, 596, 649, 62, 63, 73, 74, 73, 74, + 68, 241, 174, 607, 608, 200, 35, 83, 21, 3, + 35, 206, 35, 89, 515, 24, 35, 212, 63, 503, + 62, 522, 413, 436, 220, 220, 68, 199, 223, 420, + 24, 271, 62, 40, 59, 62, 59, 44, 67, 234, + 59, 37, 67, 283, 67, 24, 286, 287, 67, 24, + 3, 223, 3, 225, 249, 250, 50, 368, 471, 432, + 283, 71, 283, 62, 62, 61, 368, 378, 59, 241, + 68, 243, 476, 317, 24, 559, 378, 249, 7, 73, + 74, 60, 399, 12, 67, 384, 281, 59, 401, 66, + 518, 62, 576, 577, 73, 74, 59, 68, 35, 271, + 63, 660, 317, 53, 66, 59, 211, 74, 71, 59, + 24, 283, 217, 218, 286, 287, 600, 113, 114, 115, + 360, 64, 59, 73, 74, 24, 321, 62, 8, 630, + 67, 127, 59, 62, 59, 63, 67, 17, 35, 68, + 136, 49, 22, 23, 24, 317, 386, 342, 144, 29, + 60, 374, 7, 374, 75, 151, 36, 12, 353, 374, + 416, 60, 575, 159, 59, 569, 406, 407, 384, 95, + 24, 97, 98, 53, 73, 74, 392, 372, 174, 374, + 396, 24, 72, 427, 379, 65, 72, 382, 360, 384, + 3, 71, 60, 8, 74, 586, 60, 392, 35, 62, + 372, 396, 374, 199, 399, 59, 401, 62, 75, 60, + 382, 59, 427, 68, 386, 62, 9, 60, 126, 73, + 74, 416, 24, 24, 17, 3, 62, 223, 21, 225, + 73, 74, 37, 24, 406, 407, 341, 35, 31, 32, + 72, 436, 437, 24, 349, 241, 469, 243, 469, 444, + 445, 62, 447, 249, 469, 427, 567, 452, 59, 62, + 67, 59, 485, 458, 485, 567, 461, 462, 59, 67, + 485, 64, 73, 74, 35, 271, 471, 68, 59, 519, + 495, 476, 73, 74, 66, 62, 65, 283, 62, 65, + 286, 287, 73, 74, 59, 24, 67, 469, 59, 207, + 208, 67, 71, 8, 476, 65, 67, 62, 113, 114, + 115, 62, 62, 485, 62, 60, 60, 60, 24, 60, + 60, 317, 127, 495, 94, 95, 582, 97, 98, 659, + 59, 136, 63, 68, 439, 24, 68, 35, 60, 144, + 445, 446, 60, 448, 73, 74, 151, 519, 659, 572, + 60, 572, 457, 59, 459, 75, 68, 572, 75, 60, + 60, 60, 36, 3, 360, 68, 62, 73, 74, 174, + 59, 75, 280, 60, 569, 72, 372, 621, 374, 62, + 575, 59, 290, 60, 73, 74, 382, 582, 60, 60, + 386, 66, 60, 62, 60, 60, 72, 569, 60, 59, + 572, 596, 59, 598, 59, 68, 621, 602, 603, 62, + 406, 407, 607, 608, 72, 62, 68, 640, 223, 640, + 225, 49, 59, 62, 60, 640, 68, 60, 60, 14, + 68, 427, 62, 60, 60, 60, 241, 60, 243, 68, + 31, 211, 34, 548, 249, 22, 508, 217, 218, 621, + 582, 556, 44, 641, 243, 524, 48, 524, 366, 367, + 281, 53, 54, 55, 56, 39, 271, 159, 640, 392, + 243, 213, 384, 469, 372, 22, 334, 495, 283, 440, + 476, 286, 287, 602, 334, 598, 4, 5, 462, 485, + 458, 49, -1, 598, 599, -1, 212, 405, -1, 495, + -1, -1, -1, 61, -1, -1, 64, -1, -1, -1, + -1, 419, -1, -1, -1, 33, 34, -1, 36, 37, + 38, 39, 40, 519, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 3, + -1, -1, -1, -1, 8, -1, -1, 65, -1, -1, + -1, -1, -1, 17, -1, 360, -1, 75, 22, 23, + 24, -1, -1, -1, 334, 29, -1, 372, -1, 374, + -1, 341, 36, 569, -1, -1, 572, 382, -1, 349, + -1, 386, -1, -1, -1, 49, 50, -1, 52, 53, + -1, -1, 56, -1, -1, 59, 60, -1, -1, -1, + -1, 406, 407, -1, -1, 69, 70, 71, -1, 73, + 74, -1, -1, -1, -1, -1, -1, 175, 176, 177, + 178, -1, 180, 181, 182, 621, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + -1, 199, -1, 201, 640, 203, -1, -1, -1, 207, + 208, 209, -1, 3, -1, -1, -1, -1, 8, -1, + -1, 11, -1, -1, 469, -1, -1, 17, -1, 439, + -1, 476, 22, 23, 24, 445, 446, -1, 448, 29, + 485, -1, -1, -1, -1, -1, 36, 457, -1, 459, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, + 50, -1, 52, 53, -1, -1, 56, -1, -1, 59, + -1, -1, -1, -1, 519, -1, -1, -1, -1, 69, + 70, 71, 280, 73, 74, 34, -1, -1, -1, 38, + 39, 40, 290, -1, 43, 44, 45, 46, -1, 48, + 49, 50, 51, 52, 53, 54, 55, 56, -1, 3, + -1, -1, -1, -1, 8, 313, -1, -1, -1, 317, + -1, -1, -1, 17, 569, 323, -1, 572, 22, 23, + 24, -1, -1, -1, -1, 29, -1, -1, 548, -1, + -1, -1, 36, -1, -1, -1, 556, -1, -1, -1, + -1, -1, -1, 563, -1, 49, 50, -1, 52, 53, + -1, -1, 56, -1, -1, 59, -1, -1, 366, 367, + -1, -1, -1, 67, -1, 69, 70, 71, -1, 73, + 74, -1, -1, -1, -1, 595, -1, -1, 598, 599, + -1, -1, -1, -1, -1, 640, 0, 1, -1, 3, + -1, -1, 6, -1, 8, 9, 10, 405, -1, 13, + -1, 15, 16, 17, 18, 19, 20, -1, 22, 23, + 24, 419, -1, 27, 28, 29, 30, 31, 32, 427, + -1, -1, 36, -1, 432, -1, -1, 647, -1, 649, -1, -1, -1, -1, -1, 49, 50, -1, 52, 53, - 419, -1, 56, -1, -1, 59, 60, -1, 427, -1, - -1, -1, -1, 432, -1, 69, 70, 71, -1, 73, - 74, -1, -1, -1, 33, 34, 644, 36, 646, 38, - 39, 40, -1, -1, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, -1, -1, - -1, -1, -1, 472, 473, -1, -1, 66, -1, -1, - -1, -1, 0, 1, -1, 3, -1, -1, 6, -1, - 8, 9, 10, -1, -1, 13, 495, 15, 16, 17, - 18, 19, 20, -1, 22, 23, 24, -1, -1, 27, - 28, 29, 30, 31, 32, -1, 515, -1, 36, -1, - -1, -1, -1, 522, 523, 524, -1, -1, -1, -1, - -1, 49, 50, -1, 52, 53, -1, -1, 56, -1, - -1, 59, -1, -1, 62, -1, -1, -1, -1, -1, - -1, 69, 70, 71, -1, 73, 74, -1, -1, 1, - -1, 3, -1, -1, 6, 7, 8, 9, 10, -1, - 12, 13, -1, 15, 16, 17, 18, 19, 20, -1, - 22, 23, 24, -1, -1, 27, 28, 29, 30, 31, - 32, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 49, 50, -1, - 52, 53, -1, -1, 56, -1, -1, 59, 617, 618, - 62, 620, -1, -1, -1, 67, 68, 69, 70, 71, - -1, 73, 74, 1, -1, 3, -1, -1, 6, -1, - 8, 9, 10, -1, -1, 13, -1, 15, 16, 17, - 18, 19, 20, -1, 22, 23, 24, -1, -1, 27, - 28, 29, 30, 31, 32, -1, -1, -1, 36, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 49, 50, -1, 52, 53, -1, -1, 56, -1, - 3, 59, -1, -1, 62, 8, -1, -1, -1, 67, - 68, 69, 70, 71, 17, 73, 74, -1, -1, 22, - 23, 24, -1, -1, -1, -1, 29, -1, -1, -1, - -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 49, 50, -1, 52, - 53, -1, -1, 56, -1, 3, 59, -1, -1, -1, - 8, -1, -1, -1, 67, -1, 69, 70, 71, 17, - 73, 74, -1, -1, 22, 23, 24, -1, -1, -1, - -1, 29, -1, 31, -1, -1, -1, -1, 36, -1, + -1, -1, 56, -1, -1, 59, -1, -1, 62, -1, + -1, -1, -1, -1, -1, 69, 70, 71, -1, 73, + 74, -1, -1, -1, 472, 473, -1, -1, -1, -1, + -1, -1, -1, -1, 1, -1, 3, -1, -1, 6, + 7, 8, 9, 10, -1, 12, 13, 495, 15, 16, + 17, 18, 19, 20, -1, 22, 23, 24, -1, -1, + 27, 28, 29, 30, 31, 32, -1, 515, -1, 36, + -1, -1, -1, -1, 522, 523, 524, -1, -1, -1, + -1, -1, 49, 50, -1, 52, 53, -1, -1, 56, + -1, -1, 59, -1, -1, 62, -1, -1, -1, -1, + 67, 68, 69, 70, 71, -1, 73, 74, 1, -1, + 3, -1, -1, 6, -1, 8, 9, 10, -1, -1, + 13, -1, 15, 16, 17, 18, 19, 20, -1, 22, + 23, 24, 34, -1, 27, 28, 29, 30, 31, 32, + -1, -1, 44, 36, -1, -1, 48, 49, 50, 51, + 52, 53, 54, 55, 56, -1, 49, 50, -1, 52, + 53, -1, -1, 56, -1, -1, 59, -1, -1, 62, + 618, 619, -1, 621, 67, 68, 69, 70, 71, 3, + 73, 74, 630, -1, 8, -1, -1, -1, -1, -1, + -1, -1, -1, 17, -1, 8, -1, -1, 22, 23, + 24, -1, -1, -1, 17, 29, -1, 31, -1, 22, + 23, 24, 36, -1, -1, -1, 29, -1, -1, -1, + -1, -1, -1, 36, -1, 49, 50, -1, 52, 53, + -1, -1, 56, -1, 3, 59, -1, -1, -1, 8, + 53, -1, -1, -1, -1, 69, 70, 71, 17, 73, + 74, -1, -1, 22, 23, 24, -1, 26, 71, -1, + 29, 74, -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 49, 50, -1, 52, 53, -1, -1, 56, -1, - 3, 59, -1, -1, -1, 8, -1, -1, -1, -1, - -1, 69, 70, 71, 17, 73, 74, -1, -1, 22, - 23, 24, -1, 26, -1, -1, 29, -1, -1, -1, + 49, 50, -1, 52, 53, -1, -1, 56, -1, 3, + 59, -1, -1, -1, 8, -1, -1, -1, -1, -1, + 69, 70, 71, 17, 73, 74, -1, -1, 22, 23, + 24, -1, 26, -1, -1, 29, -1, -1, -1, -1, + -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3, -1, -1, 49, 50, 8, 52, 53, + -1, -1, 56, -1, -1, 59, 17, -1, -1, -1, + -1, 22, 23, 24, -1, 69, 70, 71, 29, 73, + 74, -1, -1, -1, -1, 36, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 49, 50, + -1, 52, 53, -1, -1, 56, -1, 3, 59, -1, + -1, -1, 8, -1, -1, -1, 67, -1, 69, 70, + 71, 17, 73, 74, -1, -1, 22, 23, 24, -1, + -1, -1, -1, 29, -1, -1, -1, -1, -1, -1, + 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3, -1, -1, 49, 50, 8, 52, 53, -1, -1, + 56, -1, -1, 59, 17, -1, -1, -1, -1, 22, + 23, 24, -1, 69, 70, 71, 29, 73, 74, -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 49, 50, -1, 52, - 53, -1, -1, 56, -1, 3, 59, -1, -1, -1, - 8, -1, -1, -1, -1, -1, 69, 70, 71, 17, - 73, 74, -1, -1, 22, 23, 24, -1, 26, -1, - -1, 29, -1, -1, -1, -1, -1, -1, 36, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3, -1, - -1, 49, 50, 8, 52, 53, -1, -1, 56, -1, - -1, 59, 17, -1, -1, -1, -1, 22, 23, 24, - -1, 69, 70, 71, 29, 73, 74, -1, -1, -1, - -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3, -1, -1, 49, 50, 8, 52, 53, -1, - -1, 56, -1, -1, 59, 17, -1, -1, -1, -1, - 22, 23, 24, -1, 69, 70, 71, 29, 73, 74, - -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 3, -1, -1, 49, 50, 8, - 52, 53, -1, -1, 56, -1, -1, 59, 17, -1, - -1, -1, -1, 22, 23, 24, -1, 69, 70, 71, - 29, 73, 74, -1, -1, -1, -1, 36, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 49, 50, 8, 52, 53, -1, -1, 56, -1, -1, - 59, 17, -1, -1, -1, -1, 22, 23, 24, -1, - 69, 70, 71, 29, 73, 74, -1, -1, 8, -1, - 36, 11, -1, -1, -1, -1, 8, 17, -1, -1, - -1, -1, 22, 23, 24, 17, -1, 53, -1, 29, - 22, 23, 24, 59, -1, -1, 36, 29, -1, 65, - -1, 8, -1, -1, 36, 71, -1, 73, 74, 75, - 17, -1, -1, 53, -1, 22, 23, 24, -1, 59, - -1, 53, 29, -1, -1, -1, -1, 59, -1, 36, - -1, 71, -1, 73, 74, 8, -1, -1, -1, 71, - -1, 73, 74, -1, 17, -1, 53, -1, -1, 22, - 23, 24, 59, -1, -1, -1, 29, -1, -1, -1, - 8, -1, -1, 36, 71, -1, 73, 74, 8, 17, - -1, -1, -1, -1, 22, 23, 24, 17, -1, -1, - 53, 29, 22, 23, 24, -1, 59, -1, 36, 29, - -1, -1, -1, 8, -1, -1, 36, -1, 71, -1, - 73, 74, 17, -1, -1, 53, -1, 22, 23, 24, - -1, 59, -1, 53, 29, -1, -1, -1, -1, 59, - -1, 36, -1, 71, -1, 73, 74, 8, -1, -1, - -1, 71, -1, 73, 74, -1, 17, 8, 53, -1, - -1, 22, 23, 24, 59, -1, 17, -1, 29, -1, - -1, 22, 23, 24, -1, 36, 71, -1, 29, 74, - -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, - 8, -1, 53, -1, -1, -1, -1, -1, -1, 17, - -1, -1, 53, -1, 22, 23, 24, -1, 59, -1, + -1, -1, -1, 3, -1, -1, 49, 50, 8, 52, + 53, -1, -1, 56, -1, -1, 59, 17, -1, -1, + 3, -1, 22, 23, 24, 8, 69, 70, 71, 29, + 73, 74, -1, -1, 17, -1, 36, -1, -1, 22, + 23, 24, -1, -1, -1, -1, 29, -1, -1, 49, + 50, 8, 52, 53, -1, -1, 56, -1, -1, 59, + 17, -1, -1, -1, -1, 22, 23, 24, -1, 69, + 70, 71, 29, 73, 74, -1, 59, -1, 8, 36, + -1, -1, -1, -1, -1, -1, -1, 17, 71, -1, + 73, 74, 22, 23, 24, -1, 53, -1, -1, 29, + -1, -1, 59, -1, -1, -1, 36, -1, 65, -1, + 8, -1, -1, -1, 71, -1, 73, 74, 75, 17, + -1, -1, -1, 53, 22, 23, 24, -1, -1, 59, + -1, 29, -1, -1, -1, 65, -1, 8, 36, -1, + 11, 71, -1, 73, 74, 75, 17, -1, -1, -1, + -1, 22, 23, 24, -1, 53, -1, -1, 29, -1, + -1, 59, -1, -1, -1, 36, -1, -1, -1, 8, + -1, -1, -1, 71, -1, 73, 74, 75, 17, -1, + 8, -1, 53, 22, 23, 24, -1, -1, 59, 17, + 29, -1, -1, -1, 22, 23, 24, 36, -1, -1, 71, 29, 73, 74, -1, -1, -1, -1, 36, -1, - 71, -1, -1, 74, -1, -1, 33, 34, -1, 36, - -1, 38, 39, 40, -1, 53, 43, 44, 45, 46, + -1, -1, 8, -1, 53, -1, -1, -1, -1, -1, + 59, 17, -1, -1, -1, 53, 22, 23, 24, -1, + -1, 59, 71, 29, 73, 74, -1, -1, 8, -1, + 36, -1, -1, 71, -1, 73, 74, 17, -1, -1, + -1, -1, 22, 23, 24, -1, -1, 53, -1, 29, + -1, -1, -1, 59, -1, 8, 36, -1, -1, -1, + -1, -1, -1, -1, 17, 71, -1, 73, 74, 22, + 23, 24, -1, 53, -1, -1, 29, -1, -1, 59, + -1, 8, -1, 36, -1, -1, -1, -1, -1, 8, + 17, 71, 11, 73, 74, 22, 23, 24, 17, -1, + 53, -1, 29, 22, 23, 24, 59, -1, -1, 36, + 29, -1, -1, -1, 8, -1, -1, 36, 71, -1, + 73, 74, 8, 17, -1, -1, 53, -1, 22, 23, + 24, 17, 59, -1, 53, 29, 22, 23, 24, -1, + -1, -1, 36, 29, 71, -1, -1, 74, -1, -1, + 36, -1, 71, -1, -1, 74, -1, -1, -1, 53, + -1, -1, -1, -1, -1, -1, -1, 53, -1, -1, + -1, -1, -1, 59, -1, -1, -1, 71, -1, 73, + 74, -1, -1, -1, -1, 71, 33, 34, 74, 36, + -1, 38, 39, 40, -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - -1, -1, -1, 71, -1, -1, 74, 33, 34, -1, - 36, -1, 38, 39, 40, 72, -1, 43, 44, 45, + -1, -1, -1, -1, -1, -1, 33, 34, -1, 36, + -1, 38, 39, 40, -1, 72, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 33, 34, -1, 36, -1, 38, 39, 40, -1, 66, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 33, 34, -1, 36, -1, 38, + 39, 40, -1, 66, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 33, 34, + -1, 36, -1, 38, 39, 40, -1, 66, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, -1, 33, 34, 60, 36, -1, 38, 39, + 40, -1, -1, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 33, 34, -1, + -1, -1, 38, 39, 40, -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 33, 34, -1, 36, -1, 38, 39, 40, -1, - 66, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 33, 34, -1, 36, -1, - 38, 39, 40, -1, 66, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 33, - 34, -1, 60, -1, 38, 39, 40, -1, -1, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 33, 34, -1, -1, -1, 38, 39, - 40, -1, -1, 43, 44, 45, 46, -1, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 34, -1, -1, - -1, 38, 39, 40, -1, -1, 43, 44, 45, 46, - -1, 48, 49, 50, 51, 52, 53, 54, 55, 56 + 56, 33, 34, -1, -1, -1, 38, 39, 40, -1, + -1, 43, 44, 45, 46, -1, 48, 49, 50, 51, + 52, 53, 54, 55, 56 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1492,71 +1497,72 @@ static const yytype_int16 yycheck[] = static const yytype_uint8 yystos[] = { 0, 77, 79, 80, 0, 25, 78, 25, 86, 24, - 73, 74, 140, 141, 81, 24, 88, 89, 3, 62, - 21, 82, 165, 24, 87, 213, 63, 3, 59, 63, - 83, 85, 140, 62, 1, 3, 6, 8, 9, 10, + 73, 74, 141, 142, 81, 24, 88, 89, 3, 62, + 21, 82, 166, 24, 87, 214, 63, 3, 59, 63, + 83, 85, 141, 62, 1, 3, 6, 8, 9, 10, 13, 15, 16, 17, 18, 19, 20, 22, 23, 27, 28, 29, 30, 31, 32, 36, 49, 50, 52, 53, 56, 59, 69, 70, 71, 90, 91, 92, 98, 110, - 113, 121, 124, 126, 127, 128, 129, 133, 137, 140, - 142, 143, 148, 149, 152, 155, 156, 157, 160, 163, - 164, 180, 185, 62, 9, 17, 21, 31, 32, 64, - 198, 24, 60, 83, 84, 3, 86, 88, 3, 137, - 139, 140, 17, 36, 53, 59, 140, 142, 147, 151, - 152, 153, 160, 139, 128, 133, 111, 59, 140, 158, - 128, 137, 114, 35, 67, 136, 71, 126, 185, 192, - 125, 136, 122, 59, 96, 97, 140, 59, 93, 138, - 140, 184, 127, 127, 127, 127, 127, 127, 36, 53, - 126, 134, 146, 152, 154, 160, 127, 127, 11, 126, - 191, 62, 59, 94, 184, 4, 33, 34, 36, 37, + 113, 121, 124, 126, 127, 128, 129, 134, 138, 141, + 143, 144, 149, 150, 153, 156, 157, 158, 161, 164, + 165, 181, 186, 62, 9, 17, 21, 31, 32, 64, + 199, 24, 60, 83, 84, 3, 86, 88, 3, 138, + 140, 141, 17, 36, 53, 59, 141, 143, 148, 152, + 153, 154, 161, 140, 128, 134, 111, 59, 141, 159, + 128, 138, 114, 35, 67, 137, 71, 126, 186, 193, + 125, 137, 122, 59, 96, 97, 141, 59, 93, 139, + 141, 185, 127, 127, 127, 127, 127, 127, 36, 53, + 126, 135, 147, 153, 155, 161, 127, 127, 11, 126, + 192, 62, 59, 94, 185, 4, 33, 34, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 67, 59, - 63, 71, 66, 59, 136, 1, 136, 5, 65, 75, - 141, 199, 59, 159, 199, 24, 199, 200, 199, 64, - 62, 189, 88, 59, 36, 59, 145, 151, 152, 153, - 154, 160, 145, 145, 63, 98, 107, 108, 109, 185, - 193, 11, 135, 140, 144, 145, 176, 177, 178, 59, - 67, 161, 112, 193, 24, 59, 68, 137, 170, 172, - 174, 145, 35, 53, 59, 68, 137, 169, 171, 172, - 173, 183, 112, 60, 97, 168, 145, 60, 93, 166, - 65, 75, 145, 8, 146, 60, 72, 72, 60, 94, - 65, 145, 126, 126, 126, 126, 126, 126, 126, 126, + 63, 71, 66, 59, 137, 1, 137, 5, 65, 75, + 142, 200, 59, 160, 200, 24, 200, 201, 200, 64, + 62, 190, 88, 59, 36, 59, 146, 152, 153, 154, + 155, 161, 146, 146, 63, 98, 107, 108, 109, 186, + 194, 11, 136, 141, 145, 146, 177, 178, 179, 59, + 67, 162, 112, 194, 24, 59, 68, 138, 171, 173, + 175, 146, 35, 53, 59, 68, 138, 170, 172, 173, + 174, 184, 112, 60, 97, 169, 146, 60, 93, 167, + 65, 75, 146, 8, 147, 60, 72, 72, 60, 94, + 65, 146, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, - 126, 126, 126, 130, 60, 134, 186, 59, 140, 126, - 191, 181, 126, 130, 1, 67, 91, 100, 179, 180, - 182, 185, 185, 126, 8, 17, 22, 23, 24, 29, - 36, 53, 65, 71, 141, 201, 203, 204, 205, 140, - 206, 214, 161, 59, 3, 201, 201, 83, 60, 178, - 8, 145, 60, 140, 35, 105, 5, 65, 62, 145, - 135, 144, 75, 190, 60, 178, 182, 115, 62, 63, - 24, 172, 59, 175, 62, 189, 72, 104, 59, 173, - 53, 173, 62, 189, 3, 197, 75, 145, 123, 62, - 189, 62, 189, 185, 138, 65, 36, 59, 145, 151, - 152, 153, 160, 67, 145, 145, 62, 189, 185, 65, - 67, 126, 131, 132, 187, 188, 11, 75, 190, 31, - 134, 72, 66, 179, 60, 188, 101, 62, 68, 36, - 59, 202, 203, 205, 59, 67, 71, 67, 8, 201, - 3, 50, 59, 140, 211, 212, 3, 72, 65, 11, - 201, 60, 75, 62, 194, 214, 62, 62, 62, 60, - 60, 106, 26, 26, 193, 176, 59, 140, 150, 151, - 152, 153, 154, 160, 162, 60, 68, 105, 193, 140, - 60, 178, 174, 68, 145, 7, 12, 68, 99, 102, - 173, 197, 173, 60, 171, 68, 137, 197, 35, 97, - 60, 93, 60, 185, 145, 130, 94, 95, 167, 184, - 60, 185, 130, 66, 75, 190, 68, 75, 190, 134, - 60, 60, 60, 191, 68, 182, 179, 201, 204, 194, - 24, 140, 141, 196, 201, 208, 216, 201, 140, 195, - 207, 215, 201, 3, 211, 62, 72, 201, 212, 201, - 197, 140, 206, 60, 182, 126, 126, 62, 178, 59, - 162, 116, 60, 186, 66, 103, 60, 60, 197, 104, - 60, 188, 62, 189, 145, 188, 126, 132, 131, 132, - 60, 72, 68, 60, 60, 59, 68, 62, 72, 201, - 68, 62, 49, 201, 62, 197, 59, 59, 201, 209, - 210, 68, 193, 60, 178, 119, 162, 5, 65, 66, - 75, 182, 197, 197, 68, 68, 95, 60, 68, 209, - 194, 208, 201, 197, 207, 211, 194, 194, 60, 14, - 117, 120, 126, 126, 60, 60, 60, 60, 162, 20, - 100, 66, 66, 209, 209, 118, 112, 105 + 126, 126, 126, 130, 60, 135, 187, 59, 141, 126, + 192, 182, 126, 130, 1, 67, 91, 100, 180, 181, + 183, 186, 186, 126, 8, 17, 22, 23, 24, 29, + 36, 53, 65, 71, 142, 202, 204, 205, 206, 141, + 207, 215, 162, 59, 3, 202, 202, 83, 60, 179, + 8, 146, 60, 141, 35, 105, 5, 65, 62, 146, + 136, 145, 75, 191, 60, 179, 183, 115, 62, 63, + 24, 173, 59, 176, 62, 190, 72, 104, 59, 174, + 53, 174, 62, 190, 3, 198, 75, 146, 123, 62, + 190, 62, 190, 186, 139, 65, 36, 59, 146, 152, + 153, 154, 161, 67, 146, 146, 62, 190, 186, 65, + 67, 126, 131, 132, 188, 189, 11, 75, 191, 31, + 135, 72, 66, 180, 60, 189, 101, 62, 68, 36, + 59, 203, 204, 206, 59, 67, 71, 67, 8, 202, + 3, 50, 59, 141, 212, 213, 3, 72, 65, 11, + 202, 60, 75, 62, 195, 215, 62, 62, 62, 60, + 60, 106, 26, 26, 194, 177, 59, 141, 151, 152, + 153, 154, 155, 161, 163, 60, 68, 105, 194, 141, + 60, 179, 175, 68, 146, 7, 12, 68, 99, 102, + 174, 198, 174, 60, 172, 68, 138, 198, 35, 97, + 60, 93, 60, 186, 146, 130, 94, 95, 168, 185, + 60, 186, 130, 66, 75, 191, 68, 75, 191, 135, + 60, 60, 60, 192, 68, 183, 180, 202, 205, 195, + 24, 141, 142, 197, 202, 209, 217, 202, 141, 196, + 208, 216, 202, 3, 212, 62, 72, 202, 213, 202, + 198, 141, 207, 60, 183, 126, 126, 62, 179, 59, + 163, 116, 60, 187, 66, 103, 60, 60, 198, 104, + 60, 189, 62, 190, 146, 189, 67, 126, 133, 131, + 132, 60, 72, 68, 60, 60, 59, 68, 62, 72, + 202, 68, 62, 49, 202, 62, 198, 59, 59, 202, + 210, 211, 68, 194, 60, 179, 119, 163, 5, 65, + 66, 75, 183, 198, 198, 68, 68, 95, 60, 68, + 130, 210, 195, 209, 202, 198, 208, 212, 195, 195, + 60, 14, 117, 120, 126, 126, 189, 60, 60, 60, + 60, 163, 20, 100, 66, 66, 68, 210, 210, 118, + 112, 105 }; #define yyerrok (yyerrstatus = 0) @@ -1586,35 +1592,62 @@ static const yytype_uint8 yystos[] = #define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - YYPOPSTACK (yylen); \ - yystate = *yyssp; \ - goto yybackup; \ - } \ - else \ - { \ +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY && yylen == 1) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (1); \ + goto yybackup; \ + } \ + else \ + { \ yyerror (YY_("syntax error: cannot back up")); \ YYERROR; \ } \ while (YYID (0)) -/* Error token number */ + #define YYTERROR 1 #define YYERRCODE 256 +/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (YYID (N)) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (YYID (0)) +#endif + + /* This macro is provided for backward compatibility. */ + #ifndef YY_LOCATION_PRINT # define YY_LOCATION_PRINT(File, Loc) ((void) 0) #endif /* YYLEX -- calling `yylex' with the right arguments. */ + #ifdef YYLEX_PARAM # define YYLEX yylex (YYLEX_PARAM) #else @@ -1664,8 +1697,6 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep) YYSTYPE const * const yyvaluep; #endif { - FILE *yyo = yyoutput; - YYUSE (yyo); if (!yyvaluep) return; # ifdef YYPRINT @@ -1917,12 +1948,12 @@ static int yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken) { - YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); YYSIZE_T yysize = yysize0; YYSIZE_T yysize1; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ - const char *yyformat = YY_NULL; + const char *yyformat = 0; /* Arguments of yyformat. */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; /* Number of reported tokens (one for the "unexpected", one per @@ -1982,7 +2013,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, break; } yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); + yysize1 = yysize + yytnamerr (0, yytname[yyx]); if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) return 2; @@ -2074,22 +2105,27 @@ yydestruct (yymsg, yytype, yyvaluep) } +/* Prevent warnings from -Wmissing-prototypes. */ +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ /* The lookahead symbol. */ int yychar, yystate; - -#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN -# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN -# define YY_IGNORE_MAYBE_UNINITIALIZED_END -#endif -#ifndef YY_INITIAL_VALUE -# define YY_INITIAL_VALUE(Value) /* Nothing. */ -#endif - /* The semantic value of the lookahead symbol. */ -YYSTYPE yylval YY_INITIAL_VALUE(yyval_default); +YYSTYPE yylval; /* Number of syntax errors so far. */ int yynerrs; @@ -2128,7 +2164,7 @@ yyparse () `yyss': related to states. `yyvs': related to semantic values. - Refer to the stacks through separate pointers, to allow yyoverflow + Refer to the stacks thru separate pointers, to allow yyoverflow to reallocate them elsewhere. */ /* The state stack. */ @@ -2146,7 +2182,7 @@ yyparse () int yyn; int yyresult; /* Lookahead token as an internal (translated) token number. */ - int yytoken = 0; + int yytoken; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; @@ -2164,8 +2200,9 @@ yyparse () Keep to zero when no symbol should be popped. */ int yylen = 0; - yyssp = yyss = yyssa; - yyvsp = yyvs = yyvsa; + yytoken = 0; + yyss = yyssa; + yyvs = yyvsa; yystacksize = YYINITDEPTH; YYDPRINTF ((stderr, "Starting parse\n")); @@ -2174,6 +2211,14 @@ yyparse () yyerrstatus = 0; yynerrs = 0; yychar = YYEMPTY; /* Cause a token to be read. */ + + /* Initialize stack pointers. + Waste one element of value and location stack + so that they stay on the same level as the state stack. + The wasted elements are never initialized. */ + yyssp = yyss; + yyvsp = yyvs; + goto yysetstate; /*------------------------------------------------------------. @@ -2314,9 +2359,7 @@ yybackup: yychar = YYEMPTY; yystate = yyn; - YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; - YY_IGNORE_MAYBE_UNINITIALIZED_END goto yynewstate; @@ -2353,7 +2396,8 @@ yyreduce: switch (yyn) { case 2: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 128 "go.y" { xtop = concat(xtop, (yyvsp[(4) - (4)].list)); @@ -2361,7 +2405,8 @@ yyreduce: break; case 3: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 134 "go.y" { prevlineno = lineno; @@ -2372,7 +2417,8 @@ yyreduce: break; case 4: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 141 "go.y" { mkpackage((yyvsp[(2) - (3)].sym)->name); @@ -2380,7 +2426,8 @@ yyreduce: break; case 5: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 151 "go.y" { importpkg = runtimepkg; @@ -2394,7 +2441,8 @@ yyreduce: break; case 6: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 162 "go.y" { importpkg = nil; @@ -2402,7 +2450,8 @@ yyreduce: break; case 12: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 176 "go.y" { Pkg *ipkg; @@ -2439,7 +2488,8 @@ yyreduce: break; case 13: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 209 "go.y" { // When an invalid import path is passed to importfile, @@ -2452,7 +2502,8 @@ yyreduce: break; case 16: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 224 "go.y" { // import with original name @@ -2463,7 +2514,8 @@ yyreduce: break; case 17: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 231 "go.y" { // import with given name @@ -2474,7 +2526,8 @@ yyreduce: break; case 18: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 238 "go.y" { // import into my name space @@ -2485,7 +2538,8 @@ yyreduce: break; case 19: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 247 "go.y" { if(importpkg->name == nil) { @@ -2501,7 +2555,8 @@ yyreduce: break; case 21: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 261 "go.y" { if(strcmp((yyvsp[(1) - (1)].sym)->name, "safe") == 0) @@ -2510,7 +2565,8 @@ yyreduce: break; case 22: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 267 "go.y" { defercheckwidth(); @@ -2518,7 +2574,8 @@ yyreduce: break; case 23: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 271 "go.y" { resumecheckwidth(); @@ -2527,7 +2584,8 @@ yyreduce: break; case 24: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 280 "go.y" { yyerror("empty top-level declaration"); @@ -2536,7 +2594,8 @@ yyreduce: break; case 26: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 286 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); @@ -2544,7 +2603,8 @@ yyreduce: break; case 27: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 290 "go.y" { yyerror("non-declaration statement outside function body"); @@ -2553,7 +2613,8 @@ yyreduce: break; case 28: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 295 "go.y" { (yyval.list) = nil; @@ -2561,7 +2622,8 @@ yyreduce: break; case 29: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 301 "go.y" { (yyval.list) = (yyvsp[(2) - (2)].list); @@ -2569,7 +2631,8 @@ yyreduce: break; case 30: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 305 "go.y" { (yyval.list) = (yyvsp[(3) - (5)].list); @@ -2577,7 +2640,8 @@ yyreduce: break; case 31: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 309 "go.y" { (yyval.list) = nil; @@ -2585,7 +2649,8 @@ yyreduce: break; case 32: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 313 "go.y" { (yyval.list) = (yyvsp[(2) - (2)].list); @@ -2595,7 +2660,8 @@ yyreduce: break; case 33: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 319 "go.y" { (yyval.list) = (yyvsp[(3) - (5)].list); @@ -2605,7 +2671,8 @@ yyreduce: break; case 34: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 325 "go.y" { (yyval.list) = concat((yyvsp[(3) - (7)].list), (yyvsp[(5) - (7)].list)); @@ -2615,7 +2682,8 @@ yyreduce: break; case 35: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 331 "go.y" { (yyval.list) = nil; @@ -2624,7 +2692,8 @@ yyreduce: break; case 36: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 336 "go.y" { (yyval.list) = list1((yyvsp[(2) - (2)].node)); @@ -2632,7 +2701,8 @@ yyreduce: break; case 37: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 340 "go.y" { (yyval.list) = (yyvsp[(3) - (5)].list); @@ -2640,7 +2710,8 @@ yyreduce: break; case 38: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 344 "go.y" { (yyval.list) = nil; @@ -2648,7 +2719,8 @@ yyreduce: break; case 39: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 350 "go.y" { iota = 0; @@ -2656,7 +2728,8 @@ yyreduce: break; case 40: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 356 "go.y" { (yyval.list) = variter((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node), nil); @@ -2664,7 +2737,8 @@ yyreduce: break; case 41: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 360 "go.y" { (yyval.list) = variter((yyvsp[(1) - (4)].list), (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].list)); @@ -2672,7 +2746,8 @@ yyreduce: break; case 42: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 364 "go.y" { (yyval.list) = variter((yyvsp[(1) - (3)].list), nil, (yyvsp[(3) - (3)].list)); @@ -2680,7 +2755,8 @@ yyreduce: break; case 43: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 370 "go.y" { (yyval.list) = constiter((yyvsp[(1) - (4)].list), (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].list)); @@ -2688,7 +2764,8 @@ yyreduce: break; case 44: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 374 "go.y" { (yyval.list) = constiter((yyvsp[(1) - (3)].list), N, (yyvsp[(3) - (3)].list)); @@ -2696,7 +2773,8 @@ yyreduce: break; case 46: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 381 "go.y" { (yyval.list) = constiter((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node), nil); @@ -2704,7 +2782,8 @@ yyreduce: break; case 47: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 385 "go.y" { (yyval.list) = constiter((yyvsp[(1) - (1)].list), N, nil); @@ -2712,7 +2791,8 @@ yyreduce: break; case 48: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 391 "go.y" { // different from dclname because the name @@ -2723,7 +2803,8 @@ yyreduce: break; case 49: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 400 "go.y" { (yyval.node) = typedcl1((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node), 1); @@ -2731,7 +2812,8 @@ yyreduce: break; case 50: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 406 "go.y" { (yyval.node) = (yyvsp[(1) - (1)].node); @@ -2739,7 +2821,8 @@ yyreduce: break; case 51: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 410 "go.y" { (yyval.node) = nod(OASOP, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -2748,7 +2831,8 @@ yyreduce: break; case 52: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 415 "go.y" { if((yyvsp[(1) - (3)].list)->next == nil && (yyvsp[(3) - (3)].list)->next == nil) { @@ -2764,7 +2848,8 @@ yyreduce: break; case 53: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 427 "go.y" { if((yyvsp[(3) - (3)].list)->n->op == OTYPESW) { @@ -2784,7 +2869,8 @@ yyreduce: break; case 54: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 443 "go.y" { (yyval.node) = nod(OASOP, (yyvsp[(1) - (2)].node), nodintconst(1)); @@ -2793,7 +2879,8 @@ yyreduce: break; case 55: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 448 "go.y" { (yyval.node) = nod(OASOP, (yyvsp[(1) - (2)].node), nodintconst(1)); @@ -2802,7 +2889,8 @@ yyreduce: break; case 56: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 455 "go.y" { Node *n, *nn; @@ -2826,7 +2914,8 @@ yyreduce: break; case 57: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 475 "go.y" { Node *n; @@ -2848,7 +2937,8 @@ yyreduce: break; case 58: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 493 "go.y" { // will be converted to OCASE @@ -2861,7 +2951,8 @@ yyreduce: break; case 59: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 502 "go.y" { Node *n, *nn; @@ -2881,7 +2972,8 @@ yyreduce: break; case 60: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 520 "go.y" { markdcl(); @@ -2889,7 +2981,8 @@ yyreduce: break; case 61: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 524 "go.y" { (yyval.node) = liststmt((yyvsp[(3) - (4)].list)); @@ -2898,7 +2991,8 @@ yyreduce: break; case 62: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 531 "go.y" { // If the last token read by the lexer was consumed @@ -2912,7 +3006,8 @@ yyreduce: break; case 63: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 541 "go.y" { int last; @@ -2935,7 +3030,8 @@ yyreduce: break; case 64: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 561 "go.y" { (yyval.list) = nil; @@ -2943,7 +3039,8 @@ yyreduce: break; case 65: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 565 "go.y" { (yyval.list) = list((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); @@ -2951,7 +3048,8 @@ yyreduce: break; case 66: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 571 "go.y" { markdcl(); @@ -2959,7 +3057,8 @@ yyreduce: break; case 67: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 575 "go.y" { (yyval.list) = (yyvsp[(3) - (4)].list); @@ -2968,7 +3067,8 @@ yyreduce: break; case 68: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 582 "go.y" { (yyval.node) = nod(ORANGE, N, (yyvsp[(4) - (4)].node)); @@ -2978,7 +3078,8 @@ yyreduce: break; case 69: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 588 "go.y" { (yyval.node) = nod(ORANGE, N, (yyvsp[(4) - (4)].node)); @@ -2989,7 +3090,8 @@ yyreduce: break; case 70: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 597 "go.y" { // init ; test ; incr @@ -3004,7 +3106,8 @@ yyreduce: break; case 71: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 608 "go.y" { // normal test @@ -3014,7 +3117,8 @@ yyreduce: break; case 73: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 617 "go.y" { (yyval.node) = (yyvsp[(1) - (2)].node); @@ -3023,7 +3127,8 @@ yyreduce: break; case 74: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 624 "go.y" { markdcl(); @@ -3031,7 +3136,8 @@ yyreduce: break; case 75: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 628 "go.y" { (yyval.node) = (yyvsp[(3) - (3)].node); @@ -3040,7 +3146,8 @@ yyreduce: break; case 76: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 635 "go.y" { // test @@ -3050,7 +3157,8 @@ yyreduce: break; case 77: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 641 "go.y" { // init ; test @@ -3062,7 +3170,8 @@ yyreduce: break; case 78: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 652 "go.y" { markdcl(); @@ -3070,7 +3179,8 @@ yyreduce: break; case 79: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 656 "go.y" { if((yyvsp[(3) - (3)].node)->ntest == N) @@ -3079,7 +3189,8 @@ yyreduce: break; case 80: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 661 "go.y" { (yyvsp[(3) - (5)].node)->nbody = (yyvsp[(5) - (5)].list); @@ -3087,7 +3198,8 @@ yyreduce: break; case 81: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 665 "go.y" { Node *n; @@ -3106,7 +3218,8 @@ yyreduce: break; case 82: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 682 "go.y" { markdcl(); @@ -3114,7 +3227,8 @@ yyreduce: break; case 83: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 686 "go.y" { if((yyvsp[(4) - (5)].node)->ntest == N) @@ -3125,7 +3239,8 @@ yyreduce: break; case 84: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 694 "go.y" { (yyval.list) = nil; @@ -3133,7 +3248,8 @@ yyreduce: break; case 85: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 698 "go.y" { (yyval.list) = concat((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); @@ -3141,7 +3257,8 @@ yyreduce: break; case 86: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 703 "go.y" { (yyval.list) = nil; @@ -3149,7 +3266,8 @@ yyreduce: break; case 87: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 707 "go.y" { NodeList *node; @@ -3162,7 +3280,8 @@ yyreduce: break; case 88: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 718 "go.y" { markdcl(); @@ -3170,7 +3289,8 @@ yyreduce: break; case 89: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 722 "go.y" { Node *n; @@ -3182,7 +3302,8 @@ yyreduce: break; case 90: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 730 "go.y" { (yyval.node) = (yyvsp[(3) - (7)].node); @@ -3194,7 +3315,8 @@ yyreduce: break; case 91: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 740 "go.y" { typesw = nod(OXXX, typesw, N); @@ -3202,7 +3324,8 @@ yyreduce: break; case 92: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 744 "go.y" { (yyval.node) = nod(OSELECT, N, N); @@ -3213,7 +3336,8 @@ yyreduce: break; case 94: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 757 "go.y" { (yyval.node) = nod(OOROR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3221,7 +3345,8 @@ yyreduce: break; case 95: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 761 "go.y" { (yyval.node) = nod(OANDAND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3229,7 +3354,8 @@ yyreduce: break; case 96: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 765 "go.y" { (yyval.node) = nod(OEQ, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3237,7 +3363,8 @@ yyreduce: break; case 97: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 769 "go.y" { (yyval.node) = nod(ONE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3245,7 +3372,8 @@ yyreduce: break; case 98: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 773 "go.y" { (yyval.node) = nod(OLT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3253,7 +3381,8 @@ yyreduce: break; case 99: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 777 "go.y" { (yyval.node) = nod(OLE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3261,7 +3390,8 @@ yyreduce: break; case 100: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 781 "go.y" { (yyval.node) = nod(OGE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3269,7 +3399,8 @@ yyreduce: break; case 101: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 785 "go.y" { (yyval.node) = nod(OGT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3277,7 +3408,8 @@ yyreduce: break; case 102: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 789 "go.y" { (yyval.node) = nod(OADD, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3285,7 +3417,8 @@ yyreduce: break; case 103: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 793 "go.y" { (yyval.node) = nod(OSUB, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3293,7 +3426,8 @@ yyreduce: break; case 104: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 797 "go.y" { (yyval.node) = nod(OOR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3301,7 +3435,8 @@ yyreduce: break; case 105: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 801 "go.y" { (yyval.node) = nod(OXOR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3309,7 +3444,8 @@ yyreduce: break; case 106: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 805 "go.y" { (yyval.node) = nod(OMUL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3317,7 +3453,8 @@ yyreduce: break; case 107: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 809 "go.y" { (yyval.node) = nod(ODIV, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3325,7 +3462,8 @@ yyreduce: break; case 108: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 813 "go.y" { (yyval.node) = nod(OMOD, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3333,7 +3471,8 @@ yyreduce: break; case 109: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 817 "go.y" { (yyval.node) = nod(OAND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3341,7 +3480,8 @@ yyreduce: break; case 110: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 821 "go.y" { (yyval.node) = nod(OANDNOT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3349,7 +3489,8 @@ yyreduce: break; case 111: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 825 "go.y" { (yyval.node) = nod(OLSH, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3357,7 +3498,8 @@ yyreduce: break; case 112: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 829 "go.y" { (yyval.node) = nod(ORSH, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3365,7 +3507,8 @@ yyreduce: break; case 113: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 834 "go.y" { (yyval.node) = nod(OSEND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); @@ -3373,7 +3516,8 @@ yyreduce: break; case 115: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 841 "go.y" { (yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N); @@ -3381,7 +3525,8 @@ yyreduce: break; case 116: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 845 "go.y" { if((yyvsp[(2) - (2)].node)->op == OCOMPLIT) { @@ -3396,7 +3541,8 @@ yyreduce: break; case 117: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 856 "go.y" { (yyval.node) = nod(OPLUS, (yyvsp[(2) - (2)].node), N); @@ -3404,7 +3550,8 @@ yyreduce: break; case 118: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 860 "go.y" { (yyval.node) = nod(OMINUS, (yyvsp[(2) - (2)].node), N); @@ -3412,7 +3559,8 @@ yyreduce: break; case 119: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 864 "go.y" { (yyval.node) = nod(ONOT, (yyvsp[(2) - (2)].node), N); @@ -3420,7 +3568,8 @@ yyreduce: break; case 120: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 868 "go.y" { yyerror("the bitwise complement operator is ^"); @@ -3429,7 +3578,8 @@ yyreduce: break; case 121: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 873 "go.y" { (yyval.node) = nod(OCOM, (yyvsp[(2) - (2)].node), N); @@ -3437,7 +3587,8 @@ yyreduce: break; case 122: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 877 "go.y" { (yyval.node) = nod(ORECV, (yyvsp[(2) - (2)].node), N); @@ -3445,7 +3596,8 @@ yyreduce: break; case 123: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 887 "go.y" { (yyval.node) = nod(OCALL, (yyvsp[(1) - (3)].node), N); @@ -3453,7 +3605,8 @@ yyreduce: break; case 124: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 891 "go.y" { (yyval.node) = nod(OCALL, (yyvsp[(1) - (5)].node), N); @@ -3462,7 +3615,8 @@ yyreduce: break; case 125: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 896 "go.y" { (yyval.node) = nod(OCALL, (yyvsp[(1) - (6)].node), N); @@ -3472,7 +3626,8 @@ yyreduce: break; case 126: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 904 "go.y" { (yyval.node) = nodlit((yyvsp[(1) - (1)].val)); @@ -3480,7 +3635,8 @@ yyreduce: break; case 128: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 909 "go.y" { if((yyvsp[(1) - (3)].node)->op == OPACK) { @@ -3495,7 +3651,8 @@ yyreduce: break; case 129: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 920 "go.y" { (yyval.node) = nod(ODOTTYPE, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node)); @@ -3503,7 +3660,8 @@ yyreduce: break; case 130: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 924 "go.y" { (yyval.node) = nod(OTYPESW, N, (yyvsp[(1) - (5)].node)); @@ -3511,7 +3669,8 @@ yyreduce: break; case 131: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 928 "go.y" { (yyval.node) = nod(OINDEX, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node)); @@ -3519,7 +3678,8 @@ yyreduce: break; case 132: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 932 "go.y" { (yyval.node) = nod(OSLICE, (yyvsp[(1) - (6)].node), nod(OKEY, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node))); @@ -3527,7 +3687,8 @@ yyreduce: break; case 134: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 937 "go.y" { // conversion @@ -3537,7 +3698,8 @@ yyreduce: break; case 135: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 943 "go.y" { (yyval.node) = (yyvsp[(3) - (5)].node); @@ -3548,7 +3710,8 @@ yyreduce: break; case 136: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 950 "go.y" { (yyval.node) = (yyvsp[(3) - (5)].node); @@ -3558,7 +3721,8 @@ yyreduce: break; case 137: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 956 "go.y" { yyerror("cannot parenthesize type in composite literal"); @@ -3569,7 +3733,8 @@ yyreduce: break; case 139: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 965 "go.y" { // composite expression. @@ -3579,16 +3744,39 @@ yyreduce: break; case 140: -/* Line 1778 of yacc.c */ + +/* Line 1806 of yacc.c */ #line 973 "go.y" { (yyval.node) = nod(OKEY, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; + case 141: + +/* Line 1806 of yacc.c */ +#line 979 "go.y" + { + // These nodes do not carry line numbers. + // Since a composite literal commonly spans several lines, + // the line number on errors may be misleading. + // Introduce a wrapper node to give the correct line. + (yyval.node) = (yyvsp[(1) - (1)].node); + switch((yyval.node)->op) { + case ONAME: + case ONONAME: + case OTYPE: + case OPACK: + case OLITERAL: + (yyval.node) = nod(OPAREN, (yyval.node), N); + } + } + break; + case 142: -/* Line 1778 of yacc.c */ -#line 980 "go.y" + +/* Line 1806 of yacc.c */ +#line 995 "go.y" { (yyval.node) = (yyvsp[(2) - (4)].node); (yyval.node)->list = (yyvsp[(3) - (4)].list); @@ -3596,8 +3784,19 @@ yyreduce: break; case 144: -/* Line 1778 of yacc.c */ -#line 988 "go.y" + +/* Line 1806 of yacc.c */ +#line 1003 "go.y" + { + (yyval.node) = (yyvsp[(2) - (4)].node); + (yyval.node)->list = (yyvsp[(3) - (4)].list); + } + break; + + case 146: + +/* Line 1806 of yacc.c */ +#line 1011 "go.y" { (yyval.node) = (yyvsp[(2) - (3)].node); @@ -3615,25 +3814,28 @@ yyreduce: } break; - case 148: -/* Line 1778 of yacc.c */ -#line 1013 "go.y" + case 150: + +/* Line 1806 of yacc.c */ +#line 1036 "go.y" { (yyval.i) = LBODY; } break; - case 149: -/* Line 1778 of yacc.c */ -#line 1017 "go.y" + case 151: + +/* Line 1806 of yacc.c */ +#line 1040 "go.y" { (yyval.i) = '{'; } break; - case 150: -/* Line 1778 of yacc.c */ -#line 1028 "go.y" + case 152: + +/* Line 1806 of yacc.c */ +#line 1051 "go.y" { if((yyvsp[(1) - (1)].sym) == S) (yyval.node) = N; @@ -3642,25 +3844,28 @@ yyreduce: } break; - case 151: -/* Line 1778 of yacc.c */ -#line 1037 "go.y" + case 153: + +/* Line 1806 of yacc.c */ +#line 1060 "go.y" { (yyval.node) = dclname((yyvsp[(1) - (1)].sym)); } break; - case 152: -/* Line 1778 of yacc.c */ -#line 1042 "go.y" + case 154: + +/* Line 1806 of yacc.c */ +#line 1065 "go.y" { (yyval.node) = N; } break; - case 154: -/* Line 1778 of yacc.c */ -#line 1049 "go.y" + case 156: + +/* Line 1806 of yacc.c */ +#line 1072 "go.y" { (yyval.sym) = (yyvsp[(1) - (1)].sym); // during imports, unqualified non-exported identifiers are from builtinpkg @@ -3669,17 +3874,19 @@ yyreduce: } break; - case 156: -/* Line 1778 of yacc.c */ -#line 1057 "go.y" + case 158: + +/* Line 1806 of yacc.c */ +#line 1080 "go.y" { (yyval.sym) = S; } break; - case 157: -/* Line 1778 of yacc.c */ -#line 1063 "go.y" + case 159: + +/* Line 1806 of yacc.c */ +#line 1086 "go.y" { Pkg *p; @@ -3694,9 +3901,10 @@ yyreduce: } break; - case 158: -/* Line 1778 of yacc.c */ -#line 1078 "go.y" + case 160: + +/* Line 1806 of yacc.c */ +#line 1101 "go.y" { (yyval.node) = oldname((yyvsp[(1) - (1)].sym)); if((yyval.node)->pack != N) @@ -3704,50 +3912,56 @@ yyreduce: } break; - case 160: -/* Line 1778 of yacc.c */ -#line 1098 "go.y" + case 162: + +/* Line 1806 of yacc.c */ +#line 1121 "go.y" { yyerror("final argument in variadic function missing type"); (yyval.node) = nod(ODDD, typenod(typ(TINTER)), N); } break; - case 161: -/* Line 1778 of yacc.c */ -#line 1103 "go.y" + case 163: + +/* Line 1806 of yacc.c */ +#line 1126 "go.y" { (yyval.node) = nod(ODDD, (yyvsp[(2) - (2)].node), N); } break; - case 167: -/* Line 1778 of yacc.c */ -#line 1114 "go.y" + case 169: + +/* Line 1806 of yacc.c */ +#line 1137 "go.y" { (yyval.node) = nod(OTPAREN, (yyvsp[(2) - (3)].node), N); } break; - case 171: -/* Line 1778 of yacc.c */ -#line 1123 "go.y" + case 173: + +/* Line 1806 of yacc.c */ +#line 1146 "go.y" { (yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N); } break; - case 176: -/* Line 1778 of yacc.c */ -#line 1133 "go.y" + case 178: + +/* Line 1806 of yacc.c */ +#line 1156 "go.y" { (yyval.node) = nod(OTPAREN, (yyvsp[(2) - (3)].node), N); } break; - case 186: -/* Line 1778 of yacc.c */ -#line 1154 "go.y" + case 188: + +/* Line 1806 of yacc.c */ +#line 1177 "go.y" { if((yyvsp[(1) - (3)].node)->op == OPACK) { Sym *s; @@ -3760,69 +3974,77 @@ yyreduce: } break; - case 187: -/* Line 1778 of yacc.c */ -#line 1167 "go.y" - { + case 189: + +/* Line 1806 of yacc.c */ +#line 1190 "go.y" + { (yyval.node) = nod(OTARRAY, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node)); } break; - case 188: -/* Line 1778 of yacc.c */ -#line 1171 "go.y" + case 190: + +/* Line 1806 of yacc.c */ +#line 1194 "go.y" { // array literal of nelem (yyval.node) = nod(OTARRAY, nod(ODDD, N, N), (yyvsp[(4) - (4)].node)); } break; - case 189: -/* Line 1778 of yacc.c */ -#line 1176 "go.y" + case 191: + +/* Line 1806 of yacc.c */ +#line 1199 "go.y" { (yyval.node) = nod(OTCHAN, (yyvsp[(2) - (2)].node), N); (yyval.node)->etype = Cboth; } break; - case 190: -/* Line 1778 of yacc.c */ -#line 1181 "go.y" + case 192: + +/* Line 1806 of yacc.c */ +#line 1204 "go.y" { (yyval.node) = nod(OTCHAN, (yyvsp[(3) - (3)].node), N); (yyval.node)->etype = Csend; } break; - case 191: -/* Line 1778 of yacc.c */ -#line 1186 "go.y" + case 193: + +/* Line 1806 of yacc.c */ +#line 1209 "go.y" { (yyval.node) = nod(OTMAP, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); } break; - case 194: -/* Line 1778 of yacc.c */ -#line 1194 "go.y" + case 196: + +/* Line 1806 of yacc.c */ +#line 1217 "go.y" { (yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N); } break; - case 195: -/* Line 1778 of yacc.c */ -#line 1200 "go.y" + case 197: + +/* Line 1806 of yacc.c */ +#line 1223 "go.y" { (yyval.node) = nod(OTCHAN, (yyvsp[(3) - (3)].node), N); (yyval.node)->etype = Crecv; } break; - case 196: -/* Line 1778 of yacc.c */ -#line 1207 "go.y" + case 198: + +/* Line 1806 of yacc.c */ +#line 1230 "go.y" { (yyval.node) = nod(OTSTRUCT, N, N); (yyval.node)->list = (yyvsp[(3) - (5)].list); @@ -3830,18 +4052,20 @@ yyreduce: } break; - case 197: -/* Line 1778 of yacc.c */ -#line 1213 "go.y" + case 199: + +/* Line 1806 of yacc.c */ +#line 1236 "go.y" { (yyval.node) = nod(OTSTRUCT, N, N); fixlbrace((yyvsp[(2) - (3)].i)); } break; - case 198: -/* Line 1778 of yacc.c */ -#line 1220 "go.y" + case 200: + +/* Line 1806 of yacc.c */ +#line 1243 "go.y" { (yyval.node) = nod(OTINTER, N, N); (yyval.node)->list = (yyvsp[(3) - (5)].list); @@ -3849,18 +4073,20 @@ yyreduce: } break; - case 199: -/* Line 1778 of yacc.c */ -#line 1226 "go.y" + case 201: + +/* Line 1806 of yacc.c */ +#line 1249 "go.y" { (yyval.node) = nod(OTINTER, N, N); fixlbrace((yyvsp[(2) - (3)].i)); } break; - case 200: -/* Line 1778 of yacc.c */ -#line 1237 "go.y" + case 202: + +/* Line 1806 of yacc.c */ +#line 1260 "go.y" { (yyval.node) = (yyvsp[(2) - (3)].node); if((yyval.node) == N) @@ -3871,9 +4097,10 @@ yyreduce: } break; - case 201: -/* Line 1778 of yacc.c */ -#line 1248 "go.y" + case 203: + +/* Line 1806 of yacc.c */ +#line 1271 "go.y" { Node *t; @@ -3904,9 +4131,10 @@ yyreduce: } break; - case 202: -/* Line 1778 of yacc.c */ -#line 1277 "go.y" + case 204: + +/* Line 1806 of yacc.c */ +#line 1300 "go.y" { Node *rcvr, *t; @@ -3946,9 +4174,10 @@ yyreduce: } break; - case 203: -/* Line 1778 of yacc.c */ -#line 1317 "go.y" + case 205: + +/* Line 1806 of yacc.c */ +#line 1340 "go.y" { Sym *s; Type *t; @@ -3975,9 +4204,10 @@ yyreduce: } break; - case 204: -/* Line 1778 of yacc.c */ -#line 1342 "go.y" + case 206: + +/* Line 1806 of yacc.c */ +#line 1365 "go.y" { (yyval.node) = methodname1(newname((yyvsp[(4) - (8)].sym)), (yyvsp[(2) - (8)].list)->n->right); (yyval.node)->type = functype((yyvsp[(2) - (8)].list)->n, (yyvsp[(6) - (8)].list), (yyvsp[(8) - (8)].list)); @@ -3995,9 +4225,10 @@ yyreduce: } break; - case 205: -/* Line 1778 of yacc.c */ -#line 1360 "go.y" + case 207: + +/* Line 1806 of yacc.c */ +#line 1383 "go.y" { (yyvsp[(3) - (5)].list) = checkarglist((yyvsp[(3) - (5)].list), 1); (yyval.node) = nod(OTFUNC, N, N); @@ -4006,17 +4237,19 @@ yyreduce: } break; - case 206: -/* Line 1778 of yacc.c */ -#line 1368 "go.y" + case 208: + +/* Line 1806 of yacc.c */ +#line 1391 "go.y" { (yyval.list) = nil; } break; - case 207: -/* Line 1778 of yacc.c */ -#line 1372 "go.y" + case 209: + +/* Line 1806 of yacc.c */ +#line 1395 "go.y" { (yyval.list) = (yyvsp[(2) - (3)].list); if((yyval.list) == nil) @@ -4024,67 +4257,75 @@ yyreduce: } break; - case 208: -/* Line 1778 of yacc.c */ -#line 1380 "go.y" + case 210: + +/* Line 1806 of yacc.c */ +#line 1403 "go.y" { (yyval.list) = nil; } break; - case 209: -/* Line 1778 of yacc.c */ -#line 1384 "go.y" + case 211: + +/* Line 1806 of yacc.c */ +#line 1407 "go.y" { (yyval.list) = list1(nod(ODCLFIELD, N, (yyvsp[(1) - (1)].node))); } break; - case 210: -/* Line 1778 of yacc.c */ -#line 1388 "go.y" + case 212: + +/* Line 1806 of yacc.c */ +#line 1411 "go.y" { (yyvsp[(2) - (3)].list) = checkarglist((yyvsp[(2) - (3)].list), 0); (yyval.list) = (yyvsp[(2) - (3)].list); } break; - case 211: -/* Line 1778 of yacc.c */ -#line 1395 "go.y" + case 213: + +/* Line 1806 of yacc.c */ +#line 1418 "go.y" { closurehdr((yyvsp[(1) - (1)].node)); } break; - case 212: -/* Line 1778 of yacc.c */ -#line 1401 "go.y" + case 214: + +/* Line 1806 of yacc.c */ +#line 1424 "go.y" { (yyval.node) = closurebody((yyvsp[(3) - (4)].list)); fixlbrace((yyvsp[(2) - (4)].i)); } break; - case 213: -/* Line 1778 of yacc.c */ -#line 1406 "go.y" + case 215: + +/* Line 1806 of yacc.c */ +#line 1429 "go.y" { (yyval.node) = closurebody(nil); } break; - case 214: -/* Line 1778 of yacc.c */ -#line 1417 "go.y" + case 216: + +/* Line 1806 of yacc.c */ +#line 1440 "go.y" { (yyval.list) = nil; } break; - case 215: -/* Line 1778 of yacc.c */ -#line 1421 "go.y" + case 217: + +/* Line 1806 of yacc.c */ +#line 1444 "go.y" { (yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list)); if(nsyntaxerrors == 0) @@ -4093,65 +4334,73 @@ yyreduce: } break; - case 217: -/* Line 1778 of yacc.c */ -#line 1431 "go.y" + case 219: + +/* Line 1806 of yacc.c */ +#line 1454 "go.y" { (yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); } break; - case 219: -/* Line 1778 of yacc.c */ -#line 1438 "go.y" + case 221: + +/* Line 1806 of yacc.c */ +#line 1461 "go.y" { (yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); } break; - case 220: -/* Line 1778 of yacc.c */ -#line 1444 "go.y" + case 222: + +/* Line 1806 of yacc.c */ +#line 1467 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 221: -/* Line 1778 of yacc.c */ -#line 1448 "go.y" + case 223: + +/* Line 1806 of yacc.c */ +#line 1471 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 223: -/* Line 1778 of yacc.c */ -#line 1455 "go.y" + case 225: + +/* Line 1806 of yacc.c */ +#line 1478 "go.y" { (yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); } break; - case 224: -/* Line 1778 of yacc.c */ -#line 1461 "go.y" + case 226: + +/* Line 1806 of yacc.c */ +#line 1484 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 225: -/* Line 1778 of yacc.c */ -#line 1465 "go.y" + case 227: + +/* Line 1806 of yacc.c */ +#line 1488 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 226: -/* Line 1778 of yacc.c */ -#line 1471 "go.y" + case 228: + +/* Line 1806 of yacc.c */ +#line 1494 "go.y" { NodeList *l; @@ -4176,18 +4425,20 @@ yyreduce: } break; - case 227: -/* Line 1778 of yacc.c */ -#line 1494 "go.y" + case 229: + +/* Line 1806 of yacc.c */ +#line 1517 "go.y" { (yyvsp[(1) - (2)].node)->val = (yyvsp[(2) - (2)].val); (yyval.list) = list1((yyvsp[(1) - (2)].node)); } break; - case 228: -/* Line 1778 of yacc.c */ -#line 1499 "go.y" + case 230: + +/* Line 1806 of yacc.c */ +#line 1522 "go.y" { (yyvsp[(2) - (4)].node)->val = (yyvsp[(4) - (4)].val); (yyval.list) = list1((yyvsp[(2) - (4)].node)); @@ -4195,9 +4446,10 @@ yyreduce: } break; - case 229: -/* Line 1778 of yacc.c */ -#line 1505 "go.y" + case 231: + +/* Line 1806 of yacc.c */ +#line 1528 "go.y" { (yyvsp[(2) - (3)].node)->right = nod(OIND, (yyvsp[(2) - (3)].node)->right, N); (yyvsp[(2) - (3)].node)->val = (yyvsp[(3) - (3)].val); @@ -4205,9 +4457,10 @@ yyreduce: } break; - case 230: -/* Line 1778 of yacc.c */ -#line 1511 "go.y" + case 232: + +/* Line 1806 of yacc.c */ +#line 1534 "go.y" { (yyvsp[(3) - (5)].node)->right = nod(OIND, (yyvsp[(3) - (5)].node)->right, N); (yyvsp[(3) - (5)].node)->val = (yyvsp[(5) - (5)].val); @@ -4216,9 +4469,10 @@ yyreduce: } break; - case 231: -/* Line 1778 of yacc.c */ -#line 1518 "go.y" + case 233: + +/* Line 1806 of yacc.c */ +#line 1541 "go.y" { (yyvsp[(3) - (5)].node)->right = nod(OIND, (yyvsp[(3) - (5)].node)->right, N); (yyvsp[(3) - (5)].node)->val = (yyvsp[(5) - (5)].val); @@ -4227,9 +4481,10 @@ yyreduce: } break; - case 232: -/* Line 1778 of yacc.c */ -#line 1527 "go.y" + case 234: + +/* Line 1806 of yacc.c */ +#line 1550 "go.y" { Node *n; @@ -4240,9 +4495,10 @@ yyreduce: } break; - case 233: -/* Line 1778 of yacc.c */ -#line 1536 "go.y" + case 235: + +/* Line 1806 of yacc.c */ +#line 1559 "go.y" { Pkg *pkg; @@ -4257,43 +4513,48 @@ yyreduce: } break; - case 234: -/* Line 1778 of yacc.c */ -#line 1551 "go.y" + case 236: + +/* Line 1806 of yacc.c */ +#line 1574 "go.y" { (yyval.node) = embedded((yyvsp[(1) - (1)].sym)); } break; - case 235: -/* Line 1778 of yacc.c */ -#line 1557 "go.y" + case 237: + +/* Line 1806 of yacc.c */ +#line 1580 "go.y" { (yyval.node) = nod(ODCLFIELD, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); ifacedcl((yyval.node)); } break; - case 236: -/* Line 1778 of yacc.c */ -#line 1562 "go.y" + case 238: + +/* Line 1806 of yacc.c */ +#line 1585 "go.y" { (yyval.node) = nod(ODCLFIELD, N, oldname((yyvsp[(1) - (1)].sym))); } break; - case 237: -/* Line 1778 of yacc.c */ -#line 1566 "go.y" + case 239: + +/* Line 1806 of yacc.c */ +#line 1589 "go.y" { (yyval.node) = nod(ODCLFIELD, N, oldname((yyvsp[(2) - (3)].sym))); yyerror("cannot parenthesize embedded type"); } break; - case 238: -/* Line 1778 of yacc.c */ -#line 1573 "go.y" + case 240: + +/* Line 1806 of yacc.c */ +#line 1596 "go.y" { // without func keyword (yyvsp[(2) - (4)].list) = checkarglist((yyvsp[(2) - (4)].list), 1); @@ -4303,9 +4564,10 @@ yyreduce: } break; - case 240: -/* Line 1778 of yacc.c */ -#line 1587 "go.y" + case 242: + +/* Line 1806 of yacc.c */ +#line 1610 "go.y" { (yyval.node) = nod(ONONAME, N, N); (yyval.node)->sym = (yyvsp[(1) - (2)].sym); @@ -4313,9 +4575,10 @@ yyreduce: } break; - case 241: -/* Line 1778 of yacc.c */ -#line 1593 "go.y" + case 243: + +/* Line 1806 of yacc.c */ +#line 1616 "go.y" { (yyval.node) = nod(ONONAME, N, N); (yyval.node)->sym = (yyvsp[(1) - (2)].sym); @@ -4323,74 +4586,83 @@ yyreduce: } break; - case 243: -/* Line 1778 of yacc.c */ -#line 1602 "go.y" + case 245: + +/* Line 1806 of yacc.c */ +#line 1625 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 244: -/* Line 1778 of yacc.c */ -#line 1606 "go.y" + case 246: + +/* Line 1806 of yacc.c */ +#line 1629 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 245: -/* Line 1778 of yacc.c */ -#line 1611 "go.y" + case 247: + +/* Line 1806 of yacc.c */ +#line 1634 "go.y" { (yyval.list) = nil; } break; - case 246: -/* Line 1778 of yacc.c */ -#line 1615 "go.y" + case 248: + +/* Line 1806 of yacc.c */ +#line 1638 "go.y" { (yyval.list) = (yyvsp[(1) - (2)].list); } break; - case 247: -/* Line 1778 of yacc.c */ -#line 1623 "go.y" + case 249: + +/* Line 1806 of yacc.c */ +#line 1646 "go.y" { (yyval.node) = N; } break; - case 249: -/* Line 1778 of yacc.c */ -#line 1628 "go.y" + case 251: + +/* Line 1806 of yacc.c */ +#line 1651 "go.y" { (yyval.node) = liststmt((yyvsp[(1) - (1)].list)); } break; - case 251: -/* Line 1778 of yacc.c */ -#line 1633 "go.y" + case 253: + +/* Line 1806 of yacc.c */ +#line 1656 "go.y" { (yyval.node) = N; } break; - case 257: -/* Line 1778 of yacc.c */ -#line 1644 "go.y" + case 259: + +/* Line 1806 of yacc.c */ +#line 1667 "go.y" { (yyvsp[(1) - (2)].node) = nod(OLABEL, (yyvsp[(1) - (2)].node), N); (yyvsp[(1) - (2)].node)->sym = dclstack; // context, for goto restrictions } break; - case 258: -/* Line 1778 of yacc.c */ -#line 1649 "go.y" + case 260: + +/* Line 1806 of yacc.c */ +#line 1672 "go.y" { NodeList *l; @@ -4402,59 +4674,66 @@ yyreduce: } break; - case 259: -/* Line 1778 of yacc.c */ -#line 1659 "go.y" + case 261: + +/* Line 1806 of yacc.c */ +#line 1682 "go.y" { // will be converted to OFALL (yyval.node) = nod(OXFALL, N, N); } break; - case 260: -/* Line 1778 of yacc.c */ -#line 1664 "go.y" + case 262: + +/* Line 1806 of yacc.c */ +#line 1687 "go.y" { (yyval.node) = nod(OBREAK, (yyvsp[(2) - (2)].node), N); } break; - case 261: -/* Line 1778 of yacc.c */ -#line 1668 "go.y" + case 263: + +/* Line 1806 of yacc.c */ +#line 1691 "go.y" { (yyval.node) = nod(OCONTINUE, (yyvsp[(2) - (2)].node), N); } break; - case 262: -/* Line 1778 of yacc.c */ -#line 1672 "go.y" + case 264: + +/* Line 1806 of yacc.c */ +#line 1695 "go.y" { (yyval.node) = nod(OPROC, (yyvsp[(2) - (2)].node), N); } break; - case 263: -/* Line 1778 of yacc.c */ -#line 1676 "go.y" + case 265: + +/* Line 1806 of yacc.c */ +#line 1699 "go.y" { (yyval.node) = nod(ODEFER, (yyvsp[(2) - (2)].node), N); } break; - case 264: -/* Line 1778 of yacc.c */ -#line 1680 "go.y" + case 266: + +/* Line 1806 of yacc.c */ +#line 1703 "go.y" { (yyval.node) = nod(OGOTO, (yyvsp[(2) - (2)].node), N); (yyval.node)->sym = dclstack; // context, for goto restrictions } break; - case 265: -/* Line 1778 of yacc.c */ -#line 1685 "go.y" + case 267: + +/* Line 1806 of yacc.c */ +#line 1708 "go.y" { (yyval.node) = nod(ORETURN, N, N); (yyval.node)->list = (yyvsp[(2) - (2)].list); @@ -4473,9 +4752,10 @@ yyreduce: } break; - case 266: -/* Line 1778 of yacc.c */ -#line 1704 "go.y" + case 268: + +/* Line 1806 of yacc.c */ +#line 1727 "go.y" { (yyval.list) = nil; if((yyvsp[(1) - (1)].node) != N) @@ -4483,9 +4763,10 @@ yyreduce: } break; - case 267: -/* Line 1778 of yacc.c */ -#line 1710 "go.y" + case 269: + +/* Line 1806 of yacc.c */ +#line 1733 "go.y" { (yyval.list) = (yyvsp[(1) - (3)].list); if((yyvsp[(3) - (3)].node) != N) @@ -4493,217 +4774,244 @@ yyreduce: } break; - case 268: -/* Line 1778 of yacc.c */ -#line 1718 "go.y" + case 270: + +/* Line 1806 of yacc.c */ +#line 1741 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 269: -/* Line 1778 of yacc.c */ -#line 1722 "go.y" + case 271: + +/* Line 1806 of yacc.c */ +#line 1745 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 270: -/* Line 1778 of yacc.c */ -#line 1728 "go.y" + case 272: + +/* Line 1806 of yacc.c */ +#line 1751 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 271: -/* Line 1778 of yacc.c */ -#line 1732 "go.y" + case 273: + +/* Line 1806 of yacc.c */ +#line 1755 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 272: -/* Line 1778 of yacc.c */ -#line 1738 "go.y" + case 274: + +/* Line 1806 of yacc.c */ +#line 1761 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 273: -/* Line 1778 of yacc.c */ -#line 1742 "go.y" + case 275: + +/* Line 1806 of yacc.c */ +#line 1765 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 274: -/* Line 1778 of yacc.c */ -#line 1748 "go.y" + case 276: + +/* Line 1806 of yacc.c */ +#line 1771 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 275: -/* Line 1778 of yacc.c */ -#line 1752 "go.y" + case 277: + +/* Line 1806 of yacc.c */ +#line 1775 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 276: -/* Line 1778 of yacc.c */ -#line 1761 "go.y" + case 278: + +/* Line 1806 of yacc.c */ +#line 1784 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 277: -/* Line 1778 of yacc.c */ -#line 1765 "go.y" + case 279: + +/* Line 1806 of yacc.c */ +#line 1788 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 278: -/* Line 1778 of yacc.c */ -#line 1769 "go.y" + case 280: + +/* Line 1806 of yacc.c */ +#line 1792 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 279: -/* Line 1778 of yacc.c */ -#line 1773 "go.y" + case 281: + +/* Line 1806 of yacc.c */ +#line 1796 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 280: -/* Line 1778 of yacc.c */ -#line 1778 "go.y" + case 282: + +/* Line 1806 of yacc.c */ +#line 1801 "go.y" { (yyval.list) = nil; } break; - case 281: -/* Line 1778 of yacc.c */ -#line 1782 "go.y" + case 283: + +/* Line 1806 of yacc.c */ +#line 1805 "go.y" { (yyval.list) = (yyvsp[(1) - (2)].list); } break; - case 286: -/* Line 1778 of yacc.c */ -#line 1796 "go.y" + case 288: + +/* Line 1806 of yacc.c */ +#line 1819 "go.y" { (yyval.node) = N; } break; - case 288: -/* Line 1778 of yacc.c */ -#line 1802 "go.y" + case 290: + +/* Line 1806 of yacc.c */ +#line 1825 "go.y" { (yyval.list) = nil; } break; - case 290: -/* Line 1778 of yacc.c */ -#line 1808 "go.y" + case 292: + +/* Line 1806 of yacc.c */ +#line 1831 "go.y" { (yyval.node) = N; } break; - case 292: -/* Line 1778 of yacc.c */ -#line 1814 "go.y" + case 294: + +/* Line 1806 of yacc.c */ +#line 1837 "go.y" { (yyval.list) = nil; } break; - case 294: -/* Line 1778 of yacc.c */ -#line 1820 "go.y" + case 296: + +/* Line 1806 of yacc.c */ +#line 1843 "go.y" { (yyval.list) = nil; } break; - case 296: -/* Line 1778 of yacc.c */ -#line 1826 "go.y" + case 298: + +/* Line 1806 of yacc.c */ +#line 1849 "go.y" { (yyval.list) = nil; } break; - case 298: -/* Line 1778 of yacc.c */ -#line 1832 "go.y" + case 300: + +/* Line 1806 of yacc.c */ +#line 1855 "go.y" { (yyval.val).ctype = CTxxx; } break; - case 300: -/* Line 1778 of yacc.c */ -#line 1842 "go.y" + case 302: + +/* Line 1806 of yacc.c */ +#line 1865 "go.y" { importimport((yyvsp[(2) - (4)].sym), (yyvsp[(3) - (4)].val).u.sval); } break; - case 301: -/* Line 1778 of yacc.c */ -#line 1846 "go.y" + case 303: + +/* Line 1806 of yacc.c */ +#line 1869 "go.y" { importvar((yyvsp[(2) - (4)].sym), (yyvsp[(3) - (4)].type)); } break; - case 302: -/* Line 1778 of yacc.c */ -#line 1850 "go.y" + case 304: + +/* Line 1806 of yacc.c */ +#line 1873 "go.y" { importconst((yyvsp[(2) - (5)].sym), types[TIDEAL], (yyvsp[(4) - (5)].node)); } break; - case 303: -/* Line 1778 of yacc.c */ -#line 1854 "go.y" + case 305: + +/* Line 1806 of yacc.c */ +#line 1877 "go.y" { importconst((yyvsp[(2) - (6)].sym), (yyvsp[(3) - (6)].type), (yyvsp[(5) - (6)].node)); } break; - case 304: -/* Line 1778 of yacc.c */ -#line 1858 "go.y" + case 306: + +/* Line 1806 of yacc.c */ +#line 1881 "go.y" { importtype((yyvsp[(2) - (4)].type), (yyvsp[(3) - (4)].type)); } break; - case 305: -/* Line 1778 of yacc.c */ -#line 1862 "go.y" + case 307: + +/* Line 1806 of yacc.c */ +#line 1885 "go.y" { if((yyvsp[(2) - (4)].node) == N) { dclcontext = PEXTERN; // since we skip the funcbody below @@ -4723,35 +5031,39 @@ yyreduce: } break; - case 306: -/* Line 1778 of yacc.c */ -#line 1882 "go.y" + case 308: + +/* Line 1806 of yacc.c */ +#line 1905 "go.y" { (yyval.sym) = (yyvsp[(1) - (1)].sym); structpkg = (yyval.sym)->pkg; } break; - case 307: -/* Line 1778 of yacc.c */ -#line 1889 "go.y" + case 309: + +/* Line 1806 of yacc.c */ +#line 1912 "go.y" { (yyval.type) = pkgtype((yyvsp[(1) - (1)].sym)); importsym((yyvsp[(1) - (1)].sym), OTYPE); } break; - case 313: -/* Line 1778 of yacc.c */ -#line 1909 "go.y" + case 315: + +/* Line 1806 of yacc.c */ +#line 1932 "go.y" { (yyval.type) = pkgtype((yyvsp[(1) - (1)].sym)); } break; - case 314: -/* Line 1778 of yacc.c */ -#line 1913 "go.y" + case 316: + +/* Line 1806 of yacc.c */ +#line 1936 "go.y" { // predefined name like uint8 (yyvsp[(1) - (1)].sym) = pkglookup((yyvsp[(1) - (1)].sym)->name, builtinpkg); @@ -4763,57 +5075,64 @@ yyreduce: } break; - case 315: -/* Line 1778 of yacc.c */ -#line 1923 "go.y" + case 317: + +/* Line 1806 of yacc.c */ +#line 1946 "go.y" { (yyval.type) = aindex(N, (yyvsp[(3) - (3)].type)); } break; - case 316: -/* Line 1778 of yacc.c */ -#line 1927 "go.y" + case 318: + +/* Line 1806 of yacc.c */ +#line 1950 "go.y" { (yyval.type) = aindex(nodlit((yyvsp[(2) - (4)].val)), (yyvsp[(4) - (4)].type)); } break; - case 317: -/* Line 1778 of yacc.c */ -#line 1931 "go.y" + case 319: + +/* Line 1806 of yacc.c */ +#line 1954 "go.y" { (yyval.type) = maptype((yyvsp[(3) - (5)].type), (yyvsp[(5) - (5)].type)); } break; - case 318: -/* Line 1778 of yacc.c */ -#line 1935 "go.y" + case 320: + +/* Line 1806 of yacc.c */ +#line 1958 "go.y" { (yyval.type) = tostruct((yyvsp[(3) - (4)].list)); } break; - case 319: -/* Line 1778 of yacc.c */ -#line 1939 "go.y" + case 321: + +/* Line 1806 of yacc.c */ +#line 1962 "go.y" { (yyval.type) = tointerface((yyvsp[(3) - (4)].list)); } break; - case 320: -/* Line 1778 of yacc.c */ -#line 1943 "go.y" + case 322: + +/* Line 1806 of yacc.c */ +#line 1966 "go.y" { (yyval.type) = ptrto((yyvsp[(2) - (2)].type)); } break; - case 321: -/* Line 1778 of yacc.c */ -#line 1947 "go.y" + case 323: + +/* Line 1806 of yacc.c */ +#line 1970 "go.y" { (yyval.type) = typ(TCHAN); (yyval.type)->type = (yyvsp[(2) - (2)].type); @@ -4821,9 +5140,10 @@ yyreduce: } break; - case 322: -/* Line 1778 of yacc.c */ -#line 1953 "go.y" + case 324: + +/* Line 1806 of yacc.c */ +#line 1976 "go.y" { (yyval.type) = typ(TCHAN); (yyval.type)->type = (yyvsp[(3) - (4)].type); @@ -4831,9 +5151,10 @@ yyreduce: } break; - case 323: -/* Line 1778 of yacc.c */ -#line 1959 "go.y" + case 325: + +/* Line 1806 of yacc.c */ +#line 1982 "go.y" { (yyval.type) = typ(TCHAN); (yyval.type)->type = (yyvsp[(3) - (3)].type); @@ -4841,9 +5162,10 @@ yyreduce: } break; - case 324: -/* Line 1778 of yacc.c */ -#line 1967 "go.y" + case 326: + +/* Line 1806 of yacc.c */ +#line 1990 "go.y" { (yyval.type) = typ(TCHAN); (yyval.type)->type = (yyvsp[(3) - (3)].type); @@ -4851,17 +5173,19 @@ yyreduce: } break; - case 325: -/* Line 1778 of yacc.c */ -#line 1975 "go.y" + case 327: + +/* Line 1806 of yacc.c */ +#line 1998 "go.y" { (yyval.type) = functype(nil, (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list)); } break; - case 326: -/* Line 1778 of yacc.c */ -#line 1981 "go.y" + case 328: + +/* Line 1806 of yacc.c */ +#line 2004 "go.y" { (yyval.node) = nod(ODCLFIELD, N, typenod((yyvsp[(2) - (3)].type))); if((yyvsp[(1) - (3)].sym)) @@ -4870,9 +5194,10 @@ yyreduce: } break; - case 327: -/* Line 1778 of yacc.c */ -#line 1988 "go.y" + case 329: + +/* Line 1806 of yacc.c */ +#line 2011 "go.y" { Type *t; @@ -4888,9 +5213,10 @@ yyreduce: } break; - case 328: -/* Line 1778 of yacc.c */ -#line 2004 "go.y" + case 330: + +/* Line 1806 of yacc.c */ +#line 2027 "go.y" { Sym *s; @@ -4908,57 +5234,64 @@ yyreduce: } break; - case 329: -/* Line 1778 of yacc.c */ -#line 2022 "go.y" + case 331: + +/* Line 1806 of yacc.c */ +#line 2045 "go.y" { (yyval.node) = nod(ODCLFIELD, newname((yyvsp[(1) - (5)].sym)), typenod(functype(fakethis(), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list)))); } break; - case 330: -/* Line 1778 of yacc.c */ -#line 2026 "go.y" + case 332: + +/* Line 1806 of yacc.c */ +#line 2049 "go.y" { (yyval.node) = nod(ODCLFIELD, N, typenod((yyvsp[(1) - (1)].type))); } break; - case 331: -/* Line 1778 of yacc.c */ -#line 2031 "go.y" + case 333: + +/* Line 1806 of yacc.c */ +#line 2054 "go.y" { (yyval.list) = nil; } break; - case 333: -/* Line 1778 of yacc.c */ -#line 2038 "go.y" + case 335: + +/* Line 1806 of yacc.c */ +#line 2061 "go.y" { (yyval.list) = (yyvsp[(2) - (3)].list); } break; - case 334: -/* Line 1778 of yacc.c */ -#line 2042 "go.y" + case 336: + +/* Line 1806 of yacc.c */ +#line 2065 "go.y" { (yyval.list) = list1(nod(ODCLFIELD, N, typenod((yyvsp[(1) - (1)].type)))); } break; - case 335: -/* Line 1778 of yacc.c */ -#line 2052 "go.y" + case 337: + +/* Line 1806 of yacc.c */ +#line 2075 "go.y" { (yyval.node) = nodlit((yyvsp[(1) - (1)].val)); } break; - case 336: -/* Line 1778 of yacc.c */ -#line 2056 "go.y" + case 338: + +/* Line 1806 of yacc.c */ +#line 2079 "go.y" { (yyval.node) = nodlit((yyvsp[(2) - (2)].val)); switch((yyval.node)->val.ctype){ @@ -4975,9 +5308,10 @@ yyreduce: } break; - case 337: -/* Line 1778 of yacc.c */ -#line 2071 "go.y" + case 339: + +/* Line 1806 of yacc.c */ +#line 2094 "go.y" { (yyval.node) = oldname(pkglookup((yyvsp[(1) - (1)].sym)->name, builtinpkg)); if((yyval.node)->op != OLITERAL) @@ -4985,9 +5319,10 @@ yyreduce: } break; - case 339: -/* Line 1778 of yacc.c */ -#line 2080 "go.y" + case 341: + +/* Line 1806 of yacc.c */ +#line 2103 "go.y" { if((yyvsp[(2) - (5)].node)->val.ctype == CTRUNE && (yyvsp[(4) - (5)].node)->val.ctype == CTINT) { (yyval.node) = (yyvsp[(2) - (5)].node); @@ -5000,57 +5335,64 @@ yyreduce: } break; - case 342: -/* Line 1778 of yacc.c */ -#line 2096 "go.y" + case 344: + +/* Line 1806 of yacc.c */ +#line 2119 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 343: -/* Line 1778 of yacc.c */ -#line 2100 "go.y" + case 345: + +/* Line 1806 of yacc.c */ +#line 2123 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 344: -/* Line 1778 of yacc.c */ -#line 2106 "go.y" + case 346: + +/* Line 1806 of yacc.c */ +#line 2129 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 345: -/* Line 1778 of yacc.c */ -#line 2110 "go.y" + case 347: + +/* Line 1806 of yacc.c */ +#line 2133 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; - case 346: -/* Line 1778 of yacc.c */ -#line 2116 "go.y" + case 348: + +/* Line 1806 of yacc.c */ +#line 2139 "go.y" { (yyval.list) = list1((yyvsp[(1) - (1)].node)); } break; - case 347: -/* Line 1778 of yacc.c */ -#line 2120 "go.y" + case 349: + +/* Line 1806 of yacc.c */ +#line 2143 "go.y" { (yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; -/* Line 1778 of yacc.c */ -#line 5055 "y.tab.c" + +/* Line 1806 of yacc.c */ +#line 5397 "y.tab.c" default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -5213,9 +5555,7 @@ yyerrlab1: YY_STACK_PRINT (yyss, yyssp); } - YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; - YY_IGNORE_MAYBE_UNINITIALIZED_END /* Shift the error token. */ @@ -5239,7 +5579,7 @@ yyabortlab: yyresult = 1; goto yyreturn; -#if !defined yyoverflow || YYERROR_VERBOSE +#if !defined(yyoverflow) || YYERROR_VERBOSE /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ @@ -5281,8 +5621,9 @@ yyreturn: } -/* Line 2041 of yacc.c */ -#line 2124 "go.y" + +/* Line 2067 of yacc.c */ +#line 2147 "go.y" static void @@ -5295,3 +5636,4 @@ fixlbrace(int lbr) loophack = 1; } + diff --git a/src/cmd/gc/y.tab.h b/src/cmd/gc/y.tab.h index 1ed0ff293a..6eeb831b25 100644 --- a/src/cmd/gc/y.tab.h +++ b/src/cmd/gc/y.tab.h @@ -1,8 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.6.5. */ +/* A Bison parser, made by GNU Bison 2.5. */ /* Bison interface for Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,15 +30,6 @@ This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ -#ifndef YY_YY_Y_TAB_H_INCLUDED -# define YY_YY_Y_TAB_H_INCLUDED -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif -#if YYDEBUG -extern int yydebug; -#endif /* Tokens. */ #ifndef YYTOKENTYPE @@ -150,10 +141,12 @@ extern int yydebug; + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE { -/* Line 2042 of yacc.c */ + +/* Line 2068 of yacc.c */ #line 28 "go.y" Node* node; @@ -164,8 +157,9 @@ typedef union YYSTYPE int i; -/* Line 2042 of yacc.c */ -#line 169 "y.tab.h" + +/* Line 2068 of yacc.c */ +#line 163 "y.tab.h" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -174,18 +168,4 @@ typedef union YYSTYPE extern YYSTYPE yylval; -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ -#endif /* !YY_YY_Y_TAB_H_INCLUDED */ diff --git a/src/cmd/gc/yerr.h b/src/cmd/gc/yerr.h index ff8410ba0a..e7d357f7ca 100644 --- a/src/cmd/gc/yerr.h +++ b/src/cmd/gc/yerr.h @@ -71,6 +71,6 @@ static struct { 112, LNAME, "nested func not allowed", - 639, ';', + 641, ';', "else must be followed by if or statement block" }; diff --git a/test/fixedbugs/issue3925.go b/test/fixedbugs/issue3925.go new file mode 100644 index 0000000000..2f8786fc78 --- /dev/null +++ b/test/fixedbugs/issue3925.go @@ -0,0 +1,23 @@ +// errorcheck + +// Copyright 2012 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Issue 3925: wrong line number for error message "missing key in map literal" + +// also a test for correct line number in other malformed composite literals. + +package foo + +var _ = map[string]string{ + "1": "2", + "3", "4", // ERROR "missing key" +} + +var _ = []string{ + "foo", + "bar", + 20, // ERROR "cannot use" +} + -- 2.48.1