]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/internal/gc: accept map literals with omitted key type
authorRuss Cox <rsc@golang.org>
Tue, 19 May 2015 20:49:47 +0000 (16:49 -0400)
committerGerrit Code Review <noreply-gerritcodereview@google.com>
Thu, 4 Jun 2015 02:31:38 +0000 (02:31 +0000)
Fixes #10209.

Change-Id: I248434f9195c868befd1ed8a6000a9cac72d1df8
Reviewed-on: https://go-review.googlesource.com/10263
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/cmd/compile/internal/gc/go.y
src/cmd/compile/internal/gc/typecheck.go
src/cmd/compile/internal/gc/y.go
src/cmd/compile/internal/gc/y.output [deleted file]
test/complit1.go

index 23b4240ad690284dd41b1a4512146f424c8c3489..e1f92c1f7b09c115b4367cad3a7d443b24296a20 100644 (file)
@@ -1080,7 +1080,7 @@ start_complit:
        }
 
 keyval:
-       expr ':' complitexpr
+       complitexpr ':' complitexpr
        {
                $$ = Nod(OKEY, $1, $3);
        }
index 2db50c4f47495d1728d703d503532514e6a0a4e6..fbbae4d508241ed936f9586109aa87dbef863712 100644 (file)
@@ -3056,9 +3056,11 @@ func typecheckcomplit(np **Node) {
                                continue
                        }
 
-                       typecheck(&l.Left, Erv)
-                       defaultlit(&l.Left, t.Down)
-                       l.Left = assignconv(l.Left, t.Down, "map key")
+                       r = l.Left
+                       pushtype(r, t.Down)
+                       typecheck(&r, Erv)
+                       defaultlit(&r, t.Down)
+                       l.Left = assignconv(r, t.Down, "map key")
                        if l.Left.Op != OCONV {
                                keydup(l.Left, hash)
                        }
index 6bc34834e3bdf89ee0a631354a90b1932d5a5ce4..132ca28dc686eec242dd4e2a69937ddb29178b2d 100644 (file)
@@ -229,57 +229,63 @@ var yyExca = [...]int{
        63, 236,
        69, 236,
        -2, 157,
-       -1, 407,
+       -1, 403,
+       67, 144,
+       -2, 142,
+       -1, 408,
        36, 176,
        60, 176,
        68, 176,
        -2, 167,
-       -1, 408,
+       -1, 409,
        36, 177,
        60, 177,
        68, 177,
        -2, 168,
-       -1, 409,
+       -1, 410,
        36, 178,
        60, 178,
        68, 178,
        -2, 169,
-       -1, 410,
+       -1, 411,
        36, 179,
        60, 179,
        68, 179,
        -2, 170,
-       -1, 416,
+       -1, 417,
        8, 251,
        13, 251,
        63, 251,
        69, 251,
        -2, 0,
-       -1, 417,
+       -1, 418,
        63, 251,
        69, 251,
        -2, 0,
-       -1, 497,
+       -1, 498,
        63, 251,
        69, 251,
        -2, 0,
-       -1, 552,
+       -1, 553,
        60, 157,
        -2, 318,
-       -1, 553,
+       -1, 554,
        60, 158,
        -2, 317,
-       -1, 578,
+       -1, 579,
        8, 251,
        13, 251,
        63, 251,
        69, 251,
        -2, 0,
-       -1, 592,
+       -1, 593,
        36, 180,
        60, 180,
        68, 180,
        -2, 171,
+       -1, 632,
+       67, 145,
+       -2, 143,
 }
 
 const yyNprod = 352
@@ -288,327 +294,331 @@ const yyPrivate = 57344
 var yyTokenNames []string
 var yyStates []string
 
-const yyLast = 2282
+const yyLast = 2321
 
 var yyAct = [...]int{
 
-       74, 381, 304, 285, 291, 486, 610, 398, 545, 478,
-       549, 296, 186, 75, 400, 229, 302, 401, 103, 389,
-       458, 356, 290, 318, 457, 34, 303, 338, 230, 245,
-       466, 109, 339, 101, 337, 332, 85, 104, 374, 248,
-       246, 174, 467, 286, 14, 324, 479, 328, 241, 212,
-       108, 6, 325, 155, 243, 469, 226, 181, 468, 516,
-       413, 320, 373, 392, 325, 219, 13, 208, 176, 10,
-       11, 584, 172, 469, 651, 385, 599, 583, 106, 191,
-       13, 177, 460, 541, 422, 160, 310, 331, 613, 161,
-       309, 446, 192, 322, 193, 626, 327, 162, 198, 321,
-       88, 12, 13, 10, 227, 238, 662, 194, 317, 227,
-       632, 448, 227, 12, 13, 227, 209, 228, 12, 13,
-       447, 10, 228, 203, 175, 228, 108, 393, 228, 461,
-       54, 660, 205, 445, 184, 384, 222, 460, 459, 204,
-       199, 200, 239, 88, 506, 155, 214, 216, 218, 507,
-       427, 631, 12, 13, 233, 625, 624, 202, 10, 88,
-       90, 176, 55, 288, 10, 627, 213, 213, 213, 213,
-       12, 13, 118, 118, 177, 295, 126, 154, 308, 176,
-       10, 416, 282, 282, 461, 282, 603, 620, 416, 10,
-       600, 227, 177, 301, 593, 416, 227, 227, 404, 227,
-       280, 484, 444, 90, 228, 622, 536, 12, 13, 228,
-       228, 506, 228, 12, 13, 86, 507, 175, 527, 90,
-       298, 163, 164, 165, 166, 167, 168, 169, 170, 12,
-       13, 523, 227, 580, 515, 175, 182, 153, 12, 13,
-       242, 171, 325, 397, 416, 228, 330, 155, 227, 334,
-       415, 227, 227, 116, 227, 185, 358, 367, 463, 371,
-       360, 228, 355, 362, 228, 228, 353, 228, 183, 365,
-       210, 322, 504, 369, 434, 314, 68, 321, 91, 379,
-       614, 78, 416, 340, 609, 340, 340, 376, 375, 182,
-       124, 12, 13, 604, 176, 83, 79, 10, 394, 325,
-       407, 336, 82, 351, 352, 10, 378, 177, 380, 414,
-       227, 227, 601, 408, 574, 409, 608, 10, 568, 558,
-       227, 183, 48, 228, 228, 465, 10, 464, 410, 391,
-       323, 329, 67, 228, 331, 348, 443, 656, 442, 412,
-       293, 163, 170, 605, 77, 436, 12, 13, 12, 13,
-       175, 424, 423, 234, 12, 13, 388, 383, 370, 366,
-       359, 114, 435, 333, 655, 227, 12, 13, 100, 129,
-       441, 99, 10, 490, 227, 12, 13, 439, 228, 84,
-       454, 20, 453, 429, 432, 480, 491, 228, 492, 654,
-       173, 10, 508, 473, 176, 10, 653, 645, 511, 619,
-       188, 493, 483, 494, 616, 607, 227, 177, 221, 282,
-       514, 606, 227, 597, 282, 519, 520, 340, 340, 228,
-       596, 12, 13, 227, 595, 228, 110, 498, 340, 489,
-       107, 510, 502, 592, 525, 449, 228, 582, 517, 227,
-       12, 13, 562, 524, 12, 13, 470, 539, 528, 531,
-       175, 522, 228, 254, 513, 512, 255, 256, 257, 258,
-       259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
-       269, 270, 271, 272, 273, 274, 129, 129, 277, 554,
-       559, 227, 330, 173, 537, 294, 509, 557, 561, 227,
-       69, 564, 532, 538, 228, 534, 490, 490, 496, 495,
-       482, 572, 228, 300, 476, 475, 472, 176, 440, 491,
-       491, 492, 492, 567, 573, 340, 10, 340, 420, 553,
-       177, 577, 372, 340, 493, 493, 340, 590, 591, 579,
-       297, 585, 570, 540, 586, 542, 456, 551, 431, 438,
-       249, 555, 340, 571, 556, 354, 253, 129, 251, 180,
-       431, 102, 489, 489, 382, 323, 501, 530, 287, 129,
-       566, 117, 7, 175, 70, 12, 13, 329, 5, 197,
-       431, 227, 211, 433, 24, 16, 529, 19, 617, 430,
-       650, 455, 364, 533, 228, 428, 560, 480, 305, 335,
-       207, 206, 21, 93, 197, 623, 252, 629, 490, 197,
-       282, 630, 197, 635, 120, 197, 26, 386, 121, 125,
-       637, 491, 340, 492, 641, 639, 173, 340, 621, 402,
-       57, 565, 306, 76, 402, 618, 493, 158, 176, 642,
-       598, 387, 511, 340, 157, 602, 640, 665, 652, 581,
-       28, 177, 390, 643, 223, 644, 490, 159, 156, 235,
-       96, 657, 240, 661, 489, 497, 578, 417, 98, 491,
-       663, 492, 94, 664, 122, 122, 31, 22, 667, 666,
-       340, 15, 97, 95, 493, 553, 23, 201, 340, 49,
-       18, 197, 594, 129, 175, 3, 197, 197, 636, 197,
-       129, 282, 8, 551, 4, 2, 1, 450, 215, 543,
-       544, 547, 489, 548, 611, 92, 487, 129, 129, 189,
-       80, 81, 437, 72, 71, 237, 173, 615, 477, 316,
-       188, 220, 197, 326, 340, 244, 128, 340, 648, 628,
-       649, 311, 127, 17, 399, 319, 312, 313, 197, 315,
-       25, 197, 197, 27, 197, 36, 633, 634, 78, 37,
-       281, 66, 111, 638, 39, 38, 35, 124, 279, 278,
-       73, 217, 83, 79, 10, 113, 587, 149, 503, 82,
-       505, 87, 363, 0, 123, 0, 232, 150, 0, 0,
-       9, 151, 141, 142, 143, 144, 145, 146, 147, 148,
-       197, 377, 56, 196, 89, 0, 0, 0, 0, 231,
-       197, 197, 0, 0, 0, 105, 105, 112, 115, 0,
-       197, 77, 0, 12, 13, 426, 119, 119, 0, 0,
-       119, 0, 575, 576, 0, 0, 0, 0, 0, 173,
-       0, 0, 0, 275, 276, 0, 283, 0, 0, 402,
-       406, 588, 402, 402, 0, 0, 0, 0, 0, 0,
-       418, 419, 0, 0, 0, 197, 0, 0, 78, 0,
-       425, 89, 0, 197, 197, 0, 0, 124, 0, 0,
-       0, 0, 83, 79, 10, 0, 0, 105, 149, 82,
-       0, 0, 105, 0, 0, 112, 232, 0, 150, 247,
-       0, 0, 151, 0, 0, 0, 197, 145, 146, 147,
-       148, 0, 197, 196, 361, 406, 0, 188, 0, 231,
-       0, 0, 0, 197, 0, 236, 368, 78, 0, 0,
-       250, 77, 0, 12, 13, 225, 124, 0, 0, 197,
-       0, 83, 79, 10, 0, 0, 292, 0, 82, 0,
-       0, 0, 0, 0, 0, 232, 311, 0, 646, 647,
-       173, 0, 521, 402, 0, 0, 0, 0, 0, 56,
-       0, 0, 196, 526, 0, 0, 0, 0, 231, 0,
-       0, 197, 0, 0, 119, 119, 0, 0, 0, 197,
-       77, 0, 12, 13, 0, 0, 197, 197, 0, 0,
-       0, 0, 134, 149, 357, 152, 0, 135, 139, 140,
-       105, 0, 138, 150, 137, 136, 133, 151, 141, 142,
-       143, 144, 145, 146, 147, 148, 0, 56, 0, 0,
-       0, 569, 0, 0, 0, 0, 247, 56, 247, 0,
-       68, 0, 0, 0, 413, 78, 0, 0, 0, 78,
-       474, 0, 0, 0, 124, 0, 0, 481, 124, 83,
-       79, 10, 0, 83, 79, 10, 82, 0, 0, 0,
-       82, 197, 0, 65, 275, 276, 0, 232, 0, 0,
-       0, 0, 0, 0, 0, 0, 60, 61, 0, 64,
-       58, 0, 0, 59, 196, 0, 67, 0, 197, 421,
-       488, 0, 0, 0, 403, 0, 62, 63, 77, 0,
-       12, 13, 77, 0, 12, 13, 0, 68, 89, 0,
-       0, 0, 78, 0, 0, 0, 0, 0, 0, 0,
-       0, 124, 0, 347, 0, 462, 83, 79, 10, 357,
-       0, 0, 349, 82, 105, 0, 197, 345, 343, 341,
-       65, 105, 0, 0, 344, 112, 0, 485, 247, 0,
-       0, 348, 0, 60, 61, 0, 64, 58, 0, 0,
-       59, 0, 0, 67, 0, 0, 0, 78, 346, 0,
-       0, 589, 0, 62, 63, 77, 124, 12, 13, 0,
-       350, 83, 79, 10, 0, 0, 342, 0, 82, 13,
-       0, 56, 56, 0, 0, 232, 0, 0, 0, 119,
-       0, 119, 0, 0, 0, 0, 0, 0, 0, 535,
-       0, 119, 196, 247, 0, 0, 0, 0, 231, 0,
-       0, 0, 546, 550, 0, 0, 0, 0, 0, 0,
-       77, 357, 12, 13, 462, 0, 0, 0, 462, 0,
-       0, 0, 0, 563, 357, 0, 0, 0, 0, 0,
-       0, 0, 307, 0, 68, 0, 0, 41, 0, 78,
-       47, 42, 0, 247, 44, 0, 40, 50, 124, 43,
-       45, 53, 56, 83, 79, 10, 0, 0, 46, 52,
-       82, 51, 32, 30, 0, 0, 0, 65, 0, 0,
-       0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       60, 61, 0, 64, 58, 0, 0, 59, 0, 0,
-       67, 0, 0, 0, 0, 0, 0, 0, 308, 0,
-       62, 63, 77, 0, 12, 13, 0, 0, 0, 0,
+       74, 304, 381, 291, 487, 611, 459, 285, 546, 229,
+       398, 467, 34, 296, 75, 302, 402, 550, 290, 186,
+       286, 479, 458, 356, 400, 401, 389, 338, 103, 318,
+       328, 245, 303, 339, 324, 243, 337, 468, 101, 374,
+       109, 104, 248, 85, 14, 246, 241, 174, 480, 212,
+       6, 181, 325, 155, 470, 469, 325, 385, 332, 517,
+       108, 627, 414, 373, 13, 208, 585, 11, 176, 461,
+       470, 172, 584, 461, 652, 600, 230, 219, 392, 191,
+       106, 322, 177, 542, 226, 322, 423, 321, 193, 88,
+       10, 321, 13, 192, 10, 310, 317, 309, 154, 160,
+       447, 12, 13, 161, 227, 12, 13, 446, 198, 227,
+       10, 162, 227, 320, 209, 227, 462, 384, 228, 663,
+       462, 626, 625, 228, 55, 460, 228, 155, 184, 228,
+       203, 628, 205, 633, 199, 200, 108, 632, 204, 12,
+       13, 222, 393, 12, 13, 86, 214, 216, 218, 90,
+       604, 239, 175, 10, 449, 194, 233, 88, 153, 12,
+       13, 176, 661, 213, 213, 213, 213, 288, 155, 282,
+       282, 601, 282, 537, 417, 177, 445, 280, 10, 176,
+       621, 528, 295, 163, 164, 165, 166, 167, 168, 169,
+       170, 227, 417, 177, 417, 301, 227, 227, 594, 227,
+       485, 88, 12, 13, 185, 228, 417, 524, 48, 308,
+       228, 228, 416, 228, 202, 347, 516, 90, 472, 448,
+       405, 428, 10, 242, 349, 171, 298, 12, 13, 345,
+       343, 341, 227, 581, 507, 330, 344, 507, 182, 508,
+       519, 397, 508, 348, 116, 175, 228, 367, 227, 334,
+       464, 227, 227, 360, 227, 129, 325, 355, 371, 210,
+       346, 90, 228, 175, 353, 228, 228, 362, 228, 182,
+       183, 12, 13, 54, 435, 314, 173, 10, 342, 358,
+       340, 13, 340, 340, 91, 379, 188, 378, 325, 380,
+       376, 331, 365, 375, 176, 623, 369, 394, 505, 417,
+       408, 183, 610, 163, 170, 12, 13, 605, 177, 410,
+       227, 227, 415, 238, 409, 118, 118, 602, 575, 126,
+       227, 569, 559, 331, 228, 228, 12, 13, 466, 465,
+       391, 444, 327, 443, 228, 437, 425, 12, 13, 254,
+       413, 388, 255, 256, 257, 258, 259, 260, 261, 262,
+       263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+       273, 274, 129, 129, 277, 227, 440, 383, 370, 173,
+       366, 294, 359, 491, 227, 424, 411, 442, 175, 228,
+       10, 455, 493, 333, 454, 436, 100, 492, 228, 300,
+       99, 84, 10, 509, 176, 481, 282, 512, 474, 20,
+       657, 282, 656, 655, 499, 495, 614, 227, 177, 503,
+       654, 484, 10, 227, 340, 340, 234, 515, 520, 521,
+       646, 228, 620, 617, 227, 340, 608, 228, 221, 12,
+       13, 607, 511, 129, 526, 430, 433, 69, 228, 518,
+       227, 12, 13, 598, 597, 129, 596, 293, 96, 494,
+       525, 593, 583, 563, 228, 529, 98, 490, 540, 532,
+       94, 12, 13, 523, 514, 513, 510, 560, 538, 558,
+       97, 95, 330, 323, 329, 539, 497, 496, 175, 483,
+       555, 477, 227, 476, 10, 473, 441, 562, 432, 421,
+       227, 372, 297, 386, 565, 615, 228, 491, 491, 606,
+       571, 573, 173, 92, 228, 403, 493, 493, 176, 10,
+       403, 492, 492, 340, 574, 340, 197, 554, 10, 114,
+       457, 340, 177, 434, 340, 572, 580, 439, 10, 578,
+       354, 591, 592, 12, 13, 253, 588, 568, 251, 180,
+       340, 197, 586, 587, 110, 533, 197, 609, 535, 197,
+       432, 348, 197, 107, 117, 382, 70, 502, 12, 13,
+       287, 7, 5, 102, 432, 211, 24, 12, 13, 129,
+       16, 19, 227, 494, 494, 651, 129, 12, 13, 431,
+       456, 490, 490, 364, 429, 561, 228, 335, 282, 207,
+       206, 618, 175, 129, 129, 624, 622, 120, 481, 491,
+       121, 125, 173, 636, 631, 630, 188, 619, 493, 21,
+       340, 638, 305, 492, 642, 340, 643, 306, 641, 336,
+       57, 351, 352, 640, 93, 644, 252, 645, 197, 176,
+       26, 340, 512, 197, 197, 28, 197, 76, 158, 387,
+       157, 666, 653, 177, 582, 390, 159, 491, 530, 156,
+       498, 658, 579, 662, 418, 534, 493, 31, 22, 15,
+       664, 492, 23, 665, 122, 122, 201, 18, 340, 197,
+       668, 3, 123, 554, 667, 494, 340, 8, 9, 282,
+       4, 2, 1, 490, 451, 197, 215, 544, 197, 197,
+       56, 197, 89, 566, 545, 548, 549, 612, 488, 323,
+       249, 531, 189, 105, 105, 112, 115, 80, 81, 576,
+       577, 329, 438, 175, 119, 119, 173, 72, 119, 71,
+       237, 478, 340, 494, 149, 340, 403, 316, 589, 403,
+       403, 490, 220, 326, 150, 244, 649, 197, 151, 141,
+       142, 143, 144, 145, 146, 147, 148, 197, 197, 629,
+       650, 127, 17, 450, 595, 399, 319, 197, 25, 89,
+       27, 36, 37, 78, 471, 281, 49, 66, 111, 39,
+       38, 35, 124, 279, 278, 105, 149, 83, 79, 10,
+       105, 73, 217, 112, 82, 113, 150, 247, 504, 616,
+       151, 232, 506, 87, 188, 145, 146, 147, 148, 0,
+       0, 0, 197, 0, 223, 0, 0, 0, 196, 235,
+       197, 197, 240, 128, 231, 0, 0, 0, 634, 635,
+       236, 0, 0, 0, 0, 639, 77, 0, 12, 13,
+       225, 0, 0, 0, 292, 647, 648, 173, 0, 0,
+       403, 0, 0, 0, 197, 0, 0, 0, 0, 0,
+       197, 0, 541, 0, 543, 0, 552, 56, 0, 0,
+       556, 197, 0, 557, 0, 0, 0, 347, 0, 0,
+       0, 0, 119, 119, 0, 0, 349, 197, 0, 567,
+       0, 345, 343, 341, 0, 0, 0, 0, 344, 0,
+       0, 311, 357, 0, 0, 348, 312, 313, 105, 315,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       0, 0, 29, 105, 68, 247, 0, 41, 0, 78,
-       47, 42, 0, 56, 44, 0, 40, 50, 33, 43,
-       45, 53, 0, 83, 79, 10, 0, 0, 46, 52,
-       82, 51, 32, 30, 0, 0, 546, 65, 0, 550,
-       357, 0, 0, 462, 0, 0, 0, 357, 0, 357,
-       60, 61, 0, 64, 58, 0, 0, 59, 0, 68,
-       67, 0, 0, 0, 78, 0, 0, 0, 0, 0,
-       62, 63, 77, 124, 12, 13, 0, 0, 83, 79,
-       10, 0, 500, 0, 0, 82, 0, 0, 0, 0,
+       0, 0, 346, 0, 0, 56, 0, 0, 613, 197,
+       275, 276, 0, 283, 247, 56, 247, 197, 0, 0,
+       342, 0, 363, 13, 197, 197, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 0, 0, 0, 0, 599,
+       0, 377, 134, 149, 603, 152, 0, 135, 139, 140,
+       0, 0, 138, 150, 137, 136, 133, 151, 141, 142,
+       143, 144, 145, 146, 147, 148, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 0, 0, 422, 0, 0,
+       0, 361, 0, 0, 414, 0, 0, 0, 0, 0,
+       407, 0, 0, 368, 0, 0, 89, 637, 0, 197,
+       419, 420, 552, 0, 0, 0, 0, 0, 0, 347,
+       426, 0, 0, 463, 0, 0, 0, 357, 349, 0,
+       0, 0, 105, 345, 343, 341, 197, 0, 0, 105,
+       344, 0, 0, 112, 0, 486, 247, 348, 0, 0,
+       0, 0, 0, 0, 0, 0, 134, 149, 0, 152,
+       0, 135, 139, 140, 346, 407, 138, 150, 137, 136,
+       133, 151, 141, 142, 143, 144, 145, 146, 147, 148,
+       0, 0, 342, 0, 197, 13, 0, 0, 0, 0,
+       56, 56, 0, 0, 0, 396, 0, 0, 119, 0,
+       119, 0, 0, 0, 0, 0, 0, 311, 536, 0,
+       119, 0, 247, 522, 0, 0, 0, 0, 0, 0,
+       0, 547, 551, 0, 527, 0, 0, 475, 0, 0,
+       357, 0, 0, 463, 482, 0, 0, 463, 0, 0,
+       0, 0, 564, 357, 0, 0, 0, 0, 0, 0,
+       0, 275, 276, 0, 0, 0, 0, 0, 307, 0,
+       68, 0, 247, 41, 0, 78, 47, 42, 0, 0,
+       44, 56, 40, 50, 124, 43, 45, 53, 0, 83,
+       79, 10, 570, 0, 46, 52, 82, 51, 32, 30,
+       0, 0, 0, 65, 0, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 0, 60, 61, 0, 64,
+       58, 0, 0, 59, 0, 0, 67, 0, 0, 0,
+       0, 0, 0, 0, 308, 0, 62, 63, 77, 0,
+       12, 13, 0, 0, 0, 0, 0, 0, 0, 0,
+       0, 29, 105, 68, 247, 0, 41, 0, 78, 47,
+       42, 0, 56, 44, 0, 40, 50, 33, 43, 45,
+       53, 0, 83, 79, 10, 0, 0, 46, 52, 82,
+       51, 32, 30, 0, 0, 547, 65, 0, 551, 357,
+       0, 0, 463, 0, 0, 0, 357, 0, 357, 60,
+       61, 0, 64, 58, 0, 0, 59, 0, 68, 67,
+       0, 0, 0, 78, 0, 0, 0, 0, 0, 62,
+       63, 77, 124, 12, 13, 0, 0, 83, 79, 10,
+       68, 0, 0, 0, 82, 78, 0, 0, 0, 0,
+       0, 65, 0, 0, 124, 0, 0, 0, 0, 83,
+       79, 10, 0, 0, 60, 61, 82, 64, 58, 0,
+       0, 59, 0, 68, 67, 0, 0, 0, 78, 0,
+       0, 0, 404, 0, 62, 63, 77, 124, 12, 13,
+       0, 0, 83, 79, 10, 0, 67, 0, 0, 82,
+       0, 0, 0, 0, 0, 0, 65, 0, 77, 0,
+       12, 13, 0, 0, 0, 0, 0, 0, 0, 60,
+       61, 0, 64, 58, 0, 0, 59, 0, 68, 67,
+       0, 0, 0, 78, 0, 0, 0, 590, 0, 62,
+       63, 77, 124, 12, 13, 0, 0, 83, 79, 10,
+       0, 501, 0, 0, 82, 0, 0, 0, 0, 0,
+       0, 65, 0, 0, 0, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 60, 61, 0, 64, 58, 0,
+       0, 59, 0, 68, 67, 0, 0, 0, 78, 0,
+       0, 0, 0, 0, 62, 63, 77, 124, 12, 13,
+       0, 0, 83, 79, 10, 0, 500, 0, 0, 82,
+       0, 0, 0, 0, 0, 0, 65, 0, 0, 0,
+       0, 0, 0, 0, 0, 0, 0, 0, 0, 60,
+       61, 0, 64, 58, 0, 0, 59, 0, 68, 67,
+       0, 0, 0, 78, 0, 0, 0, 78, 0, 62,
+       63, 77, 124, 12, 13, 0, 124, 83, 79, 10,
+       0, 83, 79, 10, 82, 0, 395, 0, 82, 0,
+       0, 179, 0, 0, 0, 232, 0, 0, 0, 0,
+       0, 68, 0, 0, 60, 61, 78, 64, 178, 0,
+       0, 59, 196, 0, 67, 124, 0, 0, 489, 0,
+       83, 79, 10, 0, 62, 63, 77, 82, 12, 13,
+       77, 0, 12, 13, 179, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 0, 0, 60, 61, 0,
+       64, 178, 0, 0, 59, 0, 68, 67, 289, 0,
+       0, 78, 0, 0, 0, 0, 0, 62, 63, 77,
+       124, 12, 13, 0, 0, 83, 79, 10, 0, 284,
+       0, 0, 82, 0, 0, 0, 0, 0, 0, 65,
+       0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
+       0, 0, 60, 61, 78, 64, 58, 187, 0, 59,
+       0, 0, 67, 124, 0, 0, 0, 0, 83, 79,
+       10, 0, 62, 63, 77, 82, 12, 13, 0, 0,
        0, 0, 65, 0, 0, 0, 0, 0, 0, 0,
-       0, 0, 0, 0, 0, 60, 61, 0, 64, 58,
-       0, 0, 59, 0, 68, 67, 0, 0, 0, 78,
-       0, 0, 0, 0, 0, 62, 63, 77, 124, 12,
-       13, 0, 0, 83, 79, 10, 0, 499, 0, 0,
-       82, 0, 0, 0, 0, 0, 0, 65, 0, 0,
-       0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       60, 61, 0, 64, 58, 0, 0, 59, 0, 68,
-       67, 0, 0, 0, 78, 0, 0, 0, 299, 0,
-       62, 63, 77, 124, 12, 13, 0, 124, 83, 79,
-       10, 0, 83, 79, 10, 82, 0, 395, 0, 82,
-       0, 0, 179, 0, 0, 0, 232, 0, 0, 0,
-       0, 0, 68, 0, 0, 60, 61, 78, 64, 178,
-       0, 0, 59, 196, 0, 67, 124, 0, 0, 231,
+       0, 0, 68, 0, 0, 60, 61, 78, 64, 58,
+       0, 0, 59, 0, 0, 67, 124, 0, 0, 0,
        0, 83, 79, 10, 0, 62, 63, 77, 82, 12,
-       13, 77, 0, 12, 13, 179, 0, 0, 0, 0,
-       0, 0, 0, 0, 0, 0, 0, 0, 60, 61,
-       0, 64, 178, 0, 0, 59, 0, 68, 67, 289,
-       0, 0, 78, 0, 0, 0, 0, 0, 62, 63,
-       77, 124, 12, 13, 0, 0, 83, 79, 10, 0,
-       284, 0, 0, 82, 0, 0, 0, 0, 0, 0,
-       65, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       68, 0, 0, 60, 61, 78, 64, 58, 187, 0,
-       59, 0, 0, 67, 124, 0, 0, 0, 0, 83,
-       79, 10, 0, 62, 63, 77, 82, 12, 13, 0,
-       0, 0, 0, 65, 0, 0, 0, 0, 0, 0,
-       0, 0, 0, 68, 0, 0, 60, 61, 78, 64,
-       58, 0, 0, 59, 0, 0, 67, 124, 0, 0,
-       0, 0, 83, 79, 10, 0, 62, 63, 77, 82,
-       12, 13, 0, 0, 0, 0, 65, 0, 0, 0,
-       0, 0, 0, 0, 0, 0, 68, 0, 0, 60,
-       61, 78, 64, 58, 0, 0, 59, 0, 0, 67,
-       124, 0, 0, 0, 0, 83, 79, 10, 0, 62,
-       63, 77, 82, 12, 13, 0, 0, 0, 0, 179,
-       0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       0, 0, 60, 61, 0, 64, 178, 0, 0, 59,
-       0, 0, 67, 0, 0, 0, 0, 0, 0, 0,
-       0, 0, 62, 63, 77, 0, 12, 13, 134, 149,
-       0, 152, 0, 135, 139, 140, 0, 0, 138, 150,
-       137, 136, 133, 151, 141, 142, 143, 144, 145, 146,
-       147, 148, 68, 0, 0, 0, 0, 299, 0, 0,
-       0, 0, 0, 0, 0, 0, 124, 396, 347, 0,
-       0, 83, 79, 10, 0, 0, 0, 349, 82, 78,
-       0, 0, 345, 343, 552, 65, 0, 0, 124, 344,
-       0, 0, 0, 83, 79, 10, 348, 0, 60, 61,
-       82, 64, 58, 0, 0, 59, 0, 232, 67, 0,
-       0, 0, 0, 346, 0, 0, 0, 0, 62, 63,
-       77, 0, 12, 13, 196, 0, 0, 0, 0, 0,
-       231, 342, 0, 12, 13, 0, 224, 0, 0, 0,
-       0, 0, 77, 0, 12, 13, 225, 134, 149, 0,
-       152, 0, 135, 139, 140, 0, 0, 138, 150, 137,
-       136, 133, 151, 141, 142, 143, 144, 145, 146, 147,
-       148, 134, 149, 0, 152, 0, 135, 139, 140, 0,
-       659, 138, 150, 137, 136, 133, 151, 141, 142, 143,
-       144, 145, 146, 147, 148, 134, 149, 0, 152, 0,
-       135, 139, 140, 0, 658, 138, 150, 137, 136, 133,
-       151, 141, 142, 143, 144, 145, 146, 147, 148, 0,
-       78, 0, 0, 0, 78, 0, 0, 0, 518, 124,
-       0, 0, 0, 124, 83, 79, 10, 0, 83, 79,
-       10, 82, 0, 0, 0, 82, 347, 0, 405, 0,
-       0, 0, 190, 0, 0, 349, 0, 0, 0, 0,
-       345, 343, 341, 0, 0, 196, 0, 344, 0, 196,
-       0, 411, 0, 0, 348, 195, 0, 0, 0, 347,
-       0, 0, 471, 77, 0, 12, 13, 77, 349, 12,
-       13, 346, 0, 345, 343, 341, 0, 612, 0, 347,
-       344, 0, 0, 0, 0, 0, 0, 348, 349, 342,
-       0, 0, 13, 345, 343, 341, 0, 0, 0, 347,
-       344, 0, 0, 0, 346, 0, 0, 452, 349, 0,
-       0, 0, 0, 345, 343, 341, 0, 0, 0, 0,
-       344, 0, 342, 0, 346, 13, 0, 348, 0, 0,
-       451, 0, 0, 0, 130, 0, 0, 0, 0, 0,
-       0, 0, 342, 0, 346, 13, 0, 0, 0, 0,
-       0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-       0, 0, 342, 134, 149, 13, 152, 132, 135, 139,
-       140, 0, 131, 138, 150, 137, 136, 133, 151, 141,
-       142, 143, 144, 145, 146, 147, 148, 134, 149, 0,
-       152, 0, 135, 139, 140, 0, 0, 138, 150, 137,
-       136, 133, 151, 141, 142, 143, 144, 145, 146, 147,
-       148, 134, 149, 0, 0, 0, 135, 139, 140, 0,
-       0, 138, 150, 137, 136, 133, 151, 141, 142, 143,
-       144, 145, 146, 147, 148, 134, 149, 0, 0, 0,
-       135, 139, 140, 0, 0, 138, 150, 137, 136, 0,
-       151, 141, 142, 143, 144, 145, 146, 147, 148, 149,
-       0, 0, 0, 135, 139, 140, 0, 0, 138, 150,
-       137, 136, 0, 151, 141, 142, 143, 144, 145, 146,
-       147, 148,
+       13, 0, 0, 0, 0, 65, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 68, 0, 0, 60, 61,
+       78, 64, 58, 0, 0, 59, 0, 0, 67, 124,
+       0, 0, 0, 0, 83, 79, 10, 0, 62, 63,
+       77, 82, 12, 13, 0, 0, 0, 0, 179, 0,
+       0, 0, 0, 0, 0, 0, 0, 0, 68, 0,
+       0, 60, 61, 299, 64, 178, 0, 0, 59, 0,
+       0, 67, 124, 0, 0, 0, 0, 83, 79, 10,
+       0, 62, 63, 77, 82, 12, 13, 0, 0, 0,
+       0, 65, 0, 0, 0, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 60, 61, 78, 64, 58, 0,
+       0, 59, 0, 0, 67, 124, 0, 0, 0, 0,
+       83, 79, 10, 0, 62, 63, 77, 82, 12, 13,
+       0, 78, 0, 0, 232, 0, 0, 0, 0, 0,
+       124, 0, 0, 0, 0, 83, 79, 10, 0, 0,
+       0, 196, 82, 0, 0, 0, 0, 231, 0, 232,
+       0, 0, 0, 224, 0, 0, 0, 0, 0, 77,
+       0, 12, 13, 225, 0, 0, 196, 0, 0, 0,
+       0, 0, 231, 0, 0, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 77, 0, 12, 13, 427, 134,
+       149, 0, 152, 0, 135, 139, 140, 0, 0, 138,
+       150, 137, 136, 133, 151, 141, 142, 143, 144, 145,
+       146, 147, 148, 134, 149, 0, 152, 0, 135, 139,
+       140, 0, 660, 138, 150, 137, 136, 133, 151, 141,
+       142, 143, 144, 145, 146, 147, 148, 0, 78, 0,
+       0, 250, 78, 0, 0, 0, 659, 124, 0, 0,
+       0, 124, 83, 79, 10, 0, 83, 79, 10, 82,
+       0, 0, 0, 82, 299, 0, 232, 0, 0, 0,
+       232, 0, 0, 124, 0, 0, 0, 0, 83, 79,
+       10, 0, 0, 196, 0, 82, 0, 196, 0, 231,
+       0, 0, 232, 231, 0, 0, 0, 78, 0, 0,
+       0, 77, 0, 12, 13, 77, 124, 12, 13, 196,
+       0, 83, 79, 10, 0, 231, 0, 0, 82, 78,
+       0, 0, 0, 347, 0, 406, 0, 77, 124, 12,
+       13, 0, 349, 83, 79, 10, 0, 345, 343, 553,
+       82, 0, 196, 0, 344, 0, 0, 190, 412, 0,
+       0, 348, 0, 0, 0, 0, 0, 0, 0, 0,
+       77, 0, 12, 13, 196, 0, 0, 0, 346, 0,
+       195, 0, 0, 0, 0, 0, 0, 0, 347, 0,
+       0, 0, 77, 0, 12, 13, 342, 349, 12, 13,
+       0, 0, 345, 343, 341, 0, 0, 0, 347, 344,
+       0, 0, 0, 0, 0, 0, 453, 349, 0, 0,
+       0, 0, 345, 343, 341, 0, 0, 0, 0, 344,
+       0, 0, 0, 346, 0, 0, 348, 0, 0, 452,
+       0, 0, 0, 130, 0, 0, 0, 0, 0, 0,
+       0, 342, 0, 346, 13, 0, 0, 0, 0, 0,
+       0, 0, 0, 0, 0, 350, 0, 0, 0, 0,
+       0, 342, 134, 149, 13, 152, 132, 135, 139, 140,
+       0, 131, 138, 150, 137, 136, 133, 151, 141, 142,
+       143, 144, 145, 146, 147, 148, 134, 149, 0, 152,
+       0, 135, 139, 140, 0, 0, 138, 150, 137, 136,
+       133, 151, 141, 142, 143, 144, 145, 146, 147, 148,
+       134, 149, 0, 0, 0, 135, 139, 140, 0, 0,
+       138, 150, 137, 136, 133, 151, 141, 142, 143, 144,
+       145, 146, 147, 148, 134, 149, 0, 0, 0, 135,
+       139, 140, 0, 0, 138, 150, 137, 136, 0, 151,
+       141, 142, 143, 144, 145, 146, 147, 148, 149, 0,
+       0, 0, 135, 139, 140, 0, 0, 138, 150, 137,
+       136, 0, 151, 141, 142, 143, 144, 145, 146, 147,
+       148,
 }
 var yyPact = [...]int{
 
-       -1000, -1000, 542, 536, -1000, 164, -1000, 550, 555, 318,
-       -1000, -1000, -1000, 588, -1000, -1000, 549, 1340, 316, 155,
-       -1000, 214, 640, 308, -1000, 305, -1000, -1000, -1000, -1000,
-       491, 370, 366, 301, -1000, -1000, -1000, -1000, -1000, 186,
-       -1000, 164, 164, 272, 272, 164, 1689, -1000, 2129, 171,
-       -1000, -1000, -1000, -1000, -1000, -1000, -1000, 25, 1689, 1689,
-       1689, 1689, 1689, 1689, 1689, 1689, 173, 1732, -1000, -1000,
-       -1000, 489, 200, -1000, -1000, -1000, 253, 1646, 1995, 26,
-       -1000, -1000, 200, 200, -1000, -1000, 96, 536, -1000, 587,
-       586, 42, 205, -1000, 547, -9, -9, -9, 5, -1000,
-       -1000, -1000, 347, 1850, -1000, -1000, -1000, 292, 849, -1000,
-       44, 1158, -1000, 172, 908, 488, -1000, -1000, -1000, -1000,
-       -1000, -1000, 25, -1000, 486, -1000, -1000, -1000, -23, 2153,
-       1689, -1000, -1000, 1689, 1689, 1689, 1689, 1689, 1689, 1689,
-       1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689,
-       1689, 1689, 1689, 1689, 1689, 1689, 1603, 1689, 522, 1689,
-       1548, 280, 1689, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-       -1000, -1000, 469, 2153, -1000, -1000, -1000, -1000, 1732, 1828,
-       1689, -1000, -1000, -1000, 1250, -1000, 17, 13, 2153, -1000,
-       1158, -1000, -1000, -1000, -1000, 1158, 1158, 211, 1158, 39,
-       27, 300, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-       -1000, 585, 2090, -1000, 1114, 2090, -1000, 172, 485, 164,
-       297, -1000, -1000, 194, 1689, 164, -1000, -1000, -1000, -1000,
-       -1000, 1158, 573, 296, -1000, 191, 1689, 295, -1000, -1000,
-       -1000, -1000, 1250, 461, -14, -1000, -1000, 908, -1000, -1000,
-       1158, 908, 1250, 908, 2153, 2201, 2224, 732, 732, 732,
-       732, 732, 732, 843, 843, 843, 843, -1000, -1000, -1000,
-       -1000, -1000, -1000, -1000, 2177, -23, -23, 2153, -1000, 518,
-       294, -1000, -1000, 69, 1689, -1000, 293, -1000, -1000, -1000,
-       51, -1000, -1000, 1505, 1774, 176, 1026, 130, -1000, 1991,
-       958, 1026, 181, -1000, -1000, -1000, -1000, -1000, -1000, 1158,
-       1158, -1000, 457, -1000, 164, 11, 288, -1000, -1000, 739,
-       581, 525, 513, -1000, -1000, 210, 282, -1000, -1000, 479,
-       -1000, 545, 447, 139, -1000, 275, 273, -1000, -1000, -1000,
-       -1000, -1000, 129, 19, 52, 43, 2090, 2070, 572, 476,
-       78, 192, 264, 262, 164, -3, -1000, 2050, 445, 164,
-       1689, -23, -1000, 444, 1158, 443, 164, 1689, -23, 439,
-       164, 132, 1030, 908, -1000, -1000, -1000, -1000, 438, -1000,
-       437, -1000, -1000, 1689, 1450, 1395, 2153, 520, 1689, 203,
-       518, 425, -16, 1732, 394, 393, -1000, 1689, 165, -17,
-       -1000, -1000, 1941, -1000, -1000, 1509, -1000, -1000, -1000, -1000,
-       -1000, 1158, 390, -1000, 162, -1000, 1250, 1250, -1000, -1000,
-       -1000, -1000, 1158, 149, 217, 581, 164, -1000, -1000, 388,
-       545, 210, 581, 545, 164, 137, 274, -1000, 908, 386,
-       -1000, -1000, -1000, -1000, 2090, 10, 2090, 164, 1839, -1000,
-       -1000, 298, 2090, -1000, -1000, 2090, 164, 256, -1000, 133,
-       -1000, 582, -1000, 78, -1000, -1000, 381, -21, 164, 164,
-       581, 2090, -1000, -1000, -23, -1000, -1000, 255, -1000, -1000,
-       849, -23, -1000, -1000, -1000, 472, -1000, -1000, 908, -1000,
-       -1000, -1000, -1000, -1000, -1000, 1030, 1030, 1250, 251, 1689,
-       1689, -1000, -1000, -1000, -1000, -1000, 1732, 166, -1000, -1000,
-       376, -1000, -1000, -1000, 4, -1000, 1026, -1000, 1103, 1026,
-       1026, 372, -1000, -1000, -1000, 125, -1000, -1000, -1000, -1000,
-       -1000, 581, 363, -1000, 359, -1000, -1000, -1000, 352, -1000,
-       -1000, 2090, 3, 121, 249, -1000, 2090, 117, 230, -1000,
-       283, -1000, -1000, -1000, 350, -1000, -1000, 344, -1000, 266,
-       -1000, 221, 2017, 220, -1000, -1000, 581, 343, 164, 191,
-       908, 338, -1000, 118, 1689, 2153, 2153, 136, 1250, 89,
-       -1000, -1000, -1000, -1000, 1689, -1000, -1000, -1000, 2153, -1000,
-       82, 41, -1000, -1000, -1000, 581, 581, 1030, -1000, 2090,
-       -1000, 164, 581, -1000, 1839, 164, -1000, 2017, 133, -1000,
-       -1000, -1000, 164, -1000, 164, -1000, -1000, -1000, 336, -1000,
-       -1000, -1000, -1000, 219, -1000, 1689, 1689, 1732, 565, 1,
-       1026, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-       335, -1000, 328, 303, 276, 1030, 1917, 1893, -1000, -1000,
-       110, -1000, 37, 2017, -1000, -1000, 2017, -1000, -1000, -1000,
-       -1000, -1000, -1000, -1000, -1000, 1689, 518, -1000,
+       -1000, -1000, 536, 535, -1000, 128, -1000, 545, 549, 336,
+       -1000, -1000, -1000, 605, -1000, -1000, 541, 1239, 328, 85,
+       -1000, 220, 438, 327, -1000, 323, -1000, -1000, -1000, -1000,
+       503, 493, 484, 459, -1000, -1000, -1000, -1000, -1000, 177,
+       -1000, 128, 128, 1316, 1316, 128, 1698, -1000, 2168, 92,
+       -1000, -1000, -1000, -1000, -1000, -1000, -1000, 39, 1698, 1698,
+       1698, 1698, 1698, 1698, 1698, 1698, 157, 1741, -1000, -1000,
+       -1000, 479, 233, -1000, -1000, -1000, 202, 1655, 2050, 36,
+       -1000, -1000, 233, 233, -1000, -1000, 153, 535, -1000, 586,
+       585, 40, 194, -1000, 540, -11, -11, -11, 17, -1000,
+       -1000, -1000, 367, 1827, -1000, -1000, -1000, 355, 754, -1000,
+       252, 1973, -1000, 155, 1969, 478, -1000, -1000, -1000, -1000,
+       -1000, -1000, 39, -1000, 475, -1000, -1000, -1000, -23, 2192,
+       1698, -1000, -1000, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+       1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+       1698, 1698, 1698, 1698, 1698, 1698, 1612, 1698, 524, 1698,
+       1557, 387, 1698, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+       -1000, -1000, 431, 2192, -1000, -1000, -1000, -1000, 1741, 1784,
+       1698, -1000, -1000, -1000, 1156, -1000, 24, 22, 2192, -1000,
+       1973, -1000, -1000, -1000, -1000, 1973, 1973, 211, 1973, 27,
+       263, 320, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+       -1000, 583, 1010, -1000, 2129, 1010, -1000, 155, 470, 128,
+       309, -1000, -1000, 187, 1698, 128, -1000, -1000, -1000, -1000,
+       -1000, 1973, 574, 307, -1000, 181, 1698, 305, -1000, -1000,
+       -1000, -1000, 1156, 430, -13, -1000, -1000, 1969, -1000, -1000,
+       1973, 1969, 1156, 1969, 2192, 2240, 2263, 689, 689, 689,
+       689, 689, 689, 741, 741, 741, 741, -1000, -1000, -1000,
+       -1000, -1000, -1000, -1000, 2216, -23, -23, 2192, -1000, 519,
+       304, -1000, -1000, 51, 1698, -1000, 278, -1000, -1000, -1000,
+       66, -1000, -1000, 1514, 1022, 174, 1294, 152, -1000, 2028,
+       918, 1294, 143, -1000, -1000, -1000, -1000, -1000, -1000, 1973,
+       1973, -1000, 428, -1000, 128, 13, 273, -1000, -1000, 1852,
+       580, 525, 463, -1000, -1000, 210, 272, -1000, -1000, 467,
+       -1000, 539, 425, 197, -1000, 270, 268, -1000, -1000, -1000,
+       -1000, -1000, 103, 28, 151, 86, 1010, 2109, 571, 460,
+       65, 184, 266, 265, 128, -6, -1000, 206, 424, 128,
+       1698, -23, -1000, 422, 1973, 420, 128, 1698, -23, 418,
+       128, 131, 1518, 1969, -1000, -1000, -1000, -1000, 416, -1000,
+       415, -1000, -1000, 1698, 1459, 1404, 2192, 521, 1698, 229,
+       519, 405, -14, 1741, 404, 403, -1000, 1698, 147, -17,
+       -1000, -1000, 173, 2192, -1000, -1000, 1995, -1000, -1000, -1000,
+       -1000, -1000, 1973, 402, -1000, 138, -1000, 1156, 1156, -1000,
+       -1000, -1000, -1000, 1973, 112, 31, 580, 128, -1000, -1000,
+       398, 539, 210, 580, 539, 128, 104, 231, -1000, 1969,
+       397, -1000, -1000, -1000, -1000, 1010, 10, 1010, 128, 2054,
+       -1000, -1000, 514, 1010, -1000, -1000, 1010, 128, 259, -1000,
+       69, -1000, 581, -1000, 65, -1000, -1000, 392, -22, 128,
+       128, 580, 1010, -1000, -1000, -23, -1000, -1000, 258, -1000,
+       -1000, 754, -23, -1000, -1000, -1000, 440, -1000, -1000, 1969,
+       -1000, -1000, -1000, -1000, -1000, -1000, 1518, 1518, 1156, 255,
+       1698, 1698, -1000, -1000, -1000, -1000, -1000, 1741, 166, -1000,
+       -1000, 391, -1000, -1000, -1000, -1, -1000, 1294, -1000, 1349,
+       1294, 1294, 390, -1000, -1000, -1000, 129, -1000, -1000, -1000,
+       -1000, -1000, 580, 385, -1000, 383, -1000, -1000, -1000, 382,
+       -1000, -1000, 1010, 2, 102, 254, -1000, 1010, 81, 244,
+       -1000, 439, -1000, -1000, -1000, 370, -1000, -1000, 365, -1000,
+       497, -1000, 239, 858, 435, -1000, -1000, 580, 362, 128,
+       181, 1969, 361, -1000, 111, 1698, 2192, 2192, 226, 1156,
+       55, -1000, -1000, -1000, -1000, 1698, -1000, -1000, -1000, 2192,
+       -1000, 68, 64, -1000, -1000, -1000, 580, 580, 1518, -1000,
+       1010, -1000, 128, 580, -1000, 2054, 128, -1000, 858, 69,
+       -1000, -1000, -1000, 128, -1000, 128, -1000, -1000, -1000, 359,
+       -1000, -1000, -1000, -1000, 236, -1000, 1698, 1698, 1741, 560,
+       1, 1294, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+       -1000, 349, -1000, 342, 341, 339, 1518, 1919, 1895, -1000,
+       -1000, 141, -1000, 50, 858, -1000, -1000, 858, -1000, -1000,
+       -1000, -1000, -1000, -1000, -1000, -1000, 1698, 519, -1000,
 }
 var yyPgo = [...]int{
 
-       0, 57, 771, 774, 45, 150, 26, 540, 29, 770,
-       768, 2, 28, 61, 322, 766, 17, 4, 765, 761,
-       760, 759, 758, 756, 3, 755, 622, 47, 14, 754,
-       490, 40, 41, 130, 37, 12, 752, 561, 43, 620,
-       751, 564, 750, 749, 25, 745, 162, 743, 31, 11,
-       740, 48, 5, 1, 18, 735, 679, 734, 7, 22,
-       733, 732, 19, 730, 729, 728, 16, 54, 725, 723,
-       33, 721, 23, 719, 588, 46, 9, 718, 715, 714,
-       713, 39, 712, 711, 710, 15, 56, 709, 13, 706,
-       0, 70, 49, 24, 20, 21, 10, 8, 704, 6,
-       42, 30, 703, 701, 700, 699, 88, 34, 698, 32,
-       27, 697, 696, 695, 694, 692, 685, 51, 44, 680,
-       36, 677, 35, 676, 671, 667, 666, 657, 656, 655,
-       648, 647, 642, 639, 637, 634, 631, 627, 38, 623,
-       596, 593,
+       0, 51, 793, 672, 34, 221, 32, 700, 31, 792,
+       788, 1, 76, 113, 208, 16, 25, 3, 785, 782,
+       781, 774, 773, 771, 7, 770, 617, 30, 24, 769,
+       437, 45, 47, 273, 41, 19, 768, 554, 20, 620,
+       767, 556, 765, 762, 12, 761, 124, 760, 40, 13,
+       758, 46, 4, 2, 28, 756, 766, 755, 10, 18,
+       752, 751, 26, 750, 749, 736, 15, 35, 735, 733,
+       38, 732, 29, 727, 612, 48, 21, 721, 720, 719,
+       717, 42, 712, 708, 707, 9, 84, 702, 14, 698,
+       0, 67, 49, 22, 6, 23, 17, 8, 697, 5,
+       37, 11, 696, 695, 694, 687, 406, 36, 686, 33,
+       27, 684, 682, 681, 680, 677, 671, 50, 44, 667,
+       43, 666, 58, 662, 659, 658, 657, 654, 652, 650,
+       649, 646, 645, 644, 641, 640, 639, 638, 39, 637,
+       626, 624,
 }
 var yyR1 = [...]int{
 
@@ -730,33 +740,33 @@ var yyChk = [...]int{
        63, -66, 61, 76, -138, -31, -81, -7, -67, -6,
        -67, -53, 36, 63, 66, 6, -14, -136, 63, -62,
        -132, -138, 12, 76, -17, 32, 73, 67, -58, -57,
-       -28, -16, -14, 68, 68, 37, -7, -90, -88, -85,
-       -12, 60, -138, 76, -58, 69, 63, -127, -7, -7,
-       61, -3, 73, -122, 63, -7, 76, -5, 4, -13,
-       54, 25, -13, 60, 64, -122, 63, -82, 60, -4,
-       61, -120, 63, 63, 73, 4, 72, 68, 68, -106,
-       -111, 60, 37, -107, -109, 9, 60, -93, -94, 60,
-       4, 51, -3, 66, 63, 63, -101, -100, 61, 76,
-       -106, 12, 61, -70, -56, 61, 61, -77, -76, -75,
-       -54, -56, 61, -48, 69, -3, -52, -89, 60, -86,
-       -90, -88, -85, -12, -8, 61, 61, -129, -38, 27,
-       27, 36, -38, -10, 69, -9, 8, 13, -53, 61,
-       -138, -17, 61, 61, -35, 69, 76, -138, 67, -49,
-       -49, -7, 61, 69, -6, -66, -7, 69, -72, -5,
-       -33, 61, -13, -5, -13, -3, 69, -27, -67, 61,
-       -106, 73, -106, -105, -104, -97, -3, -103, -102, -96,
-       -3, -106, 25, -91, -110, -106, -106, -101, 63, -94,
-       4, -93, 61, -3, -95, -5, -106, -122, 63, -7,
-       60, -67, -52, -66, 63, -14, -14, -62, -128, -59,
-       67, -133, 61, 73, 67, -28, -16, -15, -14, 68,
-       -58, -58, 61, 69, -5, 61, 61, 61, -106, 73,
-       69, 63, -106, 69, 63, 60, 61, 61, 50, 63,
-       -99, -98, 60, -106, 60, -5, 61, -76, -67, 61,
-       69, -38, 69, -66, 67, 66, 6, 76, -64, -35,
-       -49, 69, 69, -5, -5, -52, -106, -97, -5, -96,
-       -101, -99, -94, -101, -101, 61, -14, -14, -65, -63,
-       15, 73, -58, 61, 61, 61, 61, -52, 67, 67,
-       21, -11, 69, -99, -99, -134, -24, -53,
+       -28, -16, -15, -14, 68, 68, 37, -7, -90, -88,
+       -85, -12, 60, -138, 76, -58, 69, 63, -127, -7,
+       -7, 61, -3, 73, -122, 63, -7, 76, -5, 4,
+       -13, 54, 25, -13, 60, 64, -122, 63, -82, 60,
+       -4, 61, -120, 63, 63, 73, 4, 72, 68, 68,
+       -106, -111, 60, 37, -107, -109, 9, 60, -93, -94,
+       60, 4, 51, -3, 66, 63, 63, -101, -100, 61,
+       76, -106, 12, 61, -70, -56, 61, 61, -77, -76,
+       -75, -54, -56, 61, -48, 69, -3, -52, -89, 60,
+       -86, -90, -88, -85, -12, -8, 61, 61, -129, -38,
+       27, 27, 36, -38, -10, 69, -9, 8, 13, -53,
+       61, -138, -17, 61, 61, -35, 69, 76, -138, 67,
+       -49, -49, -7, 61, 69, -6, -66, -7, 69, -72,
+       -5, -33, 61, -13, -5, -13, -3, 69, -27, -67,
+       61, -106, 73, -106, -105, -104, -97, -3, -103, -102,
+       -96, -3, -106, 25, -91, -110, -106, -106, -101, 63,
+       -94, 4, -93, 61, -3, -95, -5, -106, -122, 63,
+       -7, 60, -67, -52, -66, 63, -14, -14, -62, -128,
+       -59, 67, -133, 61, 73, 67, -28, -16, -15, -14,
+       68, -58, -58, 61, 69, -5, 61, 61, 61, -106,
+       73, 69, 63, -106, 69, 63, 60, 61, 61, 50,
+       63, -99, -98, 60, -106, 60, -5, 61, -76, -67,
+       61, 69, -38, 69, -66, 67, 66, 6, 76, -64,
+       -35, -49, 69, 69, -5, -5, -52, -106, -97, -5,
+       -96, -101, -99, -94, -101, -101, 61, -14, -14, -65,
+       -63, 15, 73, -58, 61, 61, 61, 61, -52, 67,
+       67, 21, -11, 69, -99, -99, -134, -24, -53,
 }
 var yyDef = [...]int{
 
@@ -800,33 +810,33 @@ var yyDef = [...]int{
        287, 0, 212, 289, 250, 244, 245, 165, 0, 262,
        0, 73, 65, 294, 0, 0, 69, 0, 294, 0,
        0, 0, 288, 289, 0, 0, 131, 290, 0, 288,
-       280, 281, 142, 140, 140, 0, 199, -2, -2, -2,
-       -2, 0, 0, 289, 0, 216, -2, -2, 191, 192,
-       180, 190, 0, 0, 287, 302, 0, 231, 303, 0,
-       0, 236, 302, 0, 0, 0, 287, 239, 249, 0,
-       9, 14, 304, 305, 0, 0, 0, 298, 300, 324,
-       325, 0, 0, 315, 316, 0, 296, 0, 342, 0,
-       339, 0, 341, 0, 308, 309, 0, 297, 0, 0,
-       302, 0, 29, 221, 40, 171, 32, 286, 222, 44,
-       46, 42, 36, 225, 211, 162, 209, 213, 249, 184,
-       185, 186, 187, 188, 248, 212, 212, -2, 0, 0,
-       0, 63, 77, 64, 92, 61, 0, 0, 80, 124,
-       0, 279, 129, 130, 0, 137, 289, 285, 0, 284,
-       284, 0, 135, 136, 271, 0, 195, 200, 227, 230,
-       273, 302, 0, 233, 0, 237, 202, 229, 0, 241,
-       319, 0, 0, 0, 299, 348, 0, 0, 301, 350,
-       0, 334, -2, -2, 0, 327, 328, 0, 306, 0,
-       340, 0, 335, 0, 347, 330, 302, 0, 287, 45,
-       249, 0, 205, 0, 294, 67, 68, 0, -2, 0,
-       58, 84, 125, 132, 290, 282, 283, 141, 144, 140,
-       0, 0, -2, 60, 232, 302, 302, 212, 320, 0,
-       322, 0, 302, 323, 0, 296, 326, 335, 0, 307,
-       207, 336, 296, 338, 296, 331, 33, 223, 0, 214,
-       66, 70, 90, 62, 55, 0, 0, 0, 86, 0,
-       284, 143, 138, 234, 235, 242, 321, 349, 332, 351,
-       0, 329, 0, 0, 0, 212, 0, 0, 81, 85,
-       0, 133, 0, 335, 343, 337, 335, 206, 56, 57,
-       82, 87, 145, 333, 208, 294, 0, 83,
+       280, 281, 0, -2, 140, 140, 0, 199, -2, -2,
+       -2, -2, 0, 0, 289, 0, 216, -2, -2, 191,
+       192, 180, 190, 0, 0, 287, 302, 0, 231, 303,
+       0, 0, 236, 302, 0, 0, 0, 287, 239, 249,
+       0, 9, 14, 304, 305, 0, 0, 0, 298, 300,
+       324, 325, 0, 0, 315, 316, 0, 296, 0, 342,
+       0, 339, 0, 341, 0, 308, 309, 0, 297, 0,
+       0, 302, 0, 29, 221, 40, 171, 32, 286, 222,
+       44, 46, 42, 36, 225, 211, 162, 209, 213, 249,
+       184, 185, 186, 187, 188, 248, 212, 212, -2, 0,
+       0, 0, 63, 77, 64, 92, 61, 0, 0, 80,
+       124, 0, 279, 129, 130, 0, 137, 289, 285, 0,
+       284, 284, 0, 135, 136, 271, 0, 195, 200, 227,
+       230, 273, 302, 0, 233, 0, 237, 202, 229, 0,
+       241, 319, 0, 0, 0, 299, 348, 0, 0, 301,
+       350, 0, 334, -2, -2, 0, 327, 328, 0, 306,
+       0, 340, 0, 335, 0, 347, 330, 302, 0, 287,
+       45, 249, 0, 205, 0, 294, 67, 68, 0, -2,
+       0, 58, 84, 125, 132, 290, 282, 283, 141, 144,
+       140, 0, 0, -2, 60, 232, 302, 302, 212, 320,
+       0, 322, 0, 302, 323, 0, 296, 326, 335, 0,
+       307, 207, 336, 296, 338, 296, 331, 33, 223, 0,
+       214, 66, 70, 90, 62, 55, 0, 0, 0, 86,
+       0, 284, -2, 138, 234, 235, 242, 321, 349, 332,
+       351, 0, 329, 0, 0, 0, 212, 0, 0, 81,
+       85, 0, 133, 0, 335, 343, 337, 335, 206, 56,
+       57, 82, 87, 145, 333, 208, 294, 0, 83,
 }
 var yyTok1 = [...]int{
 
@@ -867,22 +877,22 @@ var yyErrorMessages = [...]struct {
        {390, 63, "missing { after if clause"},
        {387, 63, "missing { after switch clause"},
        {279, 63, "missing { after for clause"},
-       {498, 36, "missing { after for clause"},
+       {499, 36, "missing { after for clause"},
        {17, 68, "unexpected semicolon or newline before {"},
        {111, 63, "unexpected semicolon or newline in type declaration"},
        {78, 69, "unexpected } in channel type"},
        {78, 61, "unexpected ) in channel type"},
        {78, 76, "unexpected comma in channel type"},
-       {416, 15, "unexpected semicolon or newline before else"},
+       {417, 15, "unexpected semicolon or newline before else"},
        {329, 76, "name list not allowed in interface type"},
        {279, 33, "var declaration not allowed in for initializer"},
        {25, 68, "unexpected { at end of statement"},
        {371, 68, "unexpected { at end of statement"},
        {122, 63, "argument to go/defer must be function call"},
        {398, 63, "need trailing comma before newline in composite literal"},
-       {414, 63, "need trailing comma before newline in composite literal"},
+       {415, 63, "need trailing comma before newline in composite literal"},
        {124, 25, "nested func not allowed"},
-       {650, 63, "else must be followed by if or statement block"},
+       {651, 63, "else must be followed by if or statement block"},
 }
 
 //line yaccpar:1
diff --git a/src/cmd/compile/internal/gc/y.output b/src/cmd/compile/internal/gc/y.output
deleted file mode 100644 (file)
index 2821702..0000000
+++ /dev/null
@@ -1,10411 +0,0 @@
-
-state 0
-       $accept: .file $end 
-       $$4: .    (4)
-
-       .  reduce 4 (src line 210)
-
-       file  goto 1
-       loadsys  goto 2
-       $$4  goto 3
-
-state 1
-       $accept:  file.$end 
-
-       $end  accept
-       .  error
-
-
-state 2
-       file:  loadsys.package imports xdcl_list 
-       package: .    (2)
-
-       LPACKAGE  shift 5
-       .  reduce 2 (src line 193)
-
-       package  goto 4
-
-state 3
-       loadsys:  $$4.import_package import_there 
-
-       LPACKAGE  shift 7
-       .  error
-
-       import_package  goto 6
-
-state 4
-       file:  loadsys package.imports xdcl_list 
-       imports: .    (6)
-
-       .  reduce 6 (src line 227)
-
-       imports  goto 8
-
-state 5
-       package:  LPACKAGE.sym ';' 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 9
-       hidden_importsym  goto 11
-
-state 6
-       loadsys:  $$4 import_package.import_there 
-       $$21: .    (21)
-
-       .  reduce 21 (src line 334)
-
-       import_there  goto 14
-       $$21  goto 15
-
-state 7
-       import_package:  LPACKAGE.LNAME import_safety ';' 
-
-       LNAME  shift 16
-       .  error
-
-
-state 8
-       file:  loadsys package imports.xdcl_list 
-       imports:  imports.import ';' 
-       xdcl_list: .    (218)
-
-       LIMPORT  shift 19
-       .  reduce 218 (src line 1569)
-
-       xdcl_list  goto 17
-       import  goto 18
-
-state 9
-       package:  LPACKAGE sym.';' 
-
-       ';'  shift 20
-       .  error
-
-
-state 10
-       sym:  LNAME.    (157)
-
-       .  reduce 157 (src line 1175)
-
-
-state 11
-       sym:  hidden_importsym.    (158)
-
-       .  reduce 158 (src line 1184)
-
-
-state 12
-       sym:  '?'.    (159)
-
-       .  reduce 159 (src line 1185)
-
-
-state 13
-       hidden_importsym:  '@'.LLITERAL '.' LNAME 
-       hidden_importsym:  '@'.LLITERAL '.' '?' 
-
-       LLITERAL  shift 21
-       .  error
-
-
-state 14
-       loadsys:  $$4 import_package import_there.    (5)
-
-       .  reduce 5 (src line 221)
-
-
-state 15
-       import_there:  $$21.hidden_import_list '$' '$' 
-       hidden_import_list: .    (344)
-
-       .  reduce 344 (src line 2271)
-
-       hidden_import_list  goto 22
-
-state 16
-       import_package:  LPACKAGE LNAME.import_safety ';' 
-       import_safety: .    (19)
-
-       LNAME  shift 24
-       .  reduce 19 (src line 326)
-
-       import_safety  goto 23
-
-state 17
-       file:  loadsys package imports xdcl_list.    (1)
-       xdcl_list:  xdcl_list.xdcl ';' 
-       xdcl: .    (23)
-
-       $end  reduce 1 (src line 184)
-       error  shift 29
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 33
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 23 (src line 347)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 28
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       xfndcl  goto 27
-       xdcl  goto 25
-       expr_list  goto 49
-       common_dcl  goto 26
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 18
-       imports:  imports import.';' 
-
-       ';'  shift 84
-       .  error
-
-
-state 19
-       import:  LIMPORT.import_stmt 
-       import:  LIMPORT.'(' import_stmt_list osemi ')' 
-       import:  LIMPORT.'(' ')' 
-
-       LLITERAL  shift 88
-       LNAME  shift 10
-       '('  shift 86
-       '.'  shift 90
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       import_here  goto 87
-       sym  goto 89
-       hidden_importsym  goto 11
-       import_stmt  goto 85
-
-state 20
-       package:  LPACKAGE sym ';'.    (3)
-
-       .  reduce 3 (src line 200)
-
-
-state 21
-       hidden_importsym:  '@' LLITERAL.'.' LNAME 
-       hidden_importsym:  '@' LLITERAL.'.' '?' 
-
-       '.'  shift 91
-       .  error
-
-
-state 22
-       import_there:  $$21 hidden_import_list.'$' '$' 
-       hidden_import_list:  hidden_import_list.hidden_import 
-
-       LCONST  shift 96
-       LFUNC  shift 98
-       LIMPORT  shift 94
-       LTYPE  shift 97
-       LVAR  shift 95
-       '$'  shift 92
-       .  error
-
-       hidden_import  goto 93
-
-state 23
-       import_package:  LPACKAGE LNAME import_safety.';' 
-
-       ';'  shift 99
-       .  error
-
-
-state 24
-       import_safety:  LNAME.    (20)
-
-       .  reduce 20 (src line 327)
-
-
-state 25
-       xdcl_list:  xdcl_list xdcl.';' 
-
-       ';'  shift 100
-       .  error
-
-
-state 26
-       xdcl:  common_dcl.    (24)
-
-       .  reduce 24 (src line 352)
-
-
-state 27
-       xdcl:  xfndcl.    (25)
-
-       .  reduce 25 (src line 353)
-
-
-state 28
-       xdcl:  non_dcl_stmt.    (26)
-
-       .  reduce 26 (src line 357)
-
-
-state 29
-       xdcl:  error.    (27)
-
-       .  reduce 27 (src line 362)
-
-
-state 30
-       common_dcl:  LVAR.vardcl 
-       common_dcl:  LVAR.'(' vardcl_list osemi ')' 
-       common_dcl:  LVAR.'(' ')' 
-
-       LNAME  shift 10
-       '('  shift 102
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 103
-       vardcl  goto 101
-       hidden_importsym  goto 11
-
-state 31
-       common_dcl:  lconst.constdcl 
-       common_dcl:  lconst.'(' constdcl osemi ')' 
-       common_dcl:  lconst.'(' constdcl ';' constdcl_list osemi ')' 
-       common_dcl:  lconst.'(' ')' 
-
-       LNAME  shift 10
-       '('  shift 107
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 108
-       constdcl  goto 106
-       hidden_importsym  goto 11
-
-state 32
-       common_dcl:  LTYPE.typedcl 
-       common_dcl:  LTYPE.'(' typedcl_list osemi ')' 
-       common_dcl:  LTYPE.'(' ')' 
-
-       LNAME  shift 10
-       '('  shift 110
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 112
-       typedclname  goto 111
-       typedcl  goto 109
-       hidden_importsym  goto 11
-
-state 33
-       xfndcl:  LFUNC.fndcl fnbody 
-       fntype:  LFUNC.'(' oarg_type_list_ocomma ')' fnres 
-
-       LNAME  shift 10
-       '('  shift 114
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 115
-       fndcl  goto 113
-       hidden_importsym  goto 11
-
-state 34
-       non_dcl_stmt:  simple_stmt.    (256)
-
-       .  reduce 256 (src line 1796)
-
-
-state 35
-       non_dcl_stmt:  for_stmt.    (257)
-
-       .  reduce 257 (src line 1798)
-
-
-state 36
-       non_dcl_stmt:  switch_stmt.    (258)
-
-       .  reduce 258 (src line 1799)
-
-
-state 37
-       non_dcl_stmt:  select_stmt.    (259)
-
-       .  reduce 259 (src line 1800)
-
-
-state 38
-       non_dcl_stmt:  if_stmt.    (260)
-
-       .  reduce 260 (src line 1801)
-
-
-state 39
-       non_dcl_stmt:  labelname.':' $$261 stmt 
-
-       ':'  shift 116
-       .  error
-
-
-state 40
-       non_dcl_stmt:  LFALL.    (263)
-
-       .  reduce 263 (src line 1818)
-
-
-state 41
-       non_dcl_stmt:  LBREAK.onew_name 
-       onew_name: .    (155)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 155 (src line 1169)
-
-       sym  goto 119
-       new_name  goto 118
-       onew_name  goto 117
-       hidden_importsym  goto 11
-
-state 42
-       non_dcl_stmt:  LCONTINUE.onew_name 
-       onew_name: .    (155)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 155 (src line 1169)
-
-       sym  goto 119
-       new_name  goto 118
-       onew_name  goto 120
-       hidden_importsym  goto 11
-
-state 43
-       non_dcl_stmt:  LGO.pseudocall 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       '('  shift 67
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 122
-       pexpr_no_paren  goto 66
-       pseudocall  goto 121
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 44
-       non_dcl_stmt:  LDEFER.pseudocall 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       '('  shift 67
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 122
-       pexpr_no_paren  goto 66
-       pseudocall  goto 125
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 45
-       non_dcl_stmt:  LGOTO.new_name 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 119
-       new_name  goto 126
-       hidden_importsym  goto 11
-
-state 46
-       non_dcl_stmt:  LRETURN.oexpr_list 
-       oexpr_list: .    (292)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 292 (src line 1967)
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 128
-       oexpr_list  goto 127
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 47
-       lconst:  LCONST.    (38)
-
-       .  reduce 38 (src line 416)
-
-
-state 48
-       simple_stmt:  expr.    (49)
-       simple_stmt:  expr.LASOP expr 
-       simple_stmt:  expr.LINC 
-       simple_stmt:  expr.LDEC 
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       expr_list:  expr.    (276)
-
-       LASOP  shift 130
-       LCOLAS  reduce 276 (src line 1902)
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LDEC  shift 132
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LINC  shift 131
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       '='  reduce 276 (src line 1902)
-       ','  reduce 276 (src line 1902)
-       .  reduce 49 (src line 472)
-
-
-state 49
-       simple_stmt:  expr_list.'=' expr_list 
-       simple_stmt:  expr_list.LCOLAS expr_list 
-       expr_list:  expr_list.',' expr 
-
-       LCOLAS  shift 154
-       '='  shift 153
-       ','  shift 155
-       .  error
-
-
-state 50
-       for_stmt:  LFOR.$$74 for_body 
-       $$74: .    (74)
-
-       .  reduce 74 (src line 721)
-
-       $$74  goto 156
-
-state 51
-       switch_stmt:  LSWITCH.$$88 if_header $$89 LBODY caseblock_list '}' 
-       $$88: .    (88)
-
-       .  reduce 88 (src line 816)
-
-       $$88  goto 157
-
-state 52
-       select_stmt:  LSELECT.$$91 LBODY caseblock_list '}' 
-       $$91: .    (91)
-
-       .  reduce 91 (src line 839)
-
-       $$91  goto 158
-
-state 53
-       if_stmt:  LIF.$$78 if_header $$79 loop_body $$80 elseif_list else 
-       $$78: .    (78)
-
-       .  reduce 78 (src line 750)
-
-       $$78  goto 159
-
-state 54
-       labelname:  new_name.    (163)
-
-       .  reduce 163 (src line 1229)
-
-
-state 55
-       expr:  uexpr.    (93)
-
-       .  reduce 93 (src line 855)
-
-
-state 56
-       new_name:  sym.    (153)
-       name:  sym.    (162)
-
-       ':'  reduce 153 (src line 1153)
-       .  reduce 162 (src line 1220)
-
-
-state 57
-       uexpr:  pexpr.    (114)
-       pseudocall:  pexpr.'(' ')' 
-       pseudocall:  pexpr.'(' expr_or_type_list ocomma ')' 
-       pseudocall:  pexpr.'(' expr_or_type_list LDDD ocomma ')' 
-       pexpr_no_paren:  pexpr.'.' sym 
-       pexpr_no_paren:  pexpr.'.' '(' expr_or_type ')' 
-       pexpr_no_paren:  pexpr.'.' '(' LTYPE ')' 
-       pexpr_no_paren:  pexpr.'[' expr ']' 
-       pexpr_no_paren:  pexpr.'[' oexpr ':' oexpr ']' 
-       pexpr_no_paren:  pexpr.'[' oexpr ':' oexpr ':' oexpr ']' 
-
-       '('  shift 160
-       '.'  shift 161
-       '['  shift 162
-       .  reduce 114 (src line 939)
-
-
-state 58
-       uexpr:  '*'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 163
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 59
-       uexpr:  '&'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 164
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 60
-       uexpr:  '+'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 165
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 61
-       uexpr:  '-'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 166
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 62
-       uexpr:  '!'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 167
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 63
-       uexpr:  '~'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 168
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 64
-       uexpr:  '^'.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 169
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 65
-       uexpr:  LCOMM.uexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 170
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 66
-       pexpr_no_paren:  pexpr_no_paren.'{' start_complit braced_keyval_list '}' 
-       pexpr:  pexpr_no_paren.    (146)
-
-       '{'  shift 171
-       .  reduce 146 (src line 1116)
-
-
-state 67
-       pexpr_no_paren:  '('.expr_or_type ')' '{' start_complit braced_keyval_list '}' 
-       pexpr:  '('.expr_or_type ')' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 172
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 68
-       pexpr_no_paren:  LLITERAL.    (126)
-
-       .  reduce 126 (src line 1003)
-
-
-state 69
-       pexpr_no_paren:  name.    (127)
-
-       .  reduce 127 (src line 1008)
-
-
-state 70
-       pexpr_no_paren:  pseudocall.    (134)
-
-       .  reduce 134 (src line 1046)
-
-
-state 71
-       pexpr_no_paren:  convtype.'(' expr ocomma ')' 
-
-       '('  shift 180
-       .  error
-
-
-state 72
-       pexpr_no_paren:  comptype.lbrace start_complit braced_keyval_list '}' 
-
-       LBODY  shift 182
-       '{'  shift 183
-       .  error
-
-       lbrace  goto 181
-
-state 73
-       pexpr_no_paren:  fnliteral.    (139)
-
-       .  reduce 139 (src line 1073)
-
-
-state 74
-       convtype:  fntype.    (181)
-       fnlitdcl:  fntype.    (215)
-
-       '('  reduce 181 (src line 1282)
-       .  reduce 215 (src line 1546)
-
-
-state 75
-       convtype:  othertype.    (182)
-       comptype:  othertype.    (183)
-
-       '('  reduce 182 (src line 1284)
-       .  reduce 183 (src line 1286)
-
-
-state 76
-       fnliteral:  fnlitdcl.lbrace stmt_list '}' 
-       fnliteral:  fnlitdcl.error 
-
-       error  shift 185
-       LBODY  shift 182
-       '{'  shift 183
-       .  error
-
-       lbrace  goto 184
-
-state 77
-       othertype:  '['.oexpr ']' ntype 
-       othertype:  '['.LDDD ']' ntype 
-       oexpr: .    (290)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LDDD  shift 187
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 290 (src line 1961)
-
-       sym  goto 123
-       expr  goto 188
-       fnliteral  goto 73
-       name  goto 69
-       oexpr  goto 186
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 78
-       othertype:  LCHAN.non_recvchantype 
-       othertype:  LCHAN.LCOMM ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 190
-       '*'  shift 196
-       '('  shift 195
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       dotname  goto 194
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 193
-       non_recvchantype  goto 189
-       othertype  goto 192
-       fntype  goto 191
-       hidden_importsym  goto 11
-
-state 79
-       othertype:  LMAP.'[' ntype ']' ntype 
-
-       '['  shift 198
-       .  error
-
-
-state 80
-       othertype:  structtype.    (196)
-
-       .  reduce 196 (src line 1334)
-
-
-state 81
-       othertype:  interfacetype.    (197)
-
-       .  reduce 197 (src line 1335)
-
-
-state 82
-       structtype:  LSTRUCT.lbrace structdcl_list osemi '}' 
-       structtype:  LSTRUCT.lbrace '}' 
-
-       LBODY  shift 182
-       '{'  shift 183
-       .  error
-
-       lbrace  goto 199
-
-state 83
-       interfacetype:  LINTERFACE.lbrace interfacedcl_list osemi '}' 
-       interfacetype:  LINTERFACE.lbrace '}' 
-
-       LBODY  shift 182
-       '{'  shift 183
-       .  error
-
-       lbrace  goto 200
-
-state 84
-       imports:  imports import ';'.    (7)
-
-       .  reduce 7 (src line 228)
-
-
-state 85
-       import:  LIMPORT import_stmt.    (8)
-
-       .  reduce 8 (src line 230)
-
-
-state 86
-       import:  LIMPORT '('.import_stmt_list osemi ')' 
-       import:  LIMPORT '('.')' 
-
-       LLITERAL  shift 88
-       LNAME  shift 10
-       ')'  shift 202
-       '.'  shift 90
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       import_here  goto 87
-       sym  goto 89
-       hidden_importsym  goto 11
-       import_stmt  goto 203
-       import_stmt_list  goto 201
-
-state 87
-       import_stmt:  import_here.import_package import_there 
-       import_stmt:  import_here.import_there 
-       $$21: .    (21)
-
-       LPACKAGE  shift 7
-       .  reduce 21 (src line 334)
-
-       import_package  goto 204
-       import_there  goto 205
-       $$21  goto 15
-
-state 88
-       import_here:  LLITERAL.    (15)
-
-       .  reduce 15 (src line 286)
-
-
-state 89
-       import_here:  sym.LLITERAL 
-
-       LLITERAL  shift 206
-       .  error
-
-
-state 90
-       import_here:  '.'.LLITERAL 
-
-       LLITERAL  shift 207
-       .  error
-
-
-state 91
-       hidden_importsym:  '@' LLITERAL '.'.LNAME 
-       hidden_importsym:  '@' LLITERAL '.'.'?' 
-
-       LNAME  shift 208
-       '?'  shift 209
-       .  error
-
-
-state 92
-       import_there:  $$21 hidden_import_list '$'.'$' 
-
-       '$'  shift 210
-       .  error
-
-
-state 93
-       hidden_import_list:  hidden_import_list hidden_import.    (345)
-
-       .  reduce 345 (src line 2272)
-
-
-state 94
-       hidden_import:  LIMPORT.LNAME LLITERAL ';' 
-
-       LNAME  shift 211
-       .  error
-
-
-state 95
-       hidden_import:  LVAR.hidden_pkg_importsym hidden_type ';' 
-
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 213
-       hidden_pkg_importsym  goto 212
-
-state 96
-       hidden_import:  LCONST.hidden_pkg_importsym '=' hidden_constant ';' 
-       hidden_import:  LCONST.hidden_pkg_importsym hidden_type '=' hidden_constant ';' 
-
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 213
-       hidden_pkg_importsym  goto 214
-
-state 97
-       hidden_import:  LTYPE.hidden_pkgtype hidden_type ';' 
-
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 213
-       hidden_pkg_importsym  goto 216
-       hidden_pkgtype  goto 215
-
-state 98
-       hidden_import:  LFUNC.hidden_fndcl fnbody ';' 
-
-       '('  shift 219
-       '@'  shift 13
-       .  error
-
-       hidden_fndcl  goto 217
-       hidden_importsym  goto 213
-       hidden_pkg_importsym  goto 218
-
-state 99
-       import_package:  LPACKAGE LNAME import_safety ';'.    (18)
-
-       .  reduce 18 (src line 309)
-
-
-state 100
-       xdcl_list:  xdcl_list xdcl ';'.    (219)
-
-       .  reduce 219 (src line 1573)
-
-
-state 101
-       common_dcl:  LVAR vardcl.    (28)
-
-       .  reduce 28 (src line 367)
-
-
-state 102
-       common_dcl:  LVAR '('.vardcl_list osemi ')' 
-       common_dcl:  LVAR '('.')' 
-
-       LNAME  shift 10
-       ')'  shift 221
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 103
-       vardcl  goto 222
-       vardcl_list  goto 220
-       hidden_importsym  goto 11
-
-state 103
-       vardcl:  dcl_name_list.ntype 
-       vardcl:  dcl_name_list.ntype '=' expr_list 
-       vardcl:  dcl_name_list.'=' expr_list 
-       dcl_name_list:  dcl_name_list.',' dcl_name 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '='  shift 224
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       ','  shift 225
-       .  error
-
-       sym  goto 123
-       ntype  goto 223
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 104
-       dcl_name_list:  dcl_name.    (274)
-
-       .  reduce 274 (src line 1892)
-
-
-state 105
-       dcl_name:  sym.    (154)
-
-       .  reduce 154 (src line 1163)
-
-
-state 106
-       common_dcl:  lconst constdcl.    (31)
-
-       .  reduce 31 (src line 380)
-
-
-state 107
-       common_dcl:  lconst '('.constdcl osemi ')' 
-       common_dcl:  lconst '('.constdcl ';' constdcl_list osemi ')' 
-       common_dcl:  lconst '('.')' 
-
-       LNAME  shift 10
-       ')'  shift 234
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 108
-       constdcl  goto 233
-       hidden_importsym  goto 11
-
-state 108
-       constdcl:  dcl_name_list.ntype '=' expr_list 
-       constdcl:  dcl_name_list.'=' expr_list 
-       dcl_name_list:  dcl_name_list.',' dcl_name 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '='  shift 236
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       ','  shift 225
-       .  error
-
-       sym  goto 123
-       ntype  goto 235
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 109
-       common_dcl:  LTYPE typedcl.    (35)
-
-       .  reduce 35 (src line 403)
-
-
-state 110
-       common_dcl:  LTYPE '('.typedcl_list osemi ')' 
-       common_dcl:  LTYPE '('.')' 
-
-       LNAME  shift 10
-       ')'  shift 238
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 112
-       typedclname  goto 111
-       typedcl  goto 239
-       typedcl_list  goto 237
-       hidden_importsym  goto 11
-
-state 111
-       typedcl:  typedclname.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 240
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 112
-       typedclname:  sym.    (47)
-
-       .  reduce 47 (src line 457)
-
-
-state 113
-       xfndcl:  LFUNC fndcl.fnbody 
-       fnbody: .    (210)
-
-       '{'  shift 242
-       .  reduce 210 (src line 1519)
-
-       fnbody  goto 241
-
-state 114
-       fndcl:  '('.oarg_type_list_ocomma ')' sym '(' oarg_type_list_ocomma ')' fnres 
-       fntype:  LFUNC '('.oarg_type_list_ocomma ')' fnres 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 243
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 115
-       fndcl:  sym.'(' oarg_type_list_ocomma ')' fnres 
-
-       '('  shift 251
-       .  error
-
-
-state 116
-       non_dcl_stmt:  labelname ':'.$$261 stmt 
-       $$261: .    (261)
-
-       .  reduce 261 (src line 1802)
-
-       $$261  goto 252
-
-state 117
-       non_dcl_stmt:  LBREAK onew_name.    (264)
-
-       .  reduce 264 (src line 1824)
-
-
-state 118
-       onew_name:  new_name.    (156)
-
-       .  reduce 156 (src line 1173)
-
-
-state 119
-       new_name:  sym.    (153)
-
-       .  reduce 153 (src line 1153)
-
-
-state 120
-       non_dcl_stmt:  LCONTINUE onew_name.    (265)
-
-       .  reduce 265 (src line 1828)
-
-
-state 121
-       pexpr_no_paren:  pseudocall.    (134)
-       non_dcl_stmt:  LGO pseudocall.    (266)
-
-       '('  reduce 134 (src line 1046)
-       '.'  reduce 134 (src line 1046)
-       '{'  reduce 134 (src line 1046)
-       '['  reduce 134 (src line 1046)
-       .  reduce 266 (src line 1832)
-
-
-state 122
-       pseudocall:  pexpr.'(' ')' 
-       pseudocall:  pexpr.'(' expr_or_type_list ocomma ')' 
-       pseudocall:  pexpr.'(' expr_or_type_list LDDD ocomma ')' 
-       pexpr_no_paren:  pexpr.'.' sym 
-       pexpr_no_paren:  pexpr.'.' '(' expr_or_type ')' 
-       pexpr_no_paren:  pexpr.'.' '(' LTYPE ')' 
-       pexpr_no_paren:  pexpr.'[' expr ']' 
-       pexpr_no_paren:  pexpr.'[' oexpr ':' oexpr ']' 
-       pexpr_no_paren:  pexpr.'[' oexpr ':' oexpr ':' oexpr ']' 
-
-       '('  shift 160
-       '.'  shift 161
-       '['  shift 162
-       .  error
-
-
-state 123
-       name:  sym.    (162)
-
-       .  reduce 162 (src line 1220)
-
-
-state 124
-       fntype:  LFUNC.'(' oarg_type_list_ocomma ')' fnres 
-
-       '('  shift 253
-       .  error
-
-
-state 125
-       pexpr_no_paren:  pseudocall.    (134)
-       non_dcl_stmt:  LDEFER pseudocall.    (267)
-
-       '('  reduce 134 (src line 1046)
-       '.'  reduce 134 (src line 1046)
-       '{'  reduce 134 (src line 1046)
-       '['  reduce 134 (src line 1046)
-       .  reduce 267 (src line 1836)
-
-
-state 126
-       non_dcl_stmt:  LGOTO new_name.    (268)
-
-       .  reduce 268 (src line 1840)
-
-
-state 127
-       non_dcl_stmt:  LRETURN oexpr_list.    (269)
-
-       .  reduce 269 (src line 1845)
-
-
-state 128
-       expr_list:  expr_list.',' expr 
-       oexpr_list:  expr_list.    (293)
-
-       ','  shift 155
-       .  reduce 293 (src line 1971)
-
-
-state 129
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       expr_list:  expr.    (276)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 276 (src line 1902)
-
-
-state 130
-       simple_stmt:  expr LASOP.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 254
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 131
-       simple_stmt:  expr LINC.    (53)
-
-       .  reduce 53 (src line 522)
-
-
-state 132
-       simple_stmt:  expr LDEC.    (54)
-
-       .  reduce 54 (src line 528)
-
-
-state 133
-       expr:  expr LOROR.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 255
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 134
-       expr:  expr LANDAND.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 256
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 135
-       expr:  expr LEQ.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 257
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 136
-       expr:  expr LNE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 258
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 137
-       expr:  expr LLT.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 259
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 138
-       expr:  expr LLE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 260
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 139
-       expr:  expr LGE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 261
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 140
-       expr:  expr LGT.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 262
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 141
-       expr:  expr '+'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 263
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 142
-       expr:  expr '-'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 264
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 143
-       expr:  expr '|'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 265
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 144
-       expr:  expr '^'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 266
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 145
-       expr:  expr '*'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 267
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 146
-       expr:  expr '/'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 268
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 147
-       expr:  expr '%'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 269
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 148
-       expr:  expr '&'.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 270
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 149
-       expr:  expr LANDNOT.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 271
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 150
-       expr:  expr LLSH.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 272
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 151
-       expr:  expr LRSH.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 273
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 152
-       expr:  expr LCOMM.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 274
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 153
-       simple_stmt:  expr_list '='.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 275
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 154
-       simple_stmt:  expr_list LCOLAS.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 276
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 155
-       expr_list:  expr_list ','.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 277
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 156
-       for_stmt:  LFOR $$74.for_body 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRANGE  shift 284
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       for_body  goto 278
-       for_header  goto 279
-       name  goto 69
-       osimple_stmt  goto 280
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       range_stmt  goto 281
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 283
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 157
-       switch_stmt:  LSWITCH $$88.if_header $$89 LBODY caseblock_list '}' 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       if_header  goto 285
-       name  goto 69
-       osimple_stmt  goto 286
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 158
-       select_stmt:  LSELECT $$91.LBODY caseblock_list '}' 
-
-       LBODY  shift 287
-       .  error
-
-
-state 159
-       if_stmt:  LIF $$78.if_header $$79 loop_body $$80 elseif_list else 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       if_header  goto 288
-       name  goto 69
-       osimple_stmt  goto 286
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 160
-       pseudocall:  pexpr '('.')' 
-       pseudocall:  pexpr '('.expr_or_type_list ocomma ')' 
-       pseudocall:  pexpr '('.expr_or_type_list LDDD ocomma ')' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       ')'  shift 289
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 291
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_or_type_list  goto 290
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 161
-       pexpr_no_paren:  pexpr '.'.sym 
-       pexpr_no_paren:  pexpr '.'.'(' expr_or_type ')' 
-       pexpr_no_paren:  pexpr '.'.'(' LTYPE ')' 
-
-       LNAME  shift 10
-       '('  shift 293
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 292
-       hidden_importsym  goto 11
-
-state 162
-       pexpr_no_paren:  pexpr '['.expr ']' 
-       pexpr_no_paren:  pexpr '['.oexpr ':' oexpr ']' 
-       pexpr_no_paren:  pexpr '['.oexpr ':' oexpr ':' oexpr ']' 
-       oexpr: .    (290)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 290 (src line 1961)
-
-       sym  goto 123
-       expr  goto 294
-       fnliteral  goto 73
-       name  goto 69
-       oexpr  goto 295
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 163
-       uexpr:  '*' uexpr.    (115)
-
-       .  reduce 115 (src line 941)
-
-
-state 164
-       uexpr:  '&' uexpr.    (116)
-
-       .  reduce 116 (src line 945)
-
-
-state 165
-       uexpr:  '+' uexpr.    (117)
-
-       .  reduce 117 (src line 956)
-
-
-state 166
-       uexpr:  '-' uexpr.    (118)
-
-       .  reduce 118 (src line 960)
-
-
-state 167
-       uexpr:  '!' uexpr.    (119)
-
-       .  reduce 119 (src line 964)
-
-
-state 168
-       uexpr:  '~' uexpr.    (120)
-
-       .  reduce 120 (src line 968)
-
-
-state 169
-       uexpr:  '^' uexpr.    (121)
-
-       .  reduce 121 (src line 973)
-
-
-state 170
-       uexpr:  LCOMM uexpr.    (122)
-
-       .  reduce 122 (src line 977)
-
-
-state 171
-       pexpr_no_paren:  pexpr_no_paren '{'.start_complit braced_keyval_list '}' 
-       start_complit: .    (140)
-
-       .  reduce 140 (src line 1075)
-
-       start_complit  goto 296
-
-state 172
-       pexpr_no_paren:  '(' expr_or_type.')' '{' start_complit braced_keyval_list '}' 
-       pexpr:  '(' expr_or_type.')' 
-
-       ')'  shift 297
-       .  error
-
-
-state 173
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       expr_or_type:  expr.    (148)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 148 (src line 1131)
-
-
-state 174
-       expr_or_type:  non_expr_type.    (149)
-
-       .  reduce 149 (src line 1133)
-
-
-state 175
-       non_expr_type:  recvchantype.    (172)
-
-       .  reduce 172 (src line 1263)
-
-
-state 176
-       non_expr_type:  fntype.    (173)
-       convtype:  fntype.    (181)
-       fnlitdcl:  fntype.    (215)
-
-       error  reduce 215 (src line 1546)
-       LBODY  reduce 215 (src line 1546)
-       '('  reduce 181 (src line 1282)
-       '{'  reduce 215 (src line 1546)
-       .  reduce 173 (src line 1265)
-
-
-state 177
-       non_expr_type:  othertype.    (174)
-       convtype:  othertype.    (182)
-       comptype:  othertype.    (183)
-
-       LBODY  reduce 183 (src line 1286)
-       '('  reduce 182 (src line 1284)
-       '{'  reduce 183 (src line 1286)
-       .  reduce 174 (src line 1266)
-
-
-state 178
-       uexpr:  '*'.uexpr 
-       non_expr_type:  '*'.non_expr_type 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 298
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 163
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 179
-       uexpr:  LCOMM.uexpr 
-       recvchantype:  LCOMM.LCHAN ntype 
-
-       LLITERAL  shift 68
-       LCHAN  shift 299
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 170
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 180
-       pexpr_no_paren:  convtype '('.expr ocomma ')' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 300
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 181
-       pexpr_no_paren:  comptype lbrace.start_complit braced_keyval_list '}' 
-       start_complit: .    (140)
-
-       .  reduce 140 (src line 1075)
-
-       start_complit  goto 301
-
-state 182
-       lbrace:  LBODY.    (151)
-
-       .  reduce 151 (src line 1138)
-
-
-state 183
-       lbrace:  '{'.    (152)
-
-       .  reduce 152 (src line 1143)
-
-
-state 184
-       fnliteral:  fnlitdcl lbrace.stmt_list '}' 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 303
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       stmt_list  goto 302
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 185
-       fnliteral:  fnlitdcl error.    (217)
-
-       .  reduce 217 (src line 1558)
-
-
-state 186
-       othertype:  '[' oexpr.']' ntype 
-
-       ']'  shift 309
-       .  error
-
-
-state 187
-       othertype:  '[' LDDD.']' ntype 
-
-       ']'  shift 310
-       .  error
-
-
-state 188
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       oexpr:  expr.    (291)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 291 (src line 1965)
-
-
-state 189
-       othertype:  LCHAN non_recvchantype.    (193)
-
-       .  reduce 193 (src line 1320)
-
-
-state 190
-       othertype:  LCHAN LCOMM.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 311
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 191
-       non_recvchantype:  fntype.    (176)
-
-       .  reduce 176 (src line 1272)
-
-
-state 192
-       non_recvchantype:  othertype.    (177)
-
-       .  reduce 177 (src line 1274)
-
-
-state 193
-       non_recvchantype:  ptrtype.    (178)
-
-       .  reduce 178 (src line 1275)
-
-
-state 194
-       non_recvchantype:  dotname.    (179)
-
-       .  reduce 179 (src line 1276)
-
-
-state 195
-       non_recvchantype:  '('.ntype ')' 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 312
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 196
-       ptrtype:  '*'.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 313
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 197
-       dotname:  name.    (189)
-       dotname:  name.'.' sym 
-
-       '.'  shift 314
-       .  reduce 189 (src line 1296)
-
-
-state 198
-       othertype:  LMAP '['.ntype ']' ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 315
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 199
-       structtype:  LSTRUCT lbrace.structdcl_list osemi '}' 
-       structtype:  LSTRUCT lbrace.'}' 
-
-       LNAME  shift 325
-       '*'  shift 322
-       '('  shift 321
-       '}'  shift 317
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 119
-       packname  goto 324
-       embed  goto 320
-       new_name  goto 323
-       new_name_list  goto 319
-       structdcl  goto 318
-       structdcl_list  goto 316
-       hidden_importsym  goto 11
-
-state 200
-       interfacetype:  LINTERFACE lbrace.interfacedcl_list osemi '}' 
-       interfacetype:  LINTERFACE lbrace.'}' 
-
-       LNAME  shift 325
-       '('  shift 331
-       '}'  shift 327
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 119
-       packname  goto 330
-       interfacedcl  goto 328
-       new_name  goto 329
-       interfacedcl_list  goto 326
-       hidden_importsym  goto 11
-
-state 201
-       import:  LIMPORT '(' import_stmt_list.osemi ')' 
-       import_stmt_list:  import_stmt_list.';' import_stmt 
-       osemi: .    (286)
-
-       ';'  shift 333
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 332
-
-state 202
-       import:  LIMPORT '(' ')'.    (10)
-
-       .  reduce 10 (src line 233)
-
-
-state 203
-       import_stmt_list:  import_stmt.    (13)
-
-       .  reduce 13 (src line 282)
-
-
-state 204
-       import_stmt:  import_here import_package.import_there 
-       $$21: .    (21)
-
-       .  reduce 21 (src line 334)
-
-       import_there  goto 334
-       $$21  goto 15
-
-state 205
-       import_stmt:  import_here import_there.    (12)
-
-       .  reduce 12 (src line 271)
-
-
-state 206
-       import_here:  sym LLITERAL.    (16)
-
-       .  reduce 16 (src line 294)
-
-
-state 207
-       import_here:  '.' LLITERAL.    (17)
-
-       .  reduce 17 (src line 301)
-
-
-state 208
-       hidden_importsym:  '@' LLITERAL '.' LNAME.    (160)
-
-       .  reduce 160 (src line 1190)
-
-
-state 209
-       hidden_importsym:  '@' LLITERAL '.' '?'.    (161)
-
-       .  reduce 161 (src line 1205)
-
-
-state 210
-       import_there:  $$21 hidden_import_list '$' '$'.    (22)
-
-       .  reduce 22 (src line 338)
-
-
-state 211
-       hidden_import:  LIMPORT LNAME.LLITERAL ';' 
-
-       LLITERAL  shift 335
-       .  error
-
-
-state 212
-       hidden_import:  LVAR hidden_pkg_importsym.hidden_type ';' 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 336
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 213
-       hidden_pkg_importsym:  hidden_importsym.    (310)
-
-       .  reduce 310 (src line 2047)
-
-
-state 214
-       hidden_import:  LCONST hidden_pkg_importsym.'=' hidden_constant ';' 
-       hidden_import:  LCONST hidden_pkg_importsym.hidden_type '=' hidden_constant ';' 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '='  shift 350
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 351
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 215
-       hidden_import:  LTYPE hidden_pkgtype.hidden_type ';' 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 352
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 216
-       hidden_pkgtype:  hidden_pkg_importsym.    (311)
-
-       .  reduce 311 (src line 2054)
-
-
-state 217
-       hidden_import:  LFUNC hidden_fndcl.fnbody ';' 
-       fnbody: .    (210)
-
-       '{'  shift 242
-       .  reduce 210 (src line 1519)
-
-       fnbody  goto 353
-
-state 218
-       hidden_fndcl:  hidden_pkg_importsym.'(' ohidden_funarg_list ')' ohidden_funres 
-
-       '('  shift 354
-       .  error
-
-
-state 219
-       hidden_fndcl:  '('.hidden_funarg_list ')' sym '(' ohidden_funarg_list ')' ohidden_funres 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 355
-
-state 220
-       common_dcl:  LVAR '(' vardcl_list.osemi ')' 
-       vardcl_list:  vardcl_list.';' vardcl 
-       osemi: .    (286)
-
-       ';'  shift 359
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 358
-
-state 221
-       common_dcl:  LVAR '(' ')'.    (30)
-
-       .  reduce 30 (src line 376)
-
-
-state 222
-       vardcl_list:  vardcl.    (220)
-
-       .  reduce 220 (src line 1585)
-
-
-state 223
-       vardcl:  dcl_name_list ntype.    (39)
-       vardcl:  dcl_name_list ntype.'=' expr_list 
-
-       '='  shift 360
-       .  reduce 39 (src line 422)
-
-
-state 224
-       vardcl:  dcl_name_list '='.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 361
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 225
-       dcl_name_list:  dcl_name_list ','.dcl_name 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 105
-       dcl_name  goto 362
-       hidden_importsym  goto 11
-
-state 226
-       ntype:  recvchantype.    (166)
-
-       .  reduce 166 (src line 1252)
-
-
-state 227
-       ntype:  fntype.    (167)
-
-       .  reduce 167 (src line 1254)
-
-
-state 228
-       ntype:  othertype.    (168)
-
-       .  reduce 168 (src line 1255)
-
-
-state 229
-       ntype:  ptrtype.    (169)
-
-       .  reduce 169 (src line 1256)
-
-
-state 230
-       ntype:  dotname.    (170)
-
-       .  reduce 170 (src line 1257)
-
-
-state 231
-       ntype:  '('.ntype ')' 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 363
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 232
-       recvchantype:  LCOMM.LCHAN ntype 
-
-       LCHAN  shift 364
-       .  error
-
-
-state 233
-       common_dcl:  lconst '(' constdcl.osemi ')' 
-       common_dcl:  lconst '(' constdcl.';' constdcl_list osemi ')' 
-       osemi: .    (286)
-
-       ';'  shift 366
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 365
-
-state 234
-       common_dcl:  lconst '(' ')'.    (34)
-
-       .  reduce 34 (src line 398)
-
-
-state 235
-       constdcl:  dcl_name_list ntype.'=' expr_list 
-
-       '='  shift 367
-       .  error
-
-
-state 236
-       constdcl:  dcl_name_list '='.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 368
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 237
-       common_dcl:  LTYPE '(' typedcl_list.osemi ')' 
-       typedcl_list:  typedcl_list.';' typedcl 
-       osemi: .    (286)
-
-       ';'  shift 370
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 369
-
-state 238
-       common_dcl:  LTYPE '(' ')'.    (37)
-
-       .  reduce 37 (src line 411)
-
-
-state 239
-       typedcl_list:  typedcl.    (224)
-
-       .  reduce 224 (src line 1599)
-
-
-state 240
-       typedcl:  typedclname ntype.    (48)
-
-       .  reduce 48 (src line 466)
-
-
-state 241
-       xfndcl:  LFUNC fndcl fnbody.    (204)
-
-       .  reduce 204 (src line 1380)
-
-
-state 242
-       fnbody:  '{'.stmt_list '}' 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 303
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       stmt_list  goto 371
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 243
-       fndcl:  '(' oarg_type_list_ocomma.')' sym '(' oarg_type_list_ocomma ')' fnres 
-       fntype:  LFUNC '(' oarg_type_list_ocomma.')' fnres 
-
-       ')'  shift 372
-       .  error
-
-
-state 244
-       arg_type_list:  arg_type_list.',' arg_type 
-       oarg_type_list_ocomma:  arg_type_list.ocomma 
-       ocomma: .    (288)
-
-       ','  shift 373
-       .  reduce 288 (src line 1958)
-
-       ocomma  goto 374
-
-state 245
-       arg_type_list:  arg_type.    (247)
-
-       .  reduce 247 (src line 1759)
-
-
-state 246
-       arg_type:  name_or_type.    (243)
-
-       .  reduce 243 (src line 1743)
-
-
-state 247
-       name:  sym.    (162)
-       arg_type:  sym.name_or_type 
-       arg_type:  sym.dotdotdot 
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 162 (src line 1220)
-
-       sym  goto 123
-       ntype  goto 249
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 375
-       dotdotdot  goto 376
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 248
-       arg_type:  dotdotdot.    (246)
-
-       .  reduce 246 (src line 1757)
-
-
-state 249
-       name_or_type:  ntype.    (150)
-
-       .  reduce 150 (src line 1135)
-
-
-state 250
-       dotdotdot:  LDDD.    (164)
-       dotdotdot:  LDDD.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 164 (src line 1241)
-
-       sym  goto 123
-       ntype  goto 377
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 251
-       fndcl:  sym '('.oarg_type_list_ocomma ')' fnres 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 378
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 252
-       non_dcl_stmt:  labelname ':' $$261.stmt 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCASE  reduce 251 (src line 1781)
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFAULT  reduce 251 (src line 1781)
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 379
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 253
-       fntype:  LFUNC '('.oarg_type_list_ocomma ')' fnres 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 380
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 254
-       simple_stmt:  expr LASOP expr.    (50)
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 50 (src line 487)
-
-
-state 255
-       expr:  expr.LOROR expr 
-       expr:  expr LOROR expr.    (94)
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 94 (src line 857)
-
-
-state 256
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr LANDAND expr.    (95)
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 95 (src line 861)
-
-
-state 257
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr LEQ expr.    (96)
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 96 (src line 865)
-
-
-state 258
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr LNE expr.    (97)
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 97 (src line 869)
-
-
-state 259
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr LLT expr.    (98)
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 98 (src line 873)
-
-
-state 260
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr LLE expr.    (99)
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 99 (src line 877)
-
-
-state 261
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr LGE expr.    (100)
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 100 (src line 881)
-
-
-state 262
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr LGT expr.    (101)
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 101 (src line 885)
-
-
-state 263
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr '+' expr.    (102)
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 102 (src line 889)
-
-
-state 264
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr '-' expr.    (103)
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 103 (src line 893)
-
-
-state 265
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr '|' expr.    (104)
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 104 (src line 897)
-
-
-state 266
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr '^' expr.    (105)
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDNOT  shift 149
-       LLSH  shift 150
-       LRSH  shift 151
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 105 (src line 901)
-
-
-state 267
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr '*' expr.    (106)
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 106 (src line 905)
-
-
-state 268
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr '/' expr.    (107)
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 107 (src line 909)
-
-
-state 269
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr '%' expr.    (108)
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 108 (src line 913)
-
-
-state 270
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr '&' expr.    (109)
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 109 (src line 917)
-
-
-state 271
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr LANDNOT expr.    (110)
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 110 (src line 921)
-
-
-state 272
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr LLSH expr.    (111)
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       .  reduce 111 (src line 925)
-
-
-state 273
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr LRSH expr.    (112)
-       expr:  expr.LCOMM expr 
-
-       .  reduce 112 (src line 929)
-
-
-state 274
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       expr:  expr LCOMM expr.    (113)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 113 (src line 934)
-
-
-state 275
-       simple_stmt:  expr_list '=' expr_list.    (51)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 51 (src line 492)
-
-
-state 276
-       simple_stmt:  expr_list LCOLAS expr_list.    (52)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 52 (src line 504)
-
-
-state 277
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       expr_list:  expr_list ',' expr.    (277)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 277 (src line 1907)
-
-
-state 278
-       for_stmt:  LFOR $$74 for_body.    (75)
-
-       .  reduce 75 (src line 726)
-
-
-state 279
-       for_body:  for_header.loop_body 
-
-       LBODY  shift 382
-       .  error
-
-       loop_body  goto 381
-
-state 280
-       for_header:  osimple_stmt.';' osimple_stmt ';' osimple_stmt 
-       for_header:  osimple_stmt.    (71)
-
-       ';'  shift 383
-       .  reduce 71 (src line 706)
-
-
-state 281
-       for_header:  range_stmt.    (72)
-
-       .  reduce 72 (src line 712)
-
-
-state 282
-       osimple_stmt:  simple_stmt.    (295)
-
-       .  reduce 295 (src line 1977)
-
-
-state 283
-       simple_stmt:  expr_list.'=' expr_list 
-       simple_stmt:  expr_list.LCOLAS expr_list 
-       range_stmt:  expr_list.'=' LRANGE expr 
-       range_stmt:  expr_list.LCOLAS LRANGE expr 
-       expr_list:  expr_list.',' expr 
-
-       LCOLAS  shift 385
-       '='  shift 384
-       ','  shift 155
-       .  error
-
-
-state 284
-       range_stmt:  LRANGE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 386
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 285
-       switch_stmt:  LSWITCH $$88 if_header.$$89 LBODY caseblock_list '}' 
-       $$89: .    (89)
-
-       .  reduce 89 (src line 821)
-
-       $$89  goto 387
-
-state 286
-       if_header:  osimple_stmt.    (76)
-       if_header:  osimple_stmt.';' osimple_stmt 
-
-       ';'  shift 388
-       .  reduce 76 (src line 732)
-
-
-state 287
-       select_stmt:  LSELECT $$91 LBODY.caseblock_list '}' 
-       caseblock_list: .    (63)
-
-       .  reduce 63 (src line 652)
-
-       caseblock_list  goto 389
-
-state 288
-       if_stmt:  LIF $$78 if_header.$$79 loop_body $$80 elseif_list else 
-       $$79: .    (79)
-
-       .  reduce 79 (src line 755)
-
-       $$79  goto 390
-
-state 289
-       pseudocall:  pexpr '(' ')'.    (123)
-
-       .  reduce 123 (src line 986)
-
-
-state 290
-       pseudocall:  pexpr '(' expr_or_type_list.ocomma ')' 
-       pseudocall:  pexpr '(' expr_or_type_list.LDDD ocomma ')' 
-       expr_or_type_list:  expr_or_type_list.',' expr_or_type 
-       ocomma: .    (288)
-
-       LDDD  shift 392
-       ','  shift 393
-       .  reduce 288 (src line 1958)
-
-       ocomma  goto 391
-
-state 291
-       expr_or_type_list:  expr_or_type.    (278)
-
-       .  reduce 278 (src line 1912)
-
-
-state 292
-       pexpr_no_paren:  pexpr '.' sym.    (128)
-
-       .  reduce 128 (src line 1009)
-
-
-state 293
-       pexpr_no_paren:  pexpr '.' '('.expr_or_type ')' 
-       pexpr_no_paren:  pexpr '.' '('.LTYPE ')' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LTYPE  shift 395
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 394
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 294
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       pexpr_no_paren:  pexpr '[' expr.']' 
-       oexpr:  expr.    (291)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       ']'  shift 396
-       .  reduce 291 (src line 1965)
-
-
-state 295
-       pexpr_no_paren:  pexpr '[' oexpr.':' oexpr ']' 
-       pexpr_no_paren:  pexpr '[' oexpr.':' oexpr ':' oexpr ']' 
-
-       ':'  shift 397
-       .  error
-
-
-state 296
-       pexpr_no_paren:  pexpr_no_paren '{' start_complit.braced_keyval_list '}' 
-       braced_keyval_list: .    (284)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 284 (src line 1943)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 401
-       fnliteral  goto 73
-       keyval  goto 400
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       keyval_list  goto 399
-       braced_keyval_list  goto 398
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 297
-       pexpr_no_paren:  '(' expr_or_type ')'.'{' start_complit braced_keyval_list '}' 
-       pexpr:  '(' expr_or_type ')'.    (147)
-
-       '{'  shift 404
-       .  reduce 147 (src line 1118)
-
-
-state 298
-       non_expr_type:  '*' non_expr_type.    (175)
-
-       .  reduce 175 (src line 1267)
-
-
-state 299
-       othertype:  LCHAN.non_recvchantype 
-       othertype:  LCHAN.LCOMM ntype 
-       recvchantype:  LCOMM LCHAN.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 405
-       '*'  shift 196
-       '('  shift 411
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 406
-       dotname  goto 410
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 409
-       recvchantype  goto 226
-       non_recvchantype  goto 189
-       othertype  goto 408
-       fntype  goto 407
-       hidden_importsym  goto 11
-
-state 300
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       pexpr_no_paren:  convtype '(' expr.ocomma ')' 
-       ocomma: .    (288)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       ','  shift 413
-       .  reduce 288 (src line 1958)
-
-       ocomma  goto 412
-
-state 301
-       pexpr_no_paren:  comptype lbrace start_complit.braced_keyval_list '}' 
-       braced_keyval_list: .    (284)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 284 (src line 1943)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 401
-       fnliteral  goto 73
-       keyval  goto 400
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       keyval_list  goto 399
-       braced_keyval_list  goto 414
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 302
-       fnliteral:  fnlitdcl lbrace stmt_list.'}' 
-       stmt_list:  stmt_list.';' stmt 
-
-       ';'  shift 416
-       '}'  shift 415
-       .  error
-
-
-state 303
-       stmt_list:  stmt.    (270)
-
-       .  reduce 270 (src line 1866)
-
-
-state 304
-       stmt:  compound_stmt.    (252)
-
-       .  reduce 252 (src line 1785)
-
-
-state 305
-       stmt:  common_dcl.    (253)
-
-       .  reduce 253 (src line 1786)
-
-
-state 306
-       stmt:  non_dcl_stmt.    (254)
-
-       .  reduce 254 (src line 1790)
-
-
-state 307
-       stmt:  error.    (255)
-
-       .  reduce 255 (src line 1791)
-
-
-state 308
-       compound_stmt:  '{'.$$59 stmt_list '}' 
-       $$59: .    (59)
-
-       .  reduce 59 (src line 606)
-
-       $$59  goto 417
-
-state 309
-       othertype:  '[' oexpr ']'.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 418
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 310
-       othertype:  '[' LDDD ']'.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 419
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 311
-       othertype:  LCHAN LCOMM ntype.    (194)
-
-       .  reduce 194 (src line 1325)
-
-
-state 312
-       non_recvchantype:  '(' ntype.')' 
-
-       ')'  shift 420
-       .  error
-
-
-state 313
-       ptrtype:  '*' ntype.    (198)
-
-       .  reduce 198 (src line 1337)
-
-
-state 314
-       dotname:  name '.'.sym 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 421
-       hidden_importsym  goto 11
-
-state 315
-       othertype:  LMAP '[' ntype.']' ntype 
-
-       ']'  shift 422
-       .  error
-
-
-state 316
-       structtype:  LSTRUCT lbrace structdcl_list.osemi '}' 
-       structdcl_list:  structdcl_list.';' structdcl 
-       osemi: .    (286)
-
-       ';'  shift 424
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 423
-
-state 317
-       structtype:  LSTRUCT lbrace '}'.    (201)
-
-       .  reduce 201 (src line 1357)
-
-
-state 318
-       structdcl_list:  structdcl.    (226)
-
-       .  reduce 226 (src line 1609)
-
-
-state 319
-       structdcl:  new_name_list.ntype oliteral 
-       new_name_list:  new_name_list.',' new_name 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       ','  shift 426
-       .  error
-
-       sym  goto 123
-       ntype  goto 425
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 320
-       structdcl:  embed.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 427
-
-state 321
-       structdcl:  '('.embed ')' oliteral 
-       structdcl:  '('.'*' embed ')' oliteral 
-
-       LNAME  shift 431
-       '*'  shift 430
-       .  error
-
-       packname  goto 324
-       embed  goto 429
-
-state 322
-       structdcl:  '*'.embed oliteral 
-       structdcl:  '*'.'(' embed ')' oliteral 
-
-       LNAME  shift 431
-       '('  shift 433
-       .  error
-
-       packname  goto 324
-       embed  goto 432
-
-state 323
-       new_name_list:  new_name.    (272)
-
-       .  reduce 272 (src line 1882)
-
-
-state 324
-       embed:  packname.    (238)
-
-       .  reduce 238 (src line 1708)
-
-
-state 325
-       sym:  LNAME.    (157)
-       packname:  LNAME.    (236)
-       packname:  LNAME.'.' sym 
-
-       LLITERAL  reduce 236 (src line 1683)
-       ';'  reduce 236 (src line 1683)
-       '.'  shift 434
-       '}'  reduce 236 (src line 1683)
-       .  reduce 157 (src line 1175)
-
-
-state 326
-       interfacetype:  LINTERFACE lbrace interfacedcl_list.osemi '}' 
-       interfacedcl_list:  interfacedcl_list.';' interfacedcl 
-       osemi: .    (286)
-
-       ';'  shift 436
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 435
-
-state 327
-       interfacetype:  LINTERFACE lbrace '}'.    (203)
-
-       .  reduce 203 (src line 1370)
-
-
-state 328
-       interfacedcl_list:  interfacedcl.    (228)
-
-       .  reduce 228 (src line 1616)
-
-
-state 329
-       interfacedcl:  new_name.indcl 
-
-       '('  shift 438
-       .  error
-
-       indcl  goto 437
-
-state 330
-       interfacedcl:  packname.    (240)
-
-       .  reduce 240 (src line 1720)
-
-
-state 331
-       interfacedcl:  '('.packname ')' 
-
-       LNAME  shift 431
-       .  error
-
-       packname  goto 439
-
-state 332
-       import:  LIMPORT '(' import_stmt_list osemi.')' 
-
-       ')'  shift 440
-       .  error
-
-
-state 333
-       import_stmt_list:  import_stmt_list ';'.import_stmt 
-       osemi:  ';'.    (287)
-
-       LLITERAL  shift 88
-       LNAME  shift 10
-       '.'  shift 90
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       import_here  goto 87
-       sym  goto 89
-       hidden_importsym  goto 11
-       import_stmt  goto 441
-
-state 334
-       import_stmt:  import_here import_package import_there.    (11)
-
-       .  reduce 11 (src line 235)
-
-
-state 335
-       hidden_import:  LIMPORT LNAME LLITERAL.';' 
-
-       ';'  shift 442
-       .  error
-
-
-state 336
-       hidden_import:  LVAR hidden_pkg_importsym hidden_type.';' 
-
-       ';'  shift 443
-       .  error
-
-
-state 337
-       hidden_type:  hidden_type_misc.    (312)
-
-       .  reduce 312 (src line 2065)
-
-
-state 338
-       hidden_type:  hidden_type_recv_chan.    (313)
-
-       .  reduce 313 (src line 2067)
-
-
-state 339
-       hidden_type:  hidden_type_func.    (314)
-
-       .  reduce 314 (src line 2068)
-
-
-state 340
-       hidden_type_misc:  hidden_importsym.    (317)
-
-       .  reduce 317 (src line 2074)
-
-
-state 341
-       hidden_type_misc:  LNAME.    (318)
-
-       .  reduce 318 (src line 2079)
-
-
-state 342
-       hidden_type_misc:  '['.']' hidden_type 
-       hidden_type_misc:  '['.LLITERAL ']' hidden_type 
-
-       LLITERAL  shift 445
-       ']'  shift 444
-       .  error
-
-
-state 343
-       hidden_type_misc:  LMAP.'[' hidden_type ']' hidden_type 
-
-       '['  shift 446
-       .  error
-
-
-state 344
-       hidden_type_misc:  LSTRUCT.'{' ohidden_structdcl_list '}' 
-
-       '{'  shift 447
-       .  error
-
-
-state 345
-       hidden_type_misc:  LINTERFACE.'{' ohidden_interfacedcl_list '}' 
-
-       '{'  shift 448
-       .  error
-
-
-state 346
-       hidden_type_misc:  '*'.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 449
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 347
-       hidden_type_misc:  LCHAN.hidden_type_non_recv_chan 
-       hidden_type_misc:  LCHAN.'(' hidden_type_recv_chan ')' 
-       hidden_type_misc:  LCHAN.LCOMM hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 452
-       '*'  shift 346
-       '('  shift 451
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type_misc  goto 453
-       hidden_type_func  goto 454
-       hidden_type_non_recv_chan  goto 450
-
-state 348
-       hidden_type_recv_chan:  LCOMM.LCHAN hidden_type 
-
-       LCHAN  shift 455
-       .  error
-
-
-state 349
-       hidden_type_func:  LFUNC.'(' ohidden_funarg_list ')' ohidden_funres 
-
-       '('  shift 456
-       .  error
-
-
-state 350
-       hidden_import:  LCONST hidden_pkg_importsym '='.hidden_constant ';' 
-
-       LLITERAL  shift 460
-       LNAME  shift 10
-       '-'  shift 461
-       '('  shift 459
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 462
-       hidden_importsym  goto 11
-       hidden_constant  goto 457
-       hidden_literal  goto 458
-
-state 351
-       hidden_import:  LCONST hidden_pkg_importsym hidden_type.'=' hidden_constant ';' 
-
-       '='  shift 463
-       .  error
-
-
-state 352
-       hidden_import:  LTYPE hidden_pkgtype hidden_type.';' 
-
-       ';'  shift 464
-       .  error
-
-
-state 353
-       hidden_import:  LFUNC hidden_fndcl fnbody.';' 
-
-       ';'  shift 465
-       .  error
-
-
-state 354
-       hidden_fndcl:  hidden_pkg_importsym '('.ohidden_funarg_list ')' ohidden_funres 
-       ohidden_funarg_list: .    (296)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 296 (src line 1979)
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 467
-       ohidden_funarg_list  goto 466
-
-state 355
-       hidden_fndcl:  '(' hidden_funarg_list.')' sym '(' ohidden_funarg_list ')' ohidden_funres 
-       hidden_funarg_list:  hidden_funarg_list.',' hidden_funarg 
-
-       ')'  shift 468
-       ','  shift 469
-       .  error
-
-
-state 356
-       hidden_funarg_list:  hidden_funarg.    (346)
-
-       .  reduce 346 (src line 2274)
-
-
-state 357
-       hidden_funarg:  sym.hidden_type oliteral 
-       hidden_funarg:  sym.LDDD hidden_type oliteral 
-
-       LCHAN  shift 347
-       LDDD  shift 471
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 470
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 358
-       common_dcl:  LVAR '(' vardcl_list osemi.')' 
-
-       ')'  shift 472
-       .  error
-
-
-state 359
-       vardcl_list:  vardcl_list ';'.vardcl 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 103
-       vardcl  goto 473
-       hidden_importsym  goto 11
-
-state 360
-       vardcl:  dcl_name_list ntype '='.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 474
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 361
-       vardcl:  dcl_name_list '=' expr_list.    (41)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 41 (src line 431)
-
-
-state 362
-       dcl_name_list:  dcl_name_list ',' dcl_name.    (275)
-
-       .  reduce 275 (src line 1897)
-
-
-state 363
-       ntype:  '(' ntype.')' 
-
-       ')'  shift 475
-       .  error
-
-
-state 364
-       recvchantype:  LCOMM LCHAN.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 406
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 365
-       common_dcl:  lconst '(' constdcl osemi.')' 
-
-       ')'  shift 476
-       .  error
-
-
-state 366
-       common_dcl:  lconst '(' constdcl ';'.constdcl_list osemi ')' 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 480
-       constdcl  goto 479
-       constdcl1  goto 478
-       constdcl_list  goto 477
-       hidden_importsym  goto 11
-
-state 367
-       constdcl:  dcl_name_list ntype '='.expr_list 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 481
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 368
-       constdcl:  dcl_name_list '=' expr_list.    (43)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 43 (src line 441)
-
-
-state 369
-       common_dcl:  LTYPE '(' typedcl_list osemi.')' 
-
-       ')'  shift 482
-       .  error
-
-
-state 370
-       typedcl_list:  typedcl_list ';'.typedcl 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 112
-       typedclname  goto 111
-       typedcl  goto 483
-       hidden_importsym  goto 11
-
-state 371
-       fnbody:  '{' stmt_list.'}' 
-       stmt_list:  stmt_list.';' stmt 
-
-       ';'  shift 416
-       '}'  shift 484
-       .  error
-
-
-state 372
-       fndcl:  '(' oarg_type_list_ocomma ')'.sym '(' oarg_type_list_ocomma ')' fnres 
-       fntype:  LFUNC '(' oarg_type_list_ocomma ')'.fnres 
-       fnres: .    (212)
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 488
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 212 (src line 1531)
-
-       sym  goto 485
-       dotname  goto 493
-       name  goto 197
-       fnres  goto 486
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 492
-       recvchantype  goto 489
-       othertype  goto 491
-       fnret_type  goto 487
-       fntype  goto 490
-       hidden_importsym  goto 11
-
-state 373
-       arg_type_list:  arg_type_list ','.arg_type 
-       ocomma:  ','.    (289)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 289 (src line 1959)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 494
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 374
-       oarg_type_list_ocomma:  arg_type_list ocomma.    (250)
-
-       .  reduce 250 (src line 1773)
-
-
-state 375
-       arg_type:  sym name_or_type.    (244)
-
-       .  reduce 244 (src line 1745)
-
-
-state 376
-       arg_type:  sym dotdotdot.    (245)
-
-       .  reduce 245 (src line 1751)
-
-
-state 377
-       dotdotdot:  LDDD ntype.    (165)
-
-       .  reduce 165 (src line 1247)
-
-
-state 378
-       fndcl:  sym '(' oarg_type_list_ocomma.')' fnres 
-
-       ')'  shift 495
-       .  error
-
-
-state 379
-       non_dcl_stmt:  labelname ':' $$261 stmt.    (262)
-
-       .  reduce 262 (src line 1807)
-
-
-state 380
-       fntype:  LFUNC '(' oarg_type_list_ocomma.')' fnres 
-
-       ')'  shift 496
-       .  error
-
-
-state 381
-       for_body:  for_header loop_body.    (73)
-
-       .  reduce 73 (src line 714)
-
-
-state 382
-       loop_body:  LBODY.$$65 stmt_list '}' 
-       $$65: .    (65)
-
-       .  reduce 65 (src line 661)
-
-       $$65  goto 497
-
-state 383
-       for_header:  osimple_stmt ';'.osimple_stmt ';' osimple_stmt 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       name  goto 69
-       osimple_stmt  goto 498
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 384
-       simple_stmt:  expr_list '='.expr_list 
-       range_stmt:  expr_list '='.LRANGE expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRANGE  shift 499
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 275
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 385
-       simple_stmt:  expr_list LCOLAS.expr_list 
-       range_stmt:  expr_list LCOLAS.LRANGE expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRANGE  shift 500
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 129
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_list  goto 276
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 386
-       range_stmt:  LRANGE expr.    (69)
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 69 (src line 686)
-
-
-state 387
-       switch_stmt:  LSWITCH $$88 if_header $$89.LBODY caseblock_list '}' 
-
-       LBODY  shift 501
-       .  error
-
-
-state 388
-       if_header:  osimple_stmt ';'.osimple_stmt 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       name  goto 69
-       osimple_stmt  goto 502
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 389
-       caseblock_list:  caseblock_list.caseblock 
-       select_stmt:  LSELECT $$91 LBODY caseblock_list.'}' 
-
-       LCASE  shift 506
-       LDEFAULT  shift 507
-       '}'  shift 504
-       .  error
-
-       case  goto 505
-       caseblock  goto 503
-
-state 390
-       if_stmt:  LIF $$78 if_header $$79.loop_body $$80 elseif_list else 
-
-       LBODY  shift 382
-       .  error
-
-       loop_body  goto 508
-
-state 391
-       pseudocall:  pexpr '(' expr_or_type_list ocomma.')' 
-
-       ')'  shift 509
-       .  error
-
-
-state 392
-       pseudocall:  pexpr '(' expr_or_type_list LDDD.ocomma ')' 
-       ocomma: .    (288)
-
-       ','  shift 413
-       .  reduce 288 (src line 1958)
-
-       ocomma  goto 510
-
-state 393
-       expr_or_type_list:  expr_or_type_list ','.expr_or_type 
-       ocomma:  ','.    (289)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 289 (src line 1959)
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 511
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 394
-       pexpr_no_paren:  pexpr '.' '(' expr_or_type.')' 
-
-       ')'  shift 512
-       .  error
-
-
-state 395
-       pexpr_no_paren:  pexpr '.' '(' LTYPE.')' 
-
-       ')'  shift 513
-       .  error
-
-
-state 396
-       pexpr_no_paren:  pexpr '[' expr ']'.    (131)
-
-       .  reduce 131 (src line 1028)
-
-
-state 397
-       pexpr_no_paren:  pexpr '[' oexpr ':'.oexpr ']' 
-       pexpr_no_paren:  pexpr '[' oexpr ':'.oexpr ':' oexpr ']' 
-       oexpr: .    (290)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 290 (src line 1961)
-
-       sym  goto 123
-       expr  goto 188
-       fnliteral  goto 73
-       name  goto 69
-       oexpr  goto 514
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 398
-       pexpr_no_paren:  pexpr_no_paren '{' start_complit braced_keyval_list.'}' 
-
-       '}'  shift 515
-       .  error
-
-
-state 399
-       keyval_list:  keyval_list.',' keyval 
-       keyval_list:  keyval_list.',' bare_complitexpr 
-       braced_keyval_list:  keyval_list.ocomma 
-       ocomma: .    (288)
-
-       ','  shift 516
-       .  reduce 288 (src line 1958)
-
-       ocomma  goto 517
-
-state 400
-       keyval_list:  keyval.    (280)
-
-       .  reduce 280 (src line 1925)
-
-
-state 401
-       keyval_list:  bare_complitexpr.    (281)
-
-       .  reduce 281 (src line 1930)
-
-
-state 402
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       keyval:  expr.':' complitexpr 
-       bare_complitexpr:  expr.    (142)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       ':'  shift 518
-       .  reduce 142 (src line 1088)
-
-
-state 403
-       bare_complitexpr:  '{'.start_complit braced_keyval_list '}' 
-       start_complit: .    (140)
-
-       .  reduce 140 (src line 1075)
-
-       start_complit  goto 519
-
-state 404
-       pexpr_no_paren:  '(' expr_or_type ')' '{'.start_complit braced_keyval_list '}' 
-       start_complit: .    (140)
-
-       .  reduce 140 (src line 1075)
-
-       start_complit  goto 520
-
-state 405
-       othertype:  LCHAN LCOMM.ntype 
-       recvchantype:  LCOMM.LCHAN ntype 
-
-       LCHAN  shift 299
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 311
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 406
-       recvchantype:  LCOMM LCHAN ntype.    (199)
-
-       .  reduce 199 (src line 1343)
-
-
-state 407
-       ntype:  fntype.    (167)
-       non_recvchantype:  fntype.    (176)
-
-       LBODY  reduce 176 (src line 1272)
-       '('  reduce 176 (src line 1272)
-       '{'  reduce 176 (src line 1272)
-       .  reduce 167 (src line 1254)
-
-
-state 408
-       ntype:  othertype.    (168)
-       non_recvchantype:  othertype.    (177)
-
-       LBODY  reduce 177 (src line 1274)
-       '('  reduce 177 (src line 1274)
-       '{'  reduce 177 (src line 1274)
-       .  reduce 168 (src line 1255)
-
-
-state 409
-       ntype:  ptrtype.    (169)
-       non_recvchantype:  ptrtype.    (178)
-
-       LBODY  reduce 178 (src line 1275)
-       '('  reduce 178 (src line 1275)
-       '{'  reduce 178 (src line 1275)
-       .  reduce 169 (src line 1256)
-
-
-state 410
-       ntype:  dotname.    (170)
-       non_recvchantype:  dotname.    (179)
-
-       LBODY  reduce 179 (src line 1276)
-       '('  reduce 179 (src line 1276)
-       '{'  reduce 179 (src line 1276)
-       .  reduce 170 (src line 1257)
-
-
-state 411
-       ntype:  '('.ntype ')' 
-       non_recvchantype:  '('.ntype ')' 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 521
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 412
-       pexpr_no_paren:  convtype '(' expr ocomma.')' 
-
-       ')'  shift 522
-       .  error
-
-
-state 413
-       ocomma:  ','.    (289)
-
-       .  reduce 289 (src line 1959)
-
-
-state 414
-       pexpr_no_paren:  comptype lbrace start_complit braced_keyval_list.'}' 
-
-       '}'  shift 523
-       .  error
-
-
-state 415
-       fnliteral:  fnlitdcl lbrace stmt_list '}'.    (216)
-
-       .  reduce 216 (src line 1552)
-
-
-state 416
-       stmt_list:  stmt_list ';'.stmt 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCASE  reduce 251 (src line 1781)
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFAULT  reduce 251 (src line 1781)
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 524
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 417
-       compound_stmt:  '{' $$59.stmt_list '}' 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 303
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       stmt_list  goto 525
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 418
-       othertype:  '[' oexpr ']' ntype.    (191)
-
-       .  reduce 191 (src line 1310)
-
-
-state 419
-       othertype:  '[' LDDD ']' ntype.    (192)
-
-       .  reduce 192 (src line 1315)
-
-
-state 420
-       non_recvchantype:  '(' ntype ')'.    (180)
-
-       .  reduce 180 (src line 1277)
-
-
-state 421
-       dotname:  name '.' sym.    (190)
-
-       .  reduce 190 (src line 1298)
-
-
-state 422
-       othertype:  LMAP '[' ntype ']'.ntype 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       ntype  goto 526
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 423
-       structtype:  LSTRUCT lbrace structdcl_list osemi.'}' 
-
-       '}'  shift 527
-       .  error
-
-
-state 424
-       structdcl_list:  structdcl_list ';'.structdcl 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 325
-       '*'  shift 322
-       '('  shift 321
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 119
-       packname  goto 324
-       embed  goto 320
-       new_name  goto 323
-       new_name_list  goto 319
-       structdcl  goto 528
-       hidden_importsym  goto 11
-
-state 425
-       structdcl:  new_name_list ntype.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 529
-
-state 426
-       new_name_list:  new_name_list ','.new_name 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 119
-       new_name  goto 530
-       hidden_importsym  goto 11
-
-state 427
-       structdcl:  embed oliteral.    (231)
-
-       .  reduce 231 (src line 1651)
-
-
-state 428
-       oliteral:  LLITERAL.    (303)
-
-       .  reduce 303 (src line 2001)
-
-
-state 429
-       structdcl:  '(' embed.')' oliteral 
-
-       ')'  shift 531
-       .  error
-
-
-state 430
-       structdcl:  '(' '*'.embed ')' oliteral 
-
-       LNAME  shift 431
-       .  error
-
-       packname  goto 324
-       embed  goto 532
-
-state 431
-       packname:  LNAME.    (236)
-       packname:  LNAME.'.' sym 
-
-       '.'  shift 434
-       .  reduce 236 (src line 1683)
-
-
-state 432
-       structdcl:  '*' embed.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 533
-
-state 433
-       structdcl:  '*' '('.embed ')' oliteral 
-
-       LNAME  shift 431
-       .  error
-
-       packname  goto 324
-       embed  goto 534
-
-state 434
-       packname:  LNAME '.'.sym 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 535
-       hidden_importsym  goto 11
-
-state 435
-       interfacetype:  LINTERFACE lbrace interfacedcl_list osemi.'}' 
-
-       '}'  shift 536
-       .  error
-
-
-state 436
-       interfacedcl_list:  interfacedcl_list ';'.interfacedcl 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 325
-       '('  shift 331
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 119
-       packname  goto 330
-       interfacedcl  goto 537
-       new_name  goto 329
-       hidden_importsym  goto 11
-
-state 437
-       interfacedcl:  new_name indcl.    (239)
-
-       .  reduce 239 (src line 1714)
-
-
-state 438
-       indcl:  '('.oarg_type_list_ocomma ')' fnres 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 538
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 439
-       interfacedcl:  '(' packname.')' 
-
-       ')'  shift 539
-       .  error
-
-
-state 440
-       import:  LIMPORT '(' import_stmt_list osemi ')'.    (9)
-
-       .  reduce 9 (src line 232)
-
-
-state 441
-       import_stmt_list:  import_stmt_list ';' import_stmt.    (14)
-
-       .  reduce 14 (src line 284)
-
-
-state 442
-       hidden_import:  LIMPORT LNAME LLITERAL ';'.    (304)
-
-       .  reduce 304 (src line 2006)
-
-
-state 443
-       hidden_import:  LVAR hidden_pkg_importsym hidden_type ';'.    (305)
-
-       .  reduce 305 (src line 2011)
-
-
-state 444
-       hidden_type_misc:  '[' ']'.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 540
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 445
-       hidden_type_misc:  '[' LLITERAL.']' hidden_type 
-
-       ']'  shift 541
-       .  error
-
-
-state 446
-       hidden_type_misc:  LMAP '['.hidden_type ']' hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 542
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 447
-       hidden_type_misc:  LSTRUCT '{'.ohidden_structdcl_list '}' 
-       ohidden_structdcl_list: .    (298)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 298 (src line 1985)
-
-       sym  goto 546
-       hidden_importsym  goto 11
-       hidden_structdcl  goto 545
-       hidden_structdcl_list  goto 544
-       ohidden_structdcl_list  goto 543
-
-state 448
-       hidden_type_misc:  LINTERFACE '{'.ohidden_interfacedcl_list '}' 
-       ohidden_interfacedcl_list: .    (300)
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 552
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 300 (src line 1991)
-
-       sym  goto 550
-       hidden_importsym  goto 553
-       hidden_interfacedcl  goto 549
-       hidden_interfacedcl_list  goto 548
-       ohidden_interfacedcl_list  goto 547
-       hidden_type  goto 551
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 449
-       hidden_type_misc:  '*' hidden_type.    (324)
-
-       .  reduce 324 (src line 2110)
-
-
-state 450
-       hidden_type_misc:  LCHAN hidden_type_non_recv_chan.    (325)
-
-       .  reduce 325 (src line 2114)
-
-
-state 451
-       hidden_type_misc:  LCHAN '('.hidden_type_recv_chan ')' 
-
-       LCOMM  shift 348
-       .  error
-
-       hidden_type_recv_chan  goto 554
-
-state 452
-       hidden_type_misc:  LCHAN LCOMM.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 555
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 453
-       hidden_type_non_recv_chan:  hidden_type_misc.    (315)
-
-       .  reduce 315 (src line 2070)
-
-
-state 454
-       hidden_type_non_recv_chan:  hidden_type_func.    (316)
-
-       .  reduce 316 (src line 2072)
-
-
-state 455
-       hidden_type_recv_chan:  LCOMM LCHAN.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 556
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 456
-       hidden_type_func:  LFUNC '('.ohidden_funarg_list ')' ohidden_funres 
-       ohidden_funarg_list: .    (296)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 296 (src line 1979)
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 467
-       ohidden_funarg_list  goto 557
-
-state 457
-       hidden_import:  LCONST hidden_pkg_importsym '=' hidden_constant.';' 
-
-       ';'  shift 558
-       .  error
-
-
-state 458
-       hidden_constant:  hidden_literal.    (342)
-
-       .  reduce 342 (src line 2257)
-
-
-state 459
-       hidden_constant:  '('.hidden_literal '+' hidden_literal ')' 
-
-       LLITERAL  shift 460
-       LNAME  shift 10
-       '-'  shift 461
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 462
-       hidden_importsym  goto 11
-       hidden_literal  goto 559
-
-state 460
-       hidden_literal:  LLITERAL.    (339)
-
-       .  reduce 339 (src line 2226)
-
-
-state 461
-       hidden_literal:  '-'.LLITERAL 
-
-       LLITERAL  shift 560
-       .  error
-
-
-state 462
-       hidden_literal:  sym.    (341)
-
-       .  reduce 341 (src line 2249)
-
-
-state 463
-       hidden_import:  LCONST hidden_pkg_importsym hidden_type '='.hidden_constant ';' 
-
-       LLITERAL  shift 460
-       LNAME  shift 10
-       '-'  shift 461
-       '('  shift 459
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 462
-       hidden_importsym  goto 11
-       hidden_constant  goto 561
-       hidden_literal  goto 458
-
-state 464
-       hidden_import:  LTYPE hidden_pkgtype hidden_type ';'.    (308)
-
-       .  reduce 308 (src line 2023)
-
-
-state 465
-       hidden_import:  LFUNC hidden_fndcl fnbody ';'.    (309)
-
-       .  reduce 309 (src line 2027)
-
-
-state 466
-       hidden_fndcl:  hidden_pkg_importsym '(' ohidden_funarg_list.')' ohidden_funres 
-
-       ')'  shift 562
-       .  error
-
-
-state 467
-       ohidden_funarg_list:  hidden_funarg_list.    (297)
-       hidden_funarg_list:  hidden_funarg_list.',' hidden_funarg 
-
-       ','  shift 469
-       .  reduce 297 (src line 1983)
-
-
-state 468
-       hidden_fndcl:  '(' hidden_funarg_list ')'.sym '(' ohidden_funarg_list ')' ohidden_funres 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 563
-       hidden_importsym  goto 11
-
-state 469
-       hidden_funarg_list:  hidden_funarg_list ','.hidden_funarg 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 564
-
-state 470
-       hidden_funarg:  sym hidden_type.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 565
-
-state 471
-       hidden_funarg:  sym LDDD.hidden_type oliteral 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 566
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 472
-       common_dcl:  LVAR '(' vardcl_list osemi ')'.    (29)
-
-       .  reduce 29 (src line 372)
-
-
-state 473
-       vardcl_list:  vardcl_list ';' vardcl.    (221)
-
-       .  reduce 221 (src line 1587)
-
-
-state 474
-       vardcl:  dcl_name_list ntype '=' expr_list.    (40)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 40 (src line 427)
-
-
-state 475
-       ntype:  '(' ntype ')'.    (171)
-
-       .  reduce 171 (src line 1258)
-
-
-state 476
-       common_dcl:  lconst '(' constdcl osemi ')'.    (32)
-
-       .  reduce 32 (src line 386)
-
-
-state 477
-       common_dcl:  lconst '(' constdcl ';' constdcl_list.osemi ')' 
-       constdcl_list:  constdcl_list.';' constdcl1 
-       osemi: .    (286)
-
-       ';'  shift 568
-       .  reduce 286 (src line 1955)
-
-       osemi  goto 567
-
-state 478
-       constdcl_list:  constdcl1.    (222)
-
-       .  reduce 222 (src line 1592)
-
-
-state 479
-       constdcl1:  constdcl.    (44)
-
-       .  reduce 44 (src line 446)
-
-
-state 480
-       constdcl:  dcl_name_list.ntype '=' expr_list 
-       constdcl:  dcl_name_list.'=' expr_list 
-       constdcl1:  dcl_name_list.ntype 
-       constdcl1:  dcl_name_list.    (46)
-       dcl_name_list:  dcl_name_list.',' dcl_name 
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '='  shift 236
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       ','  shift 225
-       .  reduce 46 (src line 452)
-
-       sym  goto 123
-       ntype  goto 569
-       dotname  goto 230
-       name  goto 197
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 481
-       constdcl:  dcl_name_list ntype '=' expr_list.    (42)
-       expr_list:  expr_list.',' expr 
-
-       ','  shift 155
-       .  reduce 42 (src line 436)
-
-
-state 482
-       common_dcl:  LTYPE '(' typedcl_list osemi ')'.    (36)
-
-       .  reduce 36 (src line 407)
-
-
-state 483
-       typedcl_list:  typedcl_list ';' typedcl.    (225)
-
-       .  reduce 225 (src line 1604)
-
-
-state 484
-       fnbody:  '{' stmt_list '}'.    (211)
-
-       .  reduce 211 (src line 1523)
-
-
-state 485
-       name:  sym.    (162)
-       fndcl:  '(' oarg_type_list_ocomma ')' sym.'(' oarg_type_list_ocomma ')' fnres 
-
-       '('  shift 570
-       .  reduce 162 (src line 1220)
-
-
-state 486
-       fntype:  LFUNC '(' oarg_type_list_ocomma ')' fnres.    (209)
-
-       .  reduce 209 (src line 1510)
-
-
-state 487
-       fnres:  fnret_type.    (213)
-
-       .  reduce 213 (src line 1536)
-
-
-state 488
-       fnres:  '('.oarg_type_list_ocomma ')' 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 571
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 489
-       fnret_type:  recvchantype.    (184)
-
-       .  reduce 184 (src line 1289)
-
-
-state 490
-       fnret_type:  fntype.    (185)
-
-       .  reduce 185 (src line 1291)
-
-
-state 491
-       fnret_type:  othertype.    (186)
-
-       .  reduce 186 (src line 1292)
-
-
-state 492
-       fnret_type:  ptrtype.    (187)
-
-       .  reduce 187 (src line 1293)
-
-
-state 493
-       fnret_type:  dotname.    (188)
-
-       .  reduce 188 (src line 1294)
-
-
-state 494
-       arg_type_list:  arg_type_list ',' arg_type.    (248)
-
-       .  reduce 248 (src line 1764)
-
-
-state 495
-       fndcl:  sym '(' oarg_type_list_ocomma ')'.fnres 
-       fnres: .    (212)
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 488
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 212 (src line 1531)
-
-       sym  goto 123
-       dotname  goto 493
-       name  goto 197
-       fnres  goto 572
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 492
-       recvchantype  goto 489
-       othertype  goto 491
-       fnret_type  goto 487
-       fntype  goto 490
-       hidden_importsym  goto 11
-
-state 496
-       fntype:  LFUNC '(' oarg_type_list_ocomma ')'.fnres 
-       fnres: .    (212)
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 488
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 212 (src line 1531)
-
-       sym  goto 123
-       dotname  goto 493
-       name  goto 197
-       fnres  goto 486
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 492
-       recvchantype  goto 489
-       othertype  goto 491
-       fnret_type  goto 487
-       fntype  goto 490
-       hidden_importsym  goto 11
-
-state 497
-       loop_body:  LBODY $$65.stmt_list '}' 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 303
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       stmt_list  goto 573
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 498
-       for_header:  osimple_stmt ';' osimple_stmt.';' osimple_stmt 
-
-       ';'  shift 574
-       .  error
-
-
-state 499
-       range_stmt:  expr_list '=' LRANGE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 575
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 500
-       range_stmt:  expr_list LCOLAS LRANGE.expr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 576
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 501
-       switch_stmt:  LSWITCH $$88 if_header $$89 LBODY.caseblock_list '}' 
-       caseblock_list: .    (63)
-
-       .  reduce 63 (src line 652)
-
-       caseblock_list  goto 577
-
-state 502
-       if_header:  osimple_stmt ';' osimple_stmt.    (77)
-
-       .  reduce 77 (src line 739)
-
-
-state 503
-       caseblock_list:  caseblock_list caseblock.    (64)
-
-       .  reduce 64 (src line 656)
-
-
-state 504
-       select_stmt:  LSELECT $$91 LBODY caseblock_list '}'.    (92)
-
-       .  reduce 92 (src line 844)
-
-
-state 505
-       caseblock:  case.$$61 stmt_list 
-       $$61: .    (61)
-
-       .  reduce 61 (src line 621)
-
-       $$61  goto 578
-
-state 506
-       case:  LCASE.expr_or_type_list ':' 
-       case:  LCASE.expr_or_type_list '=' expr ':' 
-       case:  LCASE.expr_or_type_list LCOLAS expr ':' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 291
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       expr_or_type_list  goto 579
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 507
-       case:  LDEFAULT.':' 
-
-       ':'  shift 580
-       .  error
-
-
-state 508
-       if_stmt:  LIF $$78 if_header $$79 loop_body.$$80 elseif_list else 
-       $$80: .    (80)
-
-       .  reduce 80 (src line 761)
-
-       $$80  goto 581
-
-state 509
-       pseudocall:  pexpr '(' expr_or_type_list ocomma ')'.    (124)
-
-       .  reduce 124 (src line 991)
-
-
-state 510
-       pseudocall:  pexpr '(' expr_or_type_list LDDD ocomma.')' 
-
-       ')'  shift 582
-       .  error
-
-
-state 511
-       expr_or_type_list:  expr_or_type_list ',' expr_or_type.    (279)
-
-       .  reduce 279 (src line 1917)
-
-
-state 512
-       pexpr_no_paren:  pexpr '.' '(' expr_or_type ')'.    (129)
-
-       .  reduce 129 (src line 1020)
-
-
-state 513
-       pexpr_no_paren:  pexpr '.' '(' LTYPE ')'.    (130)
-
-       .  reduce 130 (src line 1024)
-
-
-state 514
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr.']' 
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr.':' oexpr ']' 
-
-       ':'  shift 584
-       ']'  shift 583
-       .  error
-
-
-state 515
-       pexpr_no_paren:  pexpr_no_paren '{' start_complit braced_keyval_list '}'.    (137)
-
-       .  reduce 137 (src line 1060)
-
-
-state 516
-       keyval_list:  keyval_list ','.keyval 
-       keyval_list:  keyval_list ','.bare_complitexpr 
-       ocomma:  ','.    (289)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 289 (src line 1959)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 586
-       fnliteral  goto 73
-       keyval  goto 585
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 517
-       braced_keyval_list:  keyval_list ocomma.    (285)
-
-       .  reduce 285 (src line 1947)
-
-
-state 518
-       keyval:  expr ':'.complitexpr 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 589
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 588
-       complitexpr  goto 587
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 519
-       bare_complitexpr:  '{' start_complit.braced_keyval_list '}' 
-       braced_keyval_list: .    (284)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 284 (src line 1943)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 401
-       fnliteral  goto 73
-       keyval  goto 400
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       keyval_list  goto 399
-       braced_keyval_list  goto 590
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 520
-       pexpr_no_paren:  '(' expr_or_type ')' '{' start_complit.braced_keyval_list '}' 
-       braced_keyval_list: .    (284)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 284 (src line 1943)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 401
-       fnliteral  goto 73
-       keyval  goto 400
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       keyval_list  goto 399
-       braced_keyval_list  goto 591
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 521
-       ntype:  '(' ntype.')' 
-       non_recvchantype:  '(' ntype.')' 
-
-       ')'  shift 592
-       .  error
-
-
-state 522
-       pexpr_no_paren:  convtype '(' expr ocomma ')'.    (135)
-
-       .  reduce 135 (src line 1047)
-
-
-state 523
-       pexpr_no_paren:  comptype lbrace start_complit braced_keyval_list '}'.    (136)
-
-       .  reduce 136 (src line 1053)
-
-
-state 524
-       stmt_list:  stmt_list ';' stmt.    (271)
-
-       .  reduce 271 (src line 1874)
-
-
-state 525
-       compound_stmt:  '{' $$59 stmt_list.'}' 
-       stmt_list:  stmt_list.';' stmt 
-
-       ';'  shift 416
-       '}'  shift 593
-       .  error
-
-
-state 526
-       othertype:  LMAP '[' ntype ']' ntype.    (195)
-
-       .  reduce 195 (src line 1330)
-
-
-state 527
-       structtype:  LSTRUCT lbrace structdcl_list osemi '}'.    (200)
-
-       .  reduce 200 (src line 1350)
-
-
-state 528
-       structdcl_list:  structdcl_list ';' structdcl.    (227)
-
-       .  reduce 227 (src line 1611)
-
-
-state 529
-       structdcl:  new_name_list ntype oliteral.    (230)
-
-       .  reduce 230 (src line 1626)
-
-
-state 530
-       new_name_list:  new_name_list ',' new_name.    (273)
-
-       .  reduce 273 (src line 1887)
-
-
-state 531
-       structdcl:  '(' embed ')'.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 594
-
-state 532
-       structdcl:  '(' '*' embed.')' oliteral 
-
-       ')'  shift 595
-       .  error
-
-
-state 533
-       structdcl:  '*' embed oliteral.    (233)
-
-       .  reduce 233 (src line 1662)
-
-
-state 534
-       structdcl:  '*' '(' embed.')' oliteral 
-
-       ')'  shift 596
-       .  error
-
-
-state 535
-       packname:  LNAME '.' sym.    (237)
-
-       .  reduce 237 (src line 1694)
-
-
-state 536
-       interfacetype:  LINTERFACE lbrace interfacedcl_list osemi '}'.    (202)
-
-       .  reduce 202 (src line 1363)
-
-
-state 537
-       interfacedcl_list:  interfacedcl_list ';' interfacedcl.    (229)
-
-       .  reduce 229 (src line 1621)
-
-
-state 538
-       indcl:  '(' oarg_type_list_ocomma.')' fnres 
-
-       ')'  shift 597
-       .  error
-
-
-state 539
-       interfacedcl:  '(' packname ')'.    (241)
-
-       .  reduce 241 (src line 1724)
-
-
-state 540
-       hidden_type_misc:  '[' ']' hidden_type.    (319)
-
-       .  reduce 319 (src line 2090)
-
-
-state 541
-       hidden_type_misc:  '[' LLITERAL ']'.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 598
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 542
-       hidden_type_misc:  LMAP '[' hidden_type.']' hidden_type 
-
-       ']'  shift 599
-       .  error
-
-
-state 543
-       hidden_type_misc:  LSTRUCT '{' ohidden_structdcl_list.'}' 
-
-       '}'  shift 600
-       .  error
-
-
-state 544
-       ohidden_structdcl_list:  hidden_structdcl_list.    (299)
-       hidden_structdcl_list:  hidden_structdcl_list.';' hidden_structdcl 
-
-       ';'  shift 601
-       .  reduce 299 (src line 1989)
-
-
-state 545
-       hidden_structdcl_list:  hidden_structdcl.    (348)
-
-       .  reduce 348 (src line 2284)
-
-
-state 546
-       hidden_structdcl:  sym.hidden_type oliteral 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 602
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 547
-       hidden_type_misc:  LINTERFACE '{' ohidden_interfacedcl_list.'}' 
-
-       '}'  shift 603
-       .  error
-
-
-state 548
-       ohidden_interfacedcl_list:  hidden_interfacedcl_list.    (301)
-       hidden_interfacedcl_list:  hidden_interfacedcl_list.';' hidden_interfacedcl 
-
-       ';'  shift 604
-       .  reduce 301 (src line 1995)
-
-
-state 549
-       hidden_interfacedcl_list:  hidden_interfacedcl.    (350)
-
-       .  reduce 350 (src line 2294)
-
-
-state 550
-       hidden_interfacedcl:  sym.'(' ohidden_funarg_list ')' ohidden_funres 
-
-       '('  shift 605
-       .  error
-
-
-state 551
-       hidden_interfacedcl:  hidden_type.    (334)
-
-       .  reduce 334 (src line 2201)
-
-
-state 552
-       sym:  LNAME.    (157)
-       hidden_type_misc:  LNAME.    (318)
-
-       '('  reduce 157 (src line 1175)
-       .  reduce 318 (src line 2079)
-
-
-state 553
-       sym:  hidden_importsym.    (158)
-       hidden_type_misc:  hidden_importsym.    (317)
-
-       '('  reduce 158 (src line 1184)
-       .  reduce 317 (src line 2074)
-
-
-state 554
-       hidden_type_misc:  LCHAN '(' hidden_type_recv_chan.')' 
-
-       ')'  shift 606
-       .  error
-
-
-state 555
-       hidden_type_misc:  LCHAN LCOMM hidden_type.    (327)
-
-       .  reduce 327 (src line 2126)
-
-
-state 556
-       hidden_type_recv_chan:  LCOMM LCHAN hidden_type.    (328)
-
-       .  reduce 328 (src line 2133)
-
-
-state 557
-       hidden_type_func:  LFUNC '(' ohidden_funarg_list.')' ohidden_funres 
-
-       ')'  shift 607
-       .  error
-
-
-state 558
-       hidden_import:  LCONST hidden_pkg_importsym '=' hidden_constant ';'.    (306)
-
-       .  reduce 306 (src line 2015)
-
-
-state 559
-       hidden_constant:  '(' hidden_literal.'+' hidden_literal ')' 
-
-       '+'  shift 608
-       .  error
-
-
-state 560
-       hidden_literal:  '-' LLITERAL.    (340)
-
-       .  reduce 340 (src line 2231)
-
-
-state 561
-       hidden_import:  LCONST hidden_pkg_importsym hidden_type '=' hidden_constant.';' 
-
-       ';'  shift 609
-       .  error
-
-
-state 562
-       hidden_fndcl:  hidden_pkg_importsym '(' ohidden_funarg_list ')'.ohidden_funres 
-       ohidden_funres: .    (335)
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '('  shift 612
-       '['  shift 342
-       '@'  shift 13
-       .  reduce 335 (src line 2206)
-
-       hidden_importsym  goto 340
-       hidden_funres  goto 611
-       ohidden_funres  goto 610
-       hidden_type  goto 613
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 563
-       hidden_fndcl:  '(' hidden_funarg_list ')' sym.'(' ohidden_funarg_list ')' ohidden_funres 
-
-       '('  shift 614
-       .  error
-
-
-state 564
-       hidden_funarg_list:  hidden_funarg_list ',' hidden_funarg.    (347)
-
-       .  reduce 347 (src line 2279)
-
-
-state 565
-       hidden_funarg:  sym hidden_type oliteral.    (330)
-
-       .  reduce 330 (src line 2147)
-
-
-state 566
-       hidden_funarg:  sym LDDD hidden_type.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 615
-
-state 567
-       common_dcl:  lconst '(' constdcl ';' constdcl_list osemi.')' 
-
-       ')'  shift 616
-       .  error
-
-
-state 568
-       constdcl_list:  constdcl_list ';'.constdcl1 
-       osemi:  ';'.    (287)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 287 (src line 1956)
-
-       sym  goto 105
-       dcl_name  goto 104
-       dcl_name_list  goto 480
-       constdcl  goto 479
-       constdcl1  goto 617
-       hidden_importsym  goto 11
-
-state 569
-       constdcl:  dcl_name_list ntype.'=' expr_list 
-       constdcl1:  dcl_name_list ntype.    (45)
-
-       '='  shift 367
-       .  reduce 45 (src line 448)
-
-
-state 570
-       fndcl:  '(' oarg_type_list_ocomma ')' sym '('.oarg_type_list_ocomma ')' fnres 
-       oarg_type_list_ocomma: .    (249)
-
-       LCHAN  shift 78
-       LDDD  shift 250
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 231
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 249 (src line 1769)
-
-       sym  goto 247
-       ntype  goto 249
-       arg_type  goto 245
-       dotname  goto 230
-       name  goto 197
-       name_or_type  goto 246
-       oarg_type_list_ocomma  goto 618
-       arg_type_list  goto 244
-       dotdotdot  goto 248
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 229
-       recvchantype  goto 226
-       othertype  goto 228
-       fntype  goto 227
-       hidden_importsym  goto 11
-
-state 571
-       fnres:  '(' oarg_type_list_ocomma.')' 
-
-       ')'  shift 619
-       .  error
-
-
-state 572
-       fndcl:  sym '(' oarg_type_list_ocomma ')' fnres.    (205)
-
-       .  reduce 205 (src line 1398)
-
-
-state 573
-       loop_body:  LBODY $$65 stmt_list.'}' 
-       stmt_list:  stmt_list.';' stmt 
-
-       ';'  shift 416
-       '}'  shift 620
-       .  error
-
-
-state 574
-       for_header:  osimple_stmt ';' osimple_stmt ';'.osimple_stmt 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       name  goto 69
-       osimple_stmt  goto 621
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 575
-       range_stmt:  expr_list '=' LRANGE expr.    (67)
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 67 (src line 672)
-
-
-state 576
-       range_stmt:  expr_list LCOLAS LRANGE expr.    (68)
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 68 (src line 679)
-
-
-state 577
-       caseblock_list:  caseblock_list.caseblock 
-       switch_stmt:  LSWITCH $$88 if_header $$89 LBODY caseblock_list.'}' 
-
-       LCASE  shift 506
-       LDEFAULT  shift 507
-       '}'  shift 622
-       .  error
-
-       case  goto 505
-       caseblock  goto 503
-
-state 578
-       caseblock:  case $$61.stmt_list 
-       stmt: .    (251)
-
-       error  shift 307
-       LLITERAL  shift 68
-       LBREAK  shift 41
-       LCASE  reduce 251 (src line 1781)
-       LCHAN  shift 78
-       LCONST  shift 47
-       LCONTINUE  shift 42
-       LDEFAULT  reduce 251 (src line 1781)
-       LDEFER  shift 44
-       LFALL  shift 40
-       LFOR  shift 50
-       LFUNC  shift 124
-       LGO  shift 43
-       LGOTO  shift 45
-       LIF  shift 53
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LRETURN  shift 46
-       LSELECT  shift 52
-       LSTRUCT  shift 82
-       LSWITCH  shift 51
-       LTYPE  shift 32
-       LVAR  shift 30
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       ';'  reduce 251 (src line 1781)
-       '{'  shift 308
-       '}'  reduce 251 (src line 1781)
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 56
-       stmt  goto 303
-       compound_stmt  goto 304
-       expr  goto 48
-       fnliteral  goto 73
-       for_stmt  goto 35
-       if_stmt  goto 38
-       non_dcl_stmt  goto 306
-       labelname  goto 39
-       name  goto 69
-       new_name  goto 54
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       select_stmt  goto 37
-       simple_stmt  goto 34
-       switch_stmt  goto 36
-       uexpr  goto 55
-       expr_list  goto 49
-       stmt_list  goto 623
-       common_dcl  goto 305
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       lconst  goto 31
-       fnlitdcl  goto 76
-
-state 579
-       case:  LCASE expr_or_type_list.':' 
-       case:  LCASE expr_or_type_list.'=' expr ':' 
-       case:  LCASE expr_or_type_list.LCOLAS expr ':' 
-       expr_or_type_list:  expr_or_type_list.',' expr_or_type 
-
-       LCOLAS  shift 626
-       '='  shift 625
-       ':'  shift 624
-       ','  shift 627
-       .  error
-
-
-state 580
-       case:  LDEFAULT ':'.    (58)
-
-       .  reduce 58 (src line 586)
-
-
-state 581
-       if_stmt:  LIF $$78 if_header $$79 loop_body $$80.elseif_list else 
-       elseif_list: .    (84)
-
-       .  reduce 84 (src line 796)
-
-       elseif_list  goto 628
-
-state 582
-       pseudocall:  pexpr '(' expr_or_type_list LDDD ocomma ')'.    (125)
-
-       .  reduce 125 (src line 996)
-
-
-state 583
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr ']'.    (132)
-
-       .  reduce 132 (src line 1032)
-
-
-state 584
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr ':'.oexpr ']' 
-       oexpr: .    (290)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 290 (src line 1961)
-
-       sym  goto 123
-       expr  goto 188
-       fnliteral  goto 73
-       name  goto 69
-       oexpr  goto 629
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 585
-       keyval_list:  keyval_list ',' keyval.    (282)
-
-       .  reduce 282 (src line 1934)
-
-
-state 586
-       keyval_list:  keyval_list ',' bare_complitexpr.    (283)
-
-       .  reduce 283 (src line 1938)
-
-
-state 587
-       keyval:  expr ':' complitexpr.    (141)
-
-       .  reduce 141 (src line 1082)
-
-
-state 588
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-       complitexpr:  expr.    (144)
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       .  reduce 144 (src line 1108)
-
-
-state 589
-       complitexpr:  '{'.start_complit braced_keyval_list '}' 
-       start_complit: .    (140)
-
-       .  reduce 140 (src line 1075)
-
-       start_complit  goto 630
-
-state 590
-       bare_complitexpr:  '{' start_complit braced_keyval_list.'}' 
-
-       '}'  shift 631
-       .  error
-
-
-state 591
-       pexpr_no_paren:  '(' expr_or_type ')' '{' start_complit braced_keyval_list.'}' 
-
-       '}'  shift 632
-       .  error
-
-
-state 592
-       ntype:  '(' ntype ')'.    (171)
-       non_recvchantype:  '(' ntype ')'.    (180)
-
-       LBODY  reduce 180 (src line 1277)
-       '('  reduce 180 (src line 1277)
-       '{'  reduce 180 (src line 1277)
-       .  reduce 171 (src line 1258)
-
-
-state 593
-       compound_stmt:  '{' $$59 stmt_list '}'.    (60)
-
-       .  reduce 60 (src line 611)
-
-
-state 594
-       structdcl:  '(' embed ')' oliteral.    (232)
-
-       .  reduce 232 (src line 1656)
-
-
-state 595
-       structdcl:  '(' '*' embed ')'.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 633
-
-state 596
-       structdcl:  '*' '(' embed ')'.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 634
-
-state 597
-       indcl:  '(' oarg_type_list_ocomma ')'.fnres 
-       fnres: .    (212)
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 488
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 212 (src line 1531)
-
-       sym  goto 123
-       dotname  goto 493
-       name  goto 197
-       fnres  goto 635
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 492
-       recvchantype  goto 489
-       othertype  goto 491
-       fnret_type  goto 487
-       fntype  goto 490
-       hidden_importsym  goto 11
-
-state 598
-       hidden_type_misc:  '[' LLITERAL ']' hidden_type.    (320)
-
-       .  reduce 320 (src line 2094)
-
-
-state 599
-       hidden_type_misc:  LMAP '[' hidden_type ']'.hidden_type 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '@'  shift 13
-       .  error
-
-       hidden_importsym  goto 340
-       hidden_type  goto 636
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 600
-       hidden_type_misc:  LSTRUCT '{' ohidden_structdcl_list '}'.    (322)
-
-       .  reduce 322 (src line 2102)
-
-
-state 601
-       hidden_structdcl_list:  hidden_structdcl_list ';'.hidden_structdcl 
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 546
-       hidden_importsym  goto 11
-       hidden_structdcl  goto 637
-
-state 602
-       hidden_structdcl:  sym hidden_type.oliteral 
-       oliteral: .    (302)
-
-       LLITERAL  shift 428
-       .  reduce 302 (src line 1997)
-
-       oliteral  goto 638
-
-state 603
-       hidden_type_misc:  LINTERFACE '{' ohidden_interfacedcl_list '}'.    (323)
-
-       .  reduce 323 (src line 2106)
-
-
-state 604
-       hidden_interfacedcl_list:  hidden_interfacedcl_list ';'.hidden_interfacedcl 
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 552
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '['  shift 342
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 550
-       hidden_importsym  goto 553
-       hidden_interfacedcl  goto 639
-       hidden_type  goto 551
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 605
-       hidden_interfacedcl:  sym '('.ohidden_funarg_list ')' ohidden_funres 
-       ohidden_funarg_list: .    (296)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 296 (src line 1979)
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 467
-       ohidden_funarg_list  goto 640
-
-state 606
-       hidden_type_misc:  LCHAN '(' hidden_type_recv_chan ')'.    (326)
-
-       .  reduce 326 (src line 2120)
-
-
-state 607
-       hidden_type_func:  LFUNC '(' ohidden_funarg_list ')'.ohidden_funres 
-       ohidden_funres: .    (335)
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '('  shift 612
-       '['  shift 342
-       '@'  shift 13
-       .  reduce 335 (src line 2206)
-
-       hidden_importsym  goto 340
-       hidden_funres  goto 611
-       ohidden_funres  goto 641
-       hidden_type  goto 613
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 608
-       hidden_constant:  '(' hidden_literal '+'.hidden_literal ')' 
-
-       LLITERAL  shift 460
-       LNAME  shift 10
-       '-'  shift 461
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 462
-       hidden_importsym  goto 11
-       hidden_literal  goto 642
-
-state 609
-       hidden_import:  LCONST hidden_pkg_importsym hidden_type '=' hidden_constant ';'.    (307)
-
-       .  reduce 307 (src line 2019)
-
-
-state 610
-       hidden_fndcl:  hidden_pkg_importsym '(' ohidden_funarg_list ')' ohidden_funres.    (207)
-
-       .  reduce 207 (src line 1467)
-
-
-state 611
-       ohidden_funres:  hidden_funres.    (336)
-
-       .  reduce 336 (src line 2210)
-
-
-state 612
-       hidden_funres:  '('.ohidden_funarg_list ')' 
-       ohidden_funarg_list: .    (296)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 296 (src line 1979)
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 467
-       ohidden_funarg_list  goto 643
-
-state 613
-       hidden_funres:  hidden_type.    (338)
-
-       .  reduce 338 (src line 2217)
-
-
-state 614
-       hidden_fndcl:  '(' hidden_funarg_list ')' sym '('.ohidden_funarg_list ')' ohidden_funres 
-       ohidden_funarg_list: .    (296)
-
-       LNAME  shift 10
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 296 (src line 1979)
-
-       sym  goto 357
-       hidden_importsym  goto 11
-       hidden_funarg  goto 356
-       hidden_funarg_list  goto 467
-       ohidden_funarg_list  goto 644
-
-state 615
-       hidden_funarg:  sym LDDD hidden_type oliteral.    (331)
-
-       .  reduce 331 (src line 2156)
-
-
-state 616
-       common_dcl:  lconst '(' constdcl ';' constdcl_list osemi ')'.    (33)
-
-       .  reduce 33 (src line 392)
-
-
-state 617
-       constdcl_list:  constdcl_list ';' constdcl1.    (223)
-
-       .  reduce 223 (src line 1594)
-
-
-state 618
-       fndcl:  '(' oarg_type_list_ocomma ')' sym '(' oarg_type_list_ocomma.')' fnres 
-
-       ')'  shift 645
-       .  error
-
-
-state 619
-       fnres:  '(' oarg_type_list_ocomma ')'.    (214)
-
-       .  reduce 214 (src line 1540)
-
-
-state 620
-       loop_body:  LBODY $$65 stmt_list '}'.    (66)
-
-       .  reduce 66 (src line 666)
-
-
-state 621
-       for_header:  osimple_stmt ';' osimple_stmt ';' osimple_stmt.    (70)
-
-       .  reduce 70 (src line 692)
-
-
-state 622
-       switch_stmt:  LSWITCH $$88 if_header $$89 LBODY caseblock_list '}'.    (90)
-
-       .  reduce 90 (src line 830)
-
-
-state 623
-       caseblock:  case $$61 stmt_list.    (62)
-       stmt_list:  stmt_list.';' stmt 
-
-       ';'  shift 416
-       .  reduce 62 (src line 633)
-
-
-state 624
-       case:  LCASE expr_or_type_list ':'.    (55)
-
-       .  reduce 55 (src line 535)
-
-
-state 625
-       case:  LCASE expr_or_type_list '='.expr ':' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 646
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 626
-       case:  LCASE expr_or_type_list LCOLAS.expr ':' 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 647
-       fnliteral  goto 73
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 627
-       expr_or_type_list:  expr_or_type_list ','.expr_or_type 
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 179
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 178
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  error
-
-       sym  goto 123
-       expr  goto 173
-       expr_or_type  goto 511
-       fnliteral  goto 73
-       name  goto 69
-       non_expr_type  goto 174
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       recvchantype  goto 175
-       othertype  goto 177
-       fntype  goto 176
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 628
-       if_stmt:  LIF $$78 if_header $$79 loop_body $$80 elseif_list.else 
-       elseif_list:  elseif_list.elseif 
-       else: .    (86)
-
-       LELSE  shift 650
-       .  reduce 86 (src line 805)
-
-       elseif  goto 649
-       else  goto 648
-
-state 629
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr ':' oexpr.']' 
-
-       ']'  shift 651
-       .  error
-
-
-state 630
-       complitexpr:  '{' start_complit.braced_keyval_list '}' 
-       braced_keyval_list: .    (284)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '{'  shift 403
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 284 (src line 1943)
-
-       sym  goto 123
-       expr  goto 402
-       bare_complitexpr  goto 401
-       fnliteral  goto 73
-       keyval  goto 400
-       name  goto 69
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       uexpr  goto 55
-       keyval_list  goto 399
-       braced_keyval_list  goto 652
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 631
-       bare_complitexpr:  '{' start_complit braced_keyval_list '}'.    (143)
-
-       .  reduce 143 (src line 1102)
-
-
-state 632
-       pexpr_no_paren:  '(' expr_or_type ')' '{' start_complit braced_keyval_list '}'.    (138)
-
-       .  reduce 138 (src line 1066)
-
-
-state 633
-       structdcl:  '(' '*' embed ')' oliteral.    (234)
-
-       .  reduce 234 (src line 1668)
-
-
-state 634
-       structdcl:  '*' '(' embed ')' oliteral.    (235)
-
-       .  reduce 235 (src line 1675)
-
-
-state 635
-       indcl:  '(' oarg_type_list_ocomma ')' fnres.    (242)
-
-       .  reduce 242 (src line 1730)
-
-
-state 636
-       hidden_type_misc:  LMAP '[' hidden_type ']' hidden_type.    (321)
-
-       .  reduce 321 (src line 2098)
-
-
-state 637
-       hidden_structdcl_list:  hidden_structdcl_list ';' hidden_structdcl.    (349)
-
-       .  reduce 349 (src line 2289)
-
-
-state 638
-       hidden_structdcl:  sym hidden_type oliteral.    (332)
-
-       .  reduce 332 (src line 2172)
-
-
-state 639
-       hidden_interfacedcl_list:  hidden_interfacedcl_list ';' hidden_interfacedcl.    (351)
-
-       .  reduce 351 (src line 2299)
-
-
-state 640
-       hidden_interfacedcl:  sym '(' ohidden_funarg_list.')' ohidden_funres 
-
-       ')'  shift 653
-       .  error
-
-
-state 641
-       hidden_type_func:  LFUNC '(' ohidden_funarg_list ')' ohidden_funres.    (329)
-
-       .  reduce 329 (src line 2141)
-
-
-state 642
-       hidden_constant:  '(' hidden_literal '+' hidden_literal.')' 
-
-       ')'  shift 654
-       .  error
-
-
-state 643
-       hidden_funres:  '(' ohidden_funarg_list.')' 
-
-       ')'  shift 655
-       .  error
-
-
-state 644
-       hidden_fndcl:  '(' hidden_funarg_list ')' sym '(' ohidden_funarg_list.')' ohidden_funres 
-
-       ')'  shift 656
-       .  error
-
-
-state 645
-       fndcl:  '(' oarg_type_list_ocomma ')' sym '(' oarg_type_list_ocomma ')'.fnres 
-       fnres: .    (212)
-
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 232
-       '*'  shift 196
-       '('  shift 488
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 212 (src line 1531)
-
-       sym  goto 123
-       dotname  goto 493
-       name  goto 197
-       fnres  goto 657
-       interfacetype  goto 81
-       structtype  goto 80
-       ptrtype  goto 492
-       recvchantype  goto 489
-       othertype  goto 491
-       fnret_type  goto 487
-       fntype  goto 490
-       hidden_importsym  goto 11
-
-state 646
-       case:  LCASE expr_or_type_list '=' expr.':' 
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       ':'  shift 658
-       .  error
-
-
-state 647
-       case:  LCASE expr_or_type_list LCOLAS expr.':' 
-       expr:  expr.LOROR expr 
-       expr:  expr.LANDAND expr 
-       expr:  expr.LEQ expr 
-       expr:  expr.LNE expr 
-       expr:  expr.LLT expr 
-       expr:  expr.LLE expr 
-       expr:  expr.LGE expr 
-       expr:  expr.LGT expr 
-       expr:  expr.'+' expr 
-       expr:  expr.'-' expr 
-       expr:  expr.'|' expr 
-       expr:  expr.'^' expr 
-       expr:  expr.'*' expr 
-       expr:  expr.'/' expr 
-       expr:  expr.'%' expr 
-       expr:  expr.'&' expr 
-       expr:  expr.LANDNOT expr 
-       expr:  expr.LLSH expr 
-       expr:  expr.LRSH expr 
-       expr:  expr.LCOMM expr 
-
-       LANDAND  shift 134
-       LANDNOT  shift 149
-       LCOMM  shift 152
-       LEQ  shift 135
-       LGE  shift 139
-       LGT  shift 140
-       LLE  shift 138
-       LLSH  shift 150
-       LLT  shift 137
-       LNE  shift 136
-       LOROR  shift 133
-       LRSH  shift 151
-       '+'  shift 141
-       '-'  shift 142
-       '|'  shift 143
-       '^'  shift 144
-       '*'  shift 145
-       '/'  shift 146
-       '%'  shift 147
-       '&'  shift 148
-       ':'  shift 659
-       .  error
-
-
-state 648
-       if_stmt:  LIF $$78 if_header $$79 loop_body $$80 elseif_list else.    (81)
-
-       .  reduce 81 (src line 765)
-
-
-state 649
-       elseif_list:  elseif_list elseif.    (85)
-
-       .  reduce 85 (src line 800)
-
-
-state 650
-       elseif:  LELSE.LIF $$82 if_header loop_body 
-       else:  LELSE.compound_stmt 
-
-       LIF  shift 660
-       '{'  shift 308
-       .  error
-
-       compound_stmt  goto 661
-
-state 651
-       pexpr_no_paren:  pexpr '[' oexpr ':' oexpr ':' oexpr ']'.    (133)
-
-       .  reduce 133 (src line 1036)
-
-
-state 652
-       complitexpr:  '{' start_complit braced_keyval_list.'}' 
-
-       '}'  shift 662
-       .  error
-
-
-state 653
-       hidden_interfacedcl:  sym '(' ohidden_funarg_list ')'.ohidden_funres 
-       ohidden_funres: .    (335)
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '('  shift 612
-       '['  shift 342
-       '@'  shift 13
-       .  reduce 335 (src line 2206)
-
-       hidden_importsym  goto 340
-       hidden_funres  goto 611
-       ohidden_funres  goto 663
-       hidden_type  goto 613
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 654
-       hidden_constant:  '(' hidden_literal '+' hidden_literal ')'.    (343)
-
-       .  reduce 343 (src line 2259)
-
-
-state 655
-       hidden_funres:  '(' ohidden_funarg_list ')'.    (337)
-
-       .  reduce 337 (src line 2212)
-
-
-state 656
-       hidden_fndcl:  '(' hidden_funarg_list ')' sym '(' ohidden_funarg_list ')'.ohidden_funres 
-       ohidden_funres: .    (335)
-
-       LCHAN  shift 347
-       LFUNC  shift 349
-       LINTERFACE  shift 345
-       LMAP  shift 343
-       LNAME  shift 341
-       LSTRUCT  shift 344
-       LCOMM  shift 348
-       '*'  shift 346
-       '('  shift 612
-       '['  shift 342
-       '@'  shift 13
-       .  reduce 335 (src line 2206)
-
-       hidden_importsym  goto 340
-       hidden_funres  goto 611
-       ohidden_funres  goto 664
-       hidden_type  goto 613
-       hidden_type_misc  goto 337
-       hidden_type_func  goto 339
-       hidden_type_recv_chan  goto 338
-
-state 657
-       fndcl:  '(' oarg_type_list_ocomma ')' sym '(' oarg_type_list_ocomma ')' fnres.    (206)
-
-       .  reduce 206 (src line 1430)
-
-
-state 658
-       case:  LCASE expr_or_type_list '=' expr ':'.    (56)
-
-       .  reduce 56 (src line 559)
-
-
-state 659
-       case:  LCASE expr_or_type_list LCOLAS expr ':'.    (57)
-
-       .  reduce 57 (src line 577)
-
-
-state 660
-       elseif:  LELSE LIF.$$82 if_header loop_body 
-       $$82: .    (82)
-
-       .  reduce 82 (src line 782)
-
-       $$82  goto 665
-
-state 661
-       else:  LELSE compound_stmt.    (87)
-
-       .  reduce 87 (src line 809)
-
-
-state 662
-       complitexpr:  '{' start_complit braced_keyval_list '}'.    (145)
-
-       .  reduce 145 (src line 1110)
-
-
-state 663
-       hidden_interfacedcl:  sym '(' ohidden_funarg_list ')' ohidden_funres.    (333)
-
-       .  reduce 333 (src line 2196)
-
-
-state 664
-       hidden_fndcl:  '(' hidden_funarg_list ')' sym '(' ohidden_funarg_list ')' ohidden_funres.    (208)
-
-       .  reduce 208 (src line 1493)
-
-
-state 665
-       elseif:  LELSE LIF $$82.if_header loop_body 
-       osimple_stmt: .    (294)
-
-       LLITERAL  shift 68
-       LCHAN  shift 78
-       LFUNC  shift 124
-       LINTERFACE  shift 83
-       LMAP  shift 79
-       LNAME  shift 10
-       LSTRUCT  shift 82
-       LCOMM  shift 65
-       '+'  shift 60
-       '-'  shift 61
-       '^'  shift 64
-       '*'  shift 58
-       '&'  shift 59
-       '('  shift 67
-       '!'  shift 62
-       '~'  shift 63
-       '['  shift 77
-       '?'  shift 12
-       '@'  shift 13
-       .  reduce 294 (src line 1973)
-
-       sym  goto 123
-       expr  goto 48
-       fnliteral  goto 73
-       if_header  goto 666
-       name  goto 69
-       osimple_stmt  goto 286
-       pexpr  goto 57
-       pexpr_no_paren  goto 66
-       pseudocall  goto 70
-       simple_stmt  goto 282
-       uexpr  goto 55
-       expr_list  goto 49
-       convtype  goto 71
-       comptype  goto 72
-       interfacetype  goto 81
-       structtype  goto 80
-       othertype  goto 75
-       fntype  goto 74
-       hidden_importsym  goto 11
-       fnlitdcl  goto 76
-
-state 666
-       elseif:  LELSE LIF $$82 if_header.loop_body 
-
-       LBODY  shift 382
-       .  error
-
-       loop_body  goto 667
-
-state 667
-       elseif:  LELSE LIF $$82 if_header loop_body.    (83)
-
-       .  reduce 83 (src line 787)
-
-
-76 terminals, 142 nonterminals
-352 grammar rules, 668/2000 states
-0 shift/reduce, 0 reduce/reduce conflicts reported
-191 working sets used
-memory: parser 3749/30000
-446 extra closures
-3093 shift entries, 64 exceptions
-603 goto entries
-1650 entries saved by goto default
-Optimizer space used: output 2282/30000
-2282 table entries, 722 zero
-maximum spread: 76, maximum offset: 666
index 521401d73936c9a78bcc7518bb76e91893cea847..c7a2ac96e0cba4c87c5a2053964a023274b702c9 100644 (file)
@@ -40,3 +40,17 @@ var (
        _ = &T{i: 0, f: 0, s: "", next: {}} // ERROR "missing type in composite literal|omit types within composite literal"
        _ = &T{0, 0, "", {}}                // ERROR "missing type in composite literal|omit types within composite literal"
 )
+
+type M map[T]T
+
+var (
+       _ = M{{i:1}: {i:2}}
+       _ = M{T{i:1}: {i:2}}
+       _ = M{{i:1}: T{i:2}}
+       _ = M{T{i:1}: T{i:2}}
+)
+
+type S struct { s [1]*M1 }
+type M1 map[S]int
+var _ = M1{{s:[1]*M1{&M1{{}:1}}}:2}
+