Commit b3fb0fdd authored by Shenghou Ma's avatar Shenghou Ma Committed by Minux Ma

cmd/internal/gc: fix vet detected printf problems

Fixes #10805.

Change-Id: Ia77639e606a0c18fc53cba9749d92f325014025f
Reviewed-on: https://go-review.googlesource.com/10040Reviewed-by: default avatarJosh Bleecher Snyder <josharian@gmail.com>
parent dbf533a5
......@@ -183,7 +183,7 @@ func declare(n *Node, ctxt uint8) {
}
if ctxt == PEXTERN && s.Name == "init" {
Yyerror("cannot declare init - must be func", s)
Yyerror("cannot declare init - must be func")
}
gen := 0
......
......@@ -965,7 +965,7 @@ func cgen_callmeth(n *Node, proc int) {
l := n.Left
if l.Op != ODOTMETH {
Fatal("cgen_callmeth: not dotmethod: %v")
Fatal("cgen_callmeth: not dotmethod: %v", l)
}
n2 := *n
......
......@@ -21,6 +21,7 @@
package gc
import (
"fmt"
"strings"
)
%}
......@@ -1975,9 +1976,9 @@ hidden_import:
importlist = list(importlist, $2);
if Debug['E'] > 0 {
print("import [%q] func %lN \n", importpkg.Path, $2);
fmt.Printf("import [%q] func %v \n", importpkg.Path, $2)
if Debug['m'] > 2 && $2.Func.Inl != nil {
print("inl body:%+H\n", $2.Func.Inl);
fmt.Printf("inl body:%v\n", $2.Func.Inl)
}
}
}
......
......@@ -1303,7 +1303,7 @@ OpSwitch:
if l.Op == OTYPE {
if n.Isddd || l.Type.Bound == -100 {
if l.Type.Broke == 0 {
Yyerror("invalid use of ... in type conversion", l)
Yyerror("invalid use of ... in type conversion to %v", l.Type)
}
n.Diag = 1
}
......@@ -1528,7 +1528,7 @@ OpSwitch:
var t *Type
switch l.Type.Etype {
default:
Yyerror("invalid operation: %v (arguments have type %v, expected floating-point)", n, l.Type, r.Type)
Yyerror("invalid operation: %v (arguments have type %v, expected floating-point)", n, l.Type)
n.Type = nil
return
......@@ -1645,7 +1645,7 @@ OpSwitch:
n.Type = t
if !Isslice(t) {
if Isconst(args.N, CTNIL) {
Yyerror("first argument to append must be typed slice; have untyped nil", t)
Yyerror("first argument to append must be typed slice; have untyped nil")
n.Type = nil
return
}
......@@ -3526,7 +3526,7 @@ func typecheckfunc(n *Node) {
func stringtoarraylit(np **Node) {
n := *np
if n.Left.Op != OLITERAL || n.Left.Val.Ctype != CTSTR {
Fatal("stringtoarraylit %N", n)
Fatal("stringtoarraylit %v", n)
}
s := n.Left.Val.U.Sval
......
......@@ -5,10 +5,11 @@ import __yyfmt__ "fmt"
//line go.y:21
import (
"fmt"
"strings"
)
//line go.y:27
//line go.y:28
type yySymType struct {
yys int
node *Node
......@@ -153,7 +154,7 @@ const yyEofCode = 1
const yyErrCode = 2
const yyMaxDepth = 200
//line go.y:2242
//line go.y:2243
func fixlbrace(lbr int) {
// If the opening brace was an LBODY,
// set up for another one now that we're done.
......@@ -1187,13 +1188,13 @@ yydefault:
case 1:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:127
//line go.y:128
{
xtop = concat(xtop, yyDollar[4].list)
}
case 2:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:133
//line go.y:134
{
prevlineno = lineno
Yyerror("package statement must be first")
......@@ -1201,13 +1202,13 @@ yydefault:
}
case 3:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:139
//line go.y:140
{
mkpackage(yyDollar[2].sym.Name)
}
case 4:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:149
//line go.y:150
{
importpkg = Runtimepkg
......@@ -1220,13 +1221,13 @@ yydefault:
}
case 5:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:161
//line go.y:162
{
importpkg = nil
}
case 11:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:175
//line go.y:176
{
ipkg := importpkg
my := importmyname
......@@ -1263,7 +1264,7 @@ yydefault:
}
case 12:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:210
//line go.y:211
{
// When an invalid import path is passed to importfile,
// it calls Yyerror and then sets up a fake import with
......@@ -1275,7 +1276,7 @@ yydefault:
}
case 15:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:226
//line go.y:227
{
// import with original name
yyVAL.i = parserline()
......@@ -1284,7 +1285,7 @@ yydefault:
}
case 16:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:233
//line go.y:234
{
// import with given name
yyVAL.i = parserline()
......@@ -1293,7 +1294,7 @@ yydefault:
}
case 17:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:240
//line go.y:241
{
// import into my name space
yyVAL.i = parserline()
......@@ -1302,7 +1303,7 @@ yydefault:
}
case 18:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:249
//line go.y:250
{
if importpkg.Name == "" {
importpkg.Name = yyDollar[2].sym.Name
......@@ -1319,7 +1320,7 @@ yydefault:
}
case 20:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:266
//line go.y:267
{
if yyDollar[1].sym.Name == "safe" {
curio.importsafe = true
......@@ -1327,64 +1328,64 @@ yydefault:
}
case 21:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:273
//line go.y:274
{
defercheckwidth()
}
case 22:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:277
//line go.y:278
{
resumecheckwidth()
unimportfile()
}
case 23:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:286
//line go.y:287
{
Yyerror("empty top-level declaration")
yyVAL.list = nil
}
case 25:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:292
//line go.y:293
{
yyVAL.list = list1(yyDollar[1].node)
}
case 26:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:296
//line go.y:297
{
Yyerror("non-declaration statement outside function body")
yyVAL.list = nil
}
case 27:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:301
//line go.y:302
{
yyVAL.list = nil
}
case 28:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:307
//line go.y:308
{
yyVAL.list = yyDollar[2].list
}
case 29:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:311
//line go.y:312
{
yyVAL.list = yyDollar[3].list
}
case 30:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:315
//line go.y:316
{
yyVAL.list = nil
}
case 31:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:319
//line go.y:320
{
yyVAL.list = yyDollar[2].list
iota_ = -100000
......@@ -1392,7 +1393,7 @@ yydefault:
}
case 32:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:325
//line go.y:326
{
yyVAL.list = yyDollar[3].list
iota_ = -100000
......@@ -1400,7 +1401,7 @@ yydefault:
}
case 33:
yyDollar = yyS[yypt-7 : yypt+1]
//line go.y:331
//line go.y:332
{
yyVAL.list = concat(yyDollar[3].list, yyDollar[5].list)
iota_ = -100000
......@@ -1408,80 +1409,80 @@ yydefault:
}
case 34:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:337
//line go.y:338
{
yyVAL.list = nil
iota_ = -100000
}
case 35:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:342
//line go.y:343
{
yyVAL.list = list1(yyDollar[2].node)
}
case 36:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:346
//line go.y:347
{
yyVAL.list = yyDollar[3].list
}
case 37:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:350
//line go.y:351
{
yyVAL.list = nil
}
case 38:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:356
//line go.y:357
{
iota_ = 0
}
case 39:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:362
//line go.y:363
{
yyVAL.list = variter(yyDollar[1].list, yyDollar[2].node, nil)
}
case 40:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:366
//line go.y:367
{
yyVAL.list = variter(yyDollar[1].list, yyDollar[2].node, yyDollar[4].list)
}
case 41:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:370
//line go.y:371
{
yyVAL.list = variter(yyDollar[1].list, nil, yyDollar[3].list)
}
case 42:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:376
//line go.y:377
{
yyVAL.list = constiter(yyDollar[1].list, yyDollar[2].node, yyDollar[4].list)
}
case 43:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:380
//line go.y:381
{
yyVAL.list = constiter(yyDollar[1].list, nil, yyDollar[3].list)
}
case 45:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:387
//line go.y:388
{
yyVAL.list = constiter(yyDollar[1].list, yyDollar[2].node, nil)
}
case 46:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:391
//line go.y:392
{
yyVAL.list = constiter(yyDollar[1].list, nil, nil)
}
case 47:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:397
//line go.y:398
{
// different from dclname because the name
// becomes visible right here, not at the end
......@@ -1490,13 +1491,13 @@ yydefault:
}
case 48:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:406
//line go.y:407
{
yyVAL.node = typedcl1(yyDollar[1].node, yyDollar[2].node, true)
}
case 49:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:412
//line go.y:413
{
yyVAL.node = yyDollar[1].node
......@@ -1512,14 +1513,14 @@ yydefault:
}
case 50:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:426
//line go.y:427
{
yyVAL.node = Nod(OASOP, yyDollar[1].node, yyDollar[3].node)
yyVAL.node.Etype = uint8(yyDollar[2].i) // rathole to pass opcode
}
case 51:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:431
//line go.y:432
{
if yyDollar[1].list.Next == nil && yyDollar[3].list.Next == nil {
// simple
......@@ -1533,7 +1534,7 @@ yydefault:
}
case 52:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:443
//line go.y:444
{
if yyDollar[3].list.N.Op == OTYPESW {
yyVAL.node = Nod(OTYPESW, nil, yyDollar[3].list.N.Right)
......@@ -1553,7 +1554,7 @@ yydefault:
}
case 53:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:461
//line go.y:462
{
yyVAL.node = Nod(OASOP, yyDollar[1].node, Nodintconst(1))
yyVAL.node.Implicit = true
......@@ -1561,7 +1562,7 @@ yydefault:
}
case 54:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:467
//line go.y:468
{
yyVAL.node = Nod(OASOP, yyDollar[1].node, Nodintconst(1))
yyVAL.node.Implicit = true
......@@ -1569,7 +1570,7 @@ yydefault:
}
case 55:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:475
//line go.y:476
{
var n, nn *Node
......@@ -1594,7 +1595,7 @@ yydefault:
}
case 56:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:498
//line go.y:499
{
var n *Node
......@@ -1614,7 +1615,7 @@ yydefault:
}
case 57:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:516
//line go.y:517
{
// will be converted to OCASE
// right will point to next case
......@@ -1625,7 +1626,7 @@ yydefault:
}
case 58:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:525
//line go.y:526
{
var n, nn *Node
......@@ -1646,13 +1647,13 @@ yydefault:
}
case 59:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:546
//line go.y:547
{
markdcl()
}
case 60:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:550
//line go.y:551
{
if yyDollar[3].list == nil {
yyVAL.node = Nod(OEMPTY, nil, nil)
......@@ -1663,7 +1664,7 @@ yydefault:
}
case 61:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:561
//line go.y:562
{
// If the last token read by the lexer was consumed
// as part of the case, clear it (parser has cleared yychar).
......@@ -1676,7 +1677,7 @@ yydefault:
}
case 62:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:572
//line go.y:573
{
// This is the only place in the language where a statement
// list is not allowed to drop the final semicolon, because
......@@ -1696,32 +1697,32 @@ yydefault:
}
case 63:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:591
//line go.y:592
{
yyVAL.list = nil
}
case 64:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:595
//line go.y:596
{
yyVAL.list = list(yyDollar[1].list, yyDollar[2].node)
}
case 65:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:601
//line go.y:602
{
markdcl()
}
case 66:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:605
//line go.y:606
{
yyVAL.list = yyDollar[3].list
popdcl()
}
case 67:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:612
//line go.y:613
{
yyVAL.node = Nod(ORANGE, nil, yyDollar[4].node)
yyVAL.node.List = yyDollar[1].list
......@@ -1729,7 +1730,7 @@ yydefault:
}
case 68:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:618
//line go.y:619
{
yyVAL.node = Nod(ORANGE, nil, yyDollar[4].node)
yyVAL.node.List = yyDollar[1].list
......@@ -1738,14 +1739,14 @@ yydefault:
}
case 69:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:625
//line go.y:626
{
yyVAL.node = Nod(ORANGE, nil, yyDollar[2].node)
yyVAL.node.Etype = 0 // := flag
}
case 70:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:632
//line go.y:633
{
// init ; test ; incr
if yyDollar[5].node != nil && yyDollar[5].node.Colas {
......@@ -1760,7 +1761,7 @@ yydefault:
}
case 71:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:645
//line go.y:646
{
// normal test
yyVAL.node = Nod(OFOR, nil, nil)
......@@ -1768,27 +1769,27 @@ yydefault:
}
case 73:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:654
//line go.y:655
{
yyVAL.node = yyDollar[1].node
yyVAL.node.Nbody = concat(yyVAL.node.Nbody, yyDollar[2].list)
}
case 74:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:661
//line go.y:662
{
markdcl()
}
case 75:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:665
//line go.y:666
{
yyVAL.node = yyDollar[3].node
popdcl()
}
case 76:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:672
//line go.y:673
{
// test
yyVAL.node = Nod(OIF, nil, nil)
......@@ -1796,7 +1797,7 @@ yydefault:
}
case 77:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:678
//line go.y:679
{
// init ; test
yyVAL.node = Nod(OIF, nil, nil)
......@@ -1807,13 +1808,13 @@ yydefault:
}
case 78:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:690
//line go.y:691
{
markdcl()
}
case 79:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:694
//line go.y:695
{
if yyDollar[3].node.Ntest == nil {
Yyerror("missing condition in if statement")
......@@ -1821,13 +1822,13 @@ yydefault:
}
case 80:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:700
//line go.y:701
{
yyDollar[3].node.Nbody = yyDollar[5].list
}
case 81:
yyDollar = yyS[yypt-8 : yypt+1]
//line go.y:704
//line go.y:705
{
var n *Node
var nn *NodeList
......@@ -1845,13 +1846,13 @@ yydefault:
}
case 82:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:722
//line go.y:723
{
markdcl()
}
case 83:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:726
//line go.y:727
{
if yyDollar[4].node.Ntest == nil {
Yyerror("missing condition in if statement")
......@@ -1861,25 +1862,25 @@ yydefault:
}
case 84:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:735
//line go.y:736
{
yyVAL.list = nil
}
case 85:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:739
//line go.y:740
{
yyVAL.list = concat(yyDollar[1].list, yyDollar[2].list)
}
case 86:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:744
//line go.y:745
{
yyVAL.list = nil
}
case 87:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:748
//line go.y:749
{
l := &NodeList{N: yyDollar[2].node}
l.End = l
......@@ -1887,13 +1888,13 @@ yydefault:
}
case 88:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:756
//line go.y:757
{
markdcl()
}
case 89:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:760
//line go.y:761
{
var n *Node
n = yyDollar[3].node.Ntest
......@@ -1904,7 +1905,7 @@ yydefault:
}
case 90:
yyDollar = yyS[yypt-7 : yypt+1]
//line go.y:769
//line go.y:770
{
yyVAL.node = yyDollar[3].node
yyVAL.node.Op = OSWITCH
......@@ -1914,13 +1915,13 @@ yydefault:
}
case 91:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:779
//line go.y:780
{
typesw = Nod(OXXX, typesw, nil)
}
case 92:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:783
//line go.y:784
{
yyVAL.node = Nod(OSELECT, nil, nil)
yyVAL.node.Lineno = typesw.Lineno
......@@ -1929,133 +1930,133 @@ yydefault:
}
case 94:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:796
//line go.y:797
{
yyVAL.node = Nod(OOROR, yyDollar[1].node, yyDollar[3].node)
}
case 95:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:800
//line go.y:801
{
yyVAL.node = Nod(OANDAND, yyDollar[1].node, yyDollar[3].node)
}
case 96:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:804
//line go.y:805
{
yyVAL.node = Nod(OEQ, yyDollar[1].node, yyDollar[3].node)
}
case 97:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:808
//line go.y:809
{
yyVAL.node = Nod(ONE, yyDollar[1].node, yyDollar[3].node)
}
case 98:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:812
//line go.y:813
{
yyVAL.node = Nod(OLT, yyDollar[1].node, yyDollar[3].node)
}
case 99:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:816
//line go.y:817
{
yyVAL.node = Nod(OLE, yyDollar[1].node, yyDollar[3].node)
}
case 100:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:820
//line go.y:821
{
yyVAL.node = Nod(OGE, yyDollar[1].node, yyDollar[3].node)
}
case 101:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:824
//line go.y:825
{
yyVAL.node = Nod(OGT, yyDollar[1].node, yyDollar[3].node)
}
case 102:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:828
//line go.y:829
{
yyVAL.node = Nod(OADD, yyDollar[1].node, yyDollar[3].node)
}
case 103:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:832
//line go.y:833
{
yyVAL.node = Nod(OSUB, yyDollar[1].node, yyDollar[3].node)
}
case 104:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:836
//line go.y:837
{
yyVAL.node = Nod(OOR, yyDollar[1].node, yyDollar[3].node)
}
case 105:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:840
//line go.y:841
{
yyVAL.node = Nod(OXOR, yyDollar[1].node, yyDollar[3].node)
}
case 106:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:844
//line go.y:845
{
yyVAL.node = Nod(OMUL, yyDollar[1].node, yyDollar[3].node)
}
case 107:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:848
//line go.y:849
{
yyVAL.node = Nod(ODIV, yyDollar[1].node, yyDollar[3].node)
}
case 108:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:852
//line go.y:853
{
yyVAL.node = Nod(OMOD, yyDollar[1].node, yyDollar[3].node)
}
case 109:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:856
//line go.y:857
{
yyVAL.node = Nod(OAND, yyDollar[1].node, yyDollar[3].node)
}
case 110:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:860
//line go.y:861
{
yyVAL.node = Nod(OANDNOT, yyDollar[1].node, yyDollar[3].node)
}
case 111:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:864
//line go.y:865
{
yyVAL.node = Nod(OLSH, yyDollar[1].node, yyDollar[3].node)
}
case 112:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:868
//line go.y:869
{
yyVAL.node = Nod(ORSH, yyDollar[1].node, yyDollar[3].node)
}
case 113:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:873
//line go.y:874
{
yyVAL.node = Nod(OSEND, yyDollar[1].node, yyDollar[3].node)
}
case 115:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:880
//line go.y:881
{
yyVAL.node = Nod(OIND, yyDollar[2].node, nil)
}
case 116:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:884
//line go.y:885
{
if yyDollar[2].node.Op == OCOMPLIT {
// Special case for &T{...}: turn into (*T){...}.
......@@ -2068,57 +2069,57 @@ yydefault:
}
case 117:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:895
//line go.y:896
{
yyVAL.node = Nod(OPLUS, yyDollar[2].node, nil)
}
case 118:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:899
//line go.y:900
{
yyVAL.node = Nod(OMINUS, yyDollar[2].node, nil)
}
case 119:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:903
//line go.y:904
{
yyVAL.node = Nod(ONOT, yyDollar[2].node, nil)
}
case 120:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:907
//line go.y:908
{
Yyerror("the bitwise complement operator is ^")
yyVAL.node = Nod(OCOM, yyDollar[2].node, nil)
}
case 121:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:912
//line go.y:913
{
yyVAL.node = Nod(OCOM, yyDollar[2].node, nil)
}
case 122:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:916
//line go.y:917
{
yyVAL.node = Nod(ORECV, yyDollar[2].node, nil)
}
case 123:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:926
//line go.y:927
{
yyVAL.node = Nod(OCALL, yyDollar[1].node, nil)
}
case 124:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:930
//line go.y:931
{
yyVAL.node = Nod(OCALL, yyDollar[1].node, nil)
yyVAL.node.List = yyDollar[3].list
}
case 125:
yyDollar = yyS[yypt-6 : yypt+1]
//line go.y:935
//line go.y:936
{
yyVAL.node = Nod(OCALL, yyDollar[1].node, nil)
yyVAL.node.List = yyDollar[3].list
......@@ -2126,13 +2127,13 @@ yydefault:
}
case 126:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:943
//line go.y:944
{
yyVAL.node = nodlit(yyDollar[1].val)
}
case 128:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:948
//line go.y:949
{
if yyDollar[1].node.Op == OPACK {
var s *Sym
......@@ -2145,31 +2146,31 @@ yydefault:
}
case 129:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:959
//line go.y:960
{
yyVAL.node = Nod(ODOTTYPE, yyDollar[1].node, yyDollar[4].node)
}
case 130:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:963
//line go.y:964
{
yyVAL.node = Nod(OTYPESW, nil, yyDollar[1].node)
}
case 131:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:967
//line go.y:968
{
yyVAL.node = Nod(OINDEX, yyDollar[1].node, yyDollar[3].node)
}
case 132:
yyDollar = yyS[yypt-6 : yypt+1]
//line go.y:971
//line go.y:972
{
yyVAL.node = Nod(OSLICE, yyDollar[1].node, Nod(OKEY, yyDollar[3].node, yyDollar[5].node))
}
case 133:
yyDollar = yyS[yypt-8 : yypt+1]
//line go.y:975
//line go.y:976
{
if yyDollar[5].node == nil {
Yyerror("middle index required in 3-index slice")
......@@ -2181,7 +2182,7 @@ yydefault:
}
case 135:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:986
//line go.y:987
{
// conversion
yyVAL.node = Nod(OCALL, yyDollar[1].node, nil)
......@@ -2189,7 +2190,7 @@ yydefault:
}
case 136:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:992
//line go.y:993
{
yyVAL.node = yyDollar[3].node
yyVAL.node.Right = yyDollar[1].node
......@@ -2198,7 +2199,7 @@ yydefault:
}
case 137:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:999
//line go.y:1000
{
yyVAL.node = yyDollar[3].node
yyVAL.node.Right = yyDollar[1].node
......@@ -2206,7 +2207,7 @@ yydefault:
}
case 138:
yyDollar = yyS[yypt-7 : yypt+1]
//line go.y:1005
//line go.y:1006
{
Yyerror("cannot parenthesize type in composite literal")
yyVAL.node = yyDollar[5].node
......@@ -2215,7 +2216,7 @@ yydefault:
}
case 140:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1014
//line go.y:1015
{
// composite expression.
// make node early so we get the right line number.
......@@ -2223,13 +2224,13 @@ yydefault:
}
case 141:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1022
//line go.y:1023
{
yyVAL.node = Nod(OKEY, yyDollar[1].node, yyDollar[3].node)
}
case 142:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1028
//line go.y:1029
{
// These nodes do not carry line numbers.
// Since a composite literal commonly spans several lines,
......@@ -2244,21 +2245,21 @@ yydefault:
}
case 143:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1041
//line go.y:1042
{
yyVAL.node = yyDollar[2].node
yyVAL.node.List = yyDollar[3].list
}
case 145:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1049
//line go.y:1050
{
yyVAL.node = yyDollar[2].node
yyVAL.node.List = yyDollar[3].list
}
case 147:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1057
//line go.y:1058
{
yyVAL.node = yyDollar[2].node
......@@ -2272,19 +2273,19 @@ yydefault:
}
case 151:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1078
//line go.y:1079
{
yyVAL.i = LBODY
}
case 152:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1082
//line go.y:1083
{
yyVAL.i = '{'
}
case 153:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1093
//line go.y:1094
{
if yyDollar[1].sym == nil {
yyVAL.node = nil
......@@ -2294,19 +2295,19 @@ yydefault:
}
case 154:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1103
//line go.y:1104
{
yyVAL.node = dclname(yyDollar[1].sym)
}
case 155:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1108
//line go.y:1109
{
yyVAL.node = nil
}
case 157:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1115
//line go.y:1116
{
yyVAL.sym = yyDollar[1].sym
// during imports, unqualified non-exported identifiers are from builtinpkg
......@@ -2316,13 +2317,13 @@ yydefault:
}
case 159:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1124
//line go.y:1125
{
yyVAL.sym = nil
}
case 160:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1130
//line go.y:1131
{
var p *Pkg
......@@ -2338,7 +2339,7 @@ yydefault:
}
case 161:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1144
//line go.y:1145
{
var p *Pkg
......@@ -2354,7 +2355,7 @@ yydefault:
}
case 162:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1160
//line go.y:1161
{
yyVAL.node = oldname(yyDollar[1].sym)
if yyVAL.node.Pack != nil {
......@@ -2363,38 +2364,38 @@ yydefault:
}
case 164:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1181
//line go.y:1182
{
Yyerror("final argument in variadic function missing type")
yyVAL.node = Nod(ODDD, typenod(typ(TINTER)), nil)
}
case 165:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1186
//line go.y:1187
{
yyVAL.node = Nod(ODDD, yyDollar[2].node, nil)
}
case 171:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1197
//line go.y:1198
{
yyVAL.node = yyDollar[2].node
}
case 175:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1206
//line go.y:1207
{
yyVAL.node = Nod(OIND, yyDollar[2].node, nil)
}
case 180:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1216
//line go.y:1217
{
yyVAL.node = yyDollar[2].node
}
case 190:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1237
//line go.y:1238
{
if yyDollar[1].node.Op == OPACK {
var s *Sym
......@@ -2407,53 +2408,53 @@ yydefault:
}
case 191:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1250
//line go.y:1251
{
yyVAL.node = Nod(OTARRAY, yyDollar[2].node, yyDollar[4].node)
}
case 192:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1254
//line go.y:1255
{
// array literal of nelem
yyVAL.node = Nod(OTARRAY, Nod(ODDD, nil, nil), yyDollar[4].node)
}
case 193:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1259
//line go.y:1260
{
yyVAL.node = Nod(OTCHAN, yyDollar[2].node, nil)
yyVAL.node.Etype = Cboth
}
case 194:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1264
//line go.y:1265
{
yyVAL.node = Nod(OTCHAN, yyDollar[3].node, nil)
yyVAL.node.Etype = Csend
}
case 195:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1269
//line go.y:1270
{
yyVAL.node = Nod(OTMAP, yyDollar[3].node, yyDollar[5].node)
}
case 198:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1277
//line go.y:1278
{
yyVAL.node = Nod(OIND, yyDollar[2].node, nil)
}
case 199:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1283
//line go.y:1284
{
yyVAL.node = Nod(OTCHAN, yyDollar[3].node, nil)
yyVAL.node.Etype = Crecv
}
case 200:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1290
//line go.y:1291
{
yyVAL.node = Nod(OTSTRUCT, nil, nil)
yyVAL.node.List = yyDollar[3].list
......@@ -2461,14 +2462,14 @@ yydefault:
}
case 201:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1296
//line go.y:1297
{
yyVAL.node = Nod(OTSTRUCT, nil, nil)
fixlbrace(yyDollar[2].i)
}
case 202:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1303
//line go.y:1304
{
yyVAL.node = Nod(OTINTER, nil, nil)
yyVAL.node.List = yyDollar[3].list
......@@ -2476,14 +2477,14 @@ yydefault:
}
case 203:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1309
//line go.y:1310
{
yyVAL.node = Nod(OTINTER, nil, nil)
fixlbrace(yyDollar[2].i)
}
case 204:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1320
//line go.y:1321
{
yyVAL.node = yyDollar[2].node
if yyVAL.node == nil {
......@@ -2501,7 +2502,7 @@ yydefault:
}
case 205:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1338
//line go.y:1339
{
var t *Node
......@@ -2534,7 +2535,7 @@ yydefault:
}
case 206:
yyDollar = yyS[yypt-8 : yypt+1]
//line go.y:1369
//line go.y:1370
{
var rcvr, t *Node
......@@ -2572,7 +2573,7 @@ yydefault:
}
case 207:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1407
//line go.y:1408
{
var s *Sym
var t *Type
......@@ -2599,7 +2600,7 @@ yydefault:
}
case 208:
yyDollar = yyS[yypt-8 : yypt+1]
//line go.y:1432
//line go.y:1433
{
yyVAL.node = methodname1(newname(yyDollar[4].sym), yyDollar[2].list.N.Right)
yyVAL.node.Type = functype(yyDollar[2].list.N, yyDollar[6].list, yyDollar[8].list)
......@@ -2617,7 +2618,7 @@ yydefault:
}
case 209:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1450
//line go.y:1451
{
yyDollar[3].list = checkarglist(yyDollar[3].list, 1)
yyVAL.node = Nod(OTFUNC, nil, nil)
......@@ -2626,13 +2627,13 @@ yydefault:
}
case 210:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1458
//line go.y:1459
{
yyVAL.list = nil
}
case 211:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1462
//line go.y:1463
{
yyVAL.list = yyDollar[2].list
if yyVAL.list == nil {
......@@ -2641,51 +2642,51 @@ yydefault:
}
case 212:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1471
//line go.y:1472
{
yyVAL.list = nil
}
case 213:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1475
//line go.y:1476
{
yyVAL.list = list1(Nod(ODCLFIELD, nil, yyDollar[1].node))
}
case 214:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1479
//line go.y:1480
{
yyDollar[2].list = checkarglist(yyDollar[2].list, 0)
yyVAL.list = yyDollar[2].list
}
case 215:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1486
//line go.y:1487
{
closurehdr(yyDollar[1].node)
}
case 216:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1492
//line go.y:1493
{
yyVAL.node = closurebody(yyDollar[3].list)
fixlbrace(yyDollar[2].i)
}
case 217:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1497
//line go.y:1498
{
yyVAL.node = closurebody(nil)
}
case 218:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1508
//line go.y:1509
{
yyVAL.list = nil
}
case 219:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1512
//line go.y:1513
{
yyVAL.list = concat(yyDollar[1].list, yyDollar[2].list)
if nsyntaxerrors == 0 {
......@@ -2698,49 +2699,49 @@ yydefault:
}
case 221:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1526
//line go.y:1527
{
yyVAL.list = concat(yyDollar[1].list, yyDollar[3].list)
}
case 223:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1533
//line go.y:1534
{
yyVAL.list = concat(yyDollar[1].list, yyDollar[3].list)
}
case 224:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1539
//line go.y:1540
{
yyVAL.list = list1(yyDollar[1].node)
}
case 225:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1543
//line go.y:1544
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 227:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1550
//line go.y:1551
{
yyVAL.list = concat(yyDollar[1].list, yyDollar[3].list)
}
case 228:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1556
//line go.y:1557
{
yyVAL.list = list1(yyDollar[1].node)
}
case 229:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1560
//line go.y:1561
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 230:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1566
//line go.y:1567
{
var l *NodeList
......@@ -2766,14 +2767,14 @@ yydefault:
}
case 231:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1590
//line go.y:1591
{
yyDollar[1].node.Val = yyDollar[2].val
yyVAL.list = list1(yyDollar[1].node)
}
case 232:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1595
//line go.y:1596
{
yyDollar[2].node.Val = yyDollar[4].val
yyVAL.list = list1(yyDollar[2].node)
......@@ -2781,7 +2782,7 @@ yydefault:
}
case 233:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1601
//line go.y:1602
{
yyDollar[2].node.Right = Nod(OIND, yyDollar[2].node.Right, nil)
yyDollar[2].node.Val = yyDollar[3].val
......@@ -2789,7 +2790,7 @@ yydefault:
}
case 234:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1607
//line go.y:1608
{
yyDollar[3].node.Right = Nod(OIND, yyDollar[3].node.Right, nil)
yyDollar[3].node.Val = yyDollar[5].val
......@@ -2798,7 +2799,7 @@ yydefault:
}
case 235:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1614
//line go.y:1615
{
yyDollar[3].node.Right = Nod(OIND, yyDollar[3].node.Right, nil)
yyDollar[3].node.Val = yyDollar[5].val
......@@ -2807,7 +2808,7 @@ yydefault:
}
case 236:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1623
//line go.y:1624
{
var n *Node
......@@ -2819,7 +2820,7 @@ yydefault:
}
case 237:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1633
//line go.y:1634
{
var pkg *Pkg
......@@ -2834,33 +2835,33 @@ yydefault:
}
case 238:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1648
//line go.y:1649
{
yyVAL.node = embedded(yyDollar[1].sym, localpkg)
}
case 239:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1654
//line go.y:1655
{
yyVAL.node = Nod(ODCLFIELD, yyDollar[1].node, yyDollar[2].node)
ifacedcl(yyVAL.node)
}
case 240:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1659
//line go.y:1660
{
yyVAL.node = Nod(ODCLFIELD, nil, oldname(yyDollar[1].sym))
}
case 241:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1663
//line go.y:1664
{
yyVAL.node = Nod(ODCLFIELD, nil, oldname(yyDollar[2].sym))
Yyerror("cannot parenthesize embedded type")
}
case 242:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1670
//line go.y:1671
{
// without func keyword
yyDollar[2].list = checkarglist(yyDollar[2].list, 1)
......@@ -2870,7 +2871,7 @@ yydefault:
}
case 244:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1684
//line go.y:1685
{
yyVAL.node = Nod(ONONAME, nil, nil)
yyVAL.node.Sym = yyDollar[1].sym
......@@ -2878,7 +2879,7 @@ yydefault:
}
case 245:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1690
//line go.y:1691
{
yyVAL.node = Nod(ONONAME, nil, nil)
yyVAL.node.Sym = yyDollar[1].sym
......@@ -2886,56 +2887,56 @@ yydefault:
}
case 247:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1699
//line go.y:1700
{
yyVAL.list = list1(yyDollar[1].node)
}
case 248:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1703
//line go.y:1704
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 249:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1708
//line go.y:1709
{
yyVAL.list = nil
}
case 250:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1712
//line go.y:1713
{
yyVAL.list = yyDollar[1].list
}
case 251:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1720
//line go.y:1721
{
yyVAL.node = nil
}
case 253:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1725
//line go.y:1726
{
yyVAL.node = liststmt(yyDollar[1].list)
}
case 255:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1730
//line go.y:1731
{
yyVAL.node = nil
}
case 261:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1741
//line go.y:1742
{
yyDollar[1].node = Nod(OLABEL, yyDollar[1].node, nil)
yyDollar[1].node.Sym = dclstack // context, for goto restrictions
}
case 262:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1746
//line go.y:1747
{
var l *NodeList
......@@ -2948,7 +2949,7 @@ yydefault:
}
case 263:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1757
//line go.y:1758
{
// will be converted to OFALL
yyVAL.node = Nod(OXFALL, nil, nil)
......@@ -2956,38 +2957,38 @@ yydefault:
}
case 264:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1763
//line go.y:1764
{
yyVAL.node = Nod(OBREAK, yyDollar[2].node, nil)
}
case 265:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1767
//line go.y:1768
{
yyVAL.node = Nod(OCONTINUE, yyDollar[2].node, nil)
}
case 266:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1771
//line go.y:1772
{
yyVAL.node = Nod(OPROC, yyDollar[2].node, nil)
}
case 267:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1775
//line go.y:1776
{
yyVAL.node = Nod(ODEFER, yyDollar[2].node, nil)
}
case 268:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1779
//line go.y:1780
{
yyVAL.node = Nod(OGOTO, yyDollar[2].node, nil)
yyVAL.node.Sym = dclstack // context, for goto restrictions
}
case 269:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1784
//line go.y:1785
{
yyVAL.node = Nod(ORETURN, nil, nil)
yyVAL.node.List = yyDollar[2].list
......@@ -3009,7 +3010,7 @@ yydefault:
}
case 270:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1806
//line go.y:1807
{
yyVAL.list = nil
if yyDollar[1].node != nil {
......@@ -3018,7 +3019,7 @@ yydefault:
}
case 271:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1813
//line go.y:1814
{
yyVAL.list = yyDollar[1].list
if yyDollar[3].node != nil {
......@@ -3027,163 +3028,163 @@ yydefault:
}
case 272:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1822
//line go.y:1823
{
yyVAL.list = list1(yyDollar[1].node)
}
case 273:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1826
//line go.y:1827
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 274:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1832
//line go.y:1833
{
yyVAL.list = list1(yyDollar[1].node)
}
case 275:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1836
//line go.y:1837
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 276:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1842
//line go.y:1843
{
yyVAL.list = list1(yyDollar[1].node)
}
case 277:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1846
//line go.y:1847
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 278:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1852
//line go.y:1853
{
yyVAL.list = list1(yyDollar[1].node)
}
case 279:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1856
//line go.y:1857
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 280:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1865
//line go.y:1866
{
yyVAL.list = list1(yyDollar[1].node)
}
case 281:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1869
//line go.y:1870
{
yyVAL.list = list1(yyDollar[1].node)
}
case 282:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1873
//line go.y:1874
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 283:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:1877
//line go.y:1878
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 284:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1882
//line go.y:1883
{
yyVAL.list = nil
}
case 285:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:1886
//line go.y:1887
{
yyVAL.list = yyDollar[1].list
}
case 290:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1900
//line go.y:1901
{
yyVAL.node = nil
}
case 292:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1906
//line go.y:1907
{
yyVAL.list = nil
}
case 294:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1912
//line go.y:1913
{
yyVAL.node = nil
}
case 296:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1918
//line go.y:1919
{
yyVAL.list = nil
}
case 298:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1924
//line go.y:1925
{
yyVAL.list = nil
}
case 300:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1930
//line go.y:1931
{
yyVAL.list = nil
}
case 302:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:1936
//line go.y:1937
{
yyVAL.val.Ctype = CTxxx
}
case 304:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1946
//line go.y:1947
{
importimport(yyDollar[2].sym, yyDollar[3].val.U.Sval)
}
case 305:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1950
//line go.y:1951
{
importvar(yyDollar[2].sym, yyDollar[3].typ)
}
case 306:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:1954
//line go.y:1955
{
importconst(yyDollar[2].sym, Types[TIDEAL], yyDollar[4].node)
}
case 307:
yyDollar = yyS[yypt-6 : yypt+1]
//line go.y:1958
//line go.y:1959
{
importconst(yyDollar[2].sym, yyDollar[3].typ, yyDollar[5].node)
}
case 308:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1962
//line go.y:1963
{
importtype(yyDollar[2].typ, yyDollar[3].typ)
}
case 309:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:1966
//line go.y:1967
{
if yyDollar[2].node == nil {
dclcontext = PEXTERN // since we skip the funcbody below
......@@ -3196,35 +3197,35 @@ yydefault:
importlist = list(importlist, yyDollar[2].node)
if Debug['E'] > 0 {
print("import [%q] func %lN \n", importpkg.Path, yyDollar[2].node)
fmt.Printf("import [%q] func %v \n", importpkg.Path, yyDollar[2].node)
if Debug['m'] > 2 && yyDollar[2].node.Func.Inl != nil {
print("inl body:%+H\n", yyDollar[2].node.Func.Inl)
fmt.Printf("inl body:%v\n", yyDollar[2].node.Func.Inl)
}
}
}
case 310:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1987
//line go.y:1988
{
yyVAL.sym = yyDollar[1].sym
structpkg = yyVAL.sym.Pkg
}
case 311:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:1994
//line go.y:1995
{
yyVAL.typ = pkgtype(yyDollar[1].sym)
importsym(yyDollar[1].sym, OTYPE)
}
case 317:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2014
//line go.y:2015
{
yyVAL.typ = pkgtype(yyDollar[1].sym)
}
case 318:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2018
//line go.y:2019
{
// predefined name like uint8
yyDollar[1].sym = Pkglookup(yyDollar[1].sym.Name, builtinpkg)
......@@ -3237,43 +3238,43 @@ yydefault:
}
case 319:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2029
//line go.y:2030
{
yyVAL.typ = aindex(nil, yyDollar[3].typ)
}
case 320:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:2033
//line go.y:2034
{
yyVAL.typ = aindex(nodlit(yyDollar[2].val), yyDollar[4].typ)
}
case 321:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:2037
//line go.y:2038
{
yyVAL.typ = maptype(yyDollar[3].typ, yyDollar[5].typ)
}
case 322:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:2041
//line go.y:2042
{
yyVAL.typ = tostruct(yyDollar[3].list)
}
case 323:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:2045
//line go.y:2046
{
yyVAL.typ = tointerface(yyDollar[3].list)
}
case 324:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:2049
//line go.y:2050
{
yyVAL.typ = Ptrto(yyDollar[2].typ)
}
case 325:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:2053
//line go.y:2054
{
yyVAL.typ = typ(TCHAN)
yyVAL.typ.Type = yyDollar[2].typ
......@@ -3281,7 +3282,7 @@ yydefault:
}
case 326:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:2059
//line go.y:2060
{
yyVAL.typ = typ(TCHAN)
yyVAL.typ.Type = yyDollar[3].typ
......@@ -3289,7 +3290,7 @@ yydefault:
}
case 327:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2065
//line go.y:2066
{
yyVAL.typ = typ(TCHAN)
yyVAL.typ.Type = yyDollar[3].typ
......@@ -3297,7 +3298,7 @@ yydefault:
}
case 328:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2073
//line go.y:2074
{
yyVAL.typ = typ(TCHAN)
yyVAL.typ.Type = yyDollar[3].typ
......@@ -3305,13 +3306,13 @@ yydefault:
}
case 329:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:2081
//line go.y:2082
{
yyVAL.typ = functype(nil, yyDollar[3].list, yyDollar[5].list)
}
case 330:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2087
//line go.y:2088
{
yyVAL.node = Nod(ODCLFIELD, nil, typenod(yyDollar[2].typ))
if yyDollar[1].sym != nil {
......@@ -3321,7 +3322,7 @@ yydefault:
}
case 331:
yyDollar = yyS[yypt-4 : yypt+1]
//line go.y:2095
//line go.y:2096
{
var t *Type
......@@ -3338,7 +3339,7 @@ yydefault:
}
case 332:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2112
//line go.y:2113
{
var s *Sym
var p *Pkg
......@@ -3362,43 +3363,43 @@ yydefault:
}
case 333:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:2136
//line go.y:2137
{
yyVAL.node = Nod(ODCLFIELD, newname(yyDollar[1].sym), typenod(functype(fakethis(), yyDollar[3].list, yyDollar[5].list)))
}
case 334:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2140
//line go.y:2141
{
yyVAL.node = Nod(ODCLFIELD, nil, typenod(yyDollar[1].typ))
}
case 335:
yyDollar = yyS[yypt-0 : yypt+1]
//line go.y:2145
//line go.y:2146
{
yyVAL.list = nil
}
case 337:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2152
//line go.y:2153
{
yyVAL.list = yyDollar[2].list
}
case 338:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2156
//line go.y:2157
{
yyVAL.list = list1(Nod(ODCLFIELD, nil, typenod(yyDollar[1].typ)))
}
case 339:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2166
//line go.y:2167
{
yyVAL.node = nodlit(yyDollar[1].val)
}
case 340:
yyDollar = yyS[yypt-2 : yypt+1]
//line go.y:2170
//line go.y:2171
{
yyVAL.node = nodlit(yyDollar[2].val)
switch yyVAL.node.Val.Ctype {
......@@ -3418,7 +3419,7 @@ yydefault:
}
case 341:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2188
//line go.y:2189
{
yyVAL.node = oldname(Pkglookup(yyDollar[1].sym.Name, builtinpkg))
if yyVAL.node.Op != OLITERAL {
......@@ -3427,7 +3428,7 @@ yydefault:
}
case 343:
yyDollar = yyS[yypt-5 : yypt+1]
//line go.y:2198
//line go.y:2199
{
if yyDollar[2].node.Val.Ctype == CTRUNE && yyDollar[4].node.Val.Ctype == CTINT {
yyVAL.node = yyDollar[2].node
......@@ -3440,37 +3441,37 @@ yydefault:
}
case 346:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2214
//line go.y:2215
{
yyVAL.list = list1(yyDollar[1].node)
}
case 347:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2218
//line go.y:2219
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 348:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2224
//line go.y:2225
{
yyVAL.list = list1(yyDollar[1].node)
}
case 349:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2228
//line go.y:2229
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
case 350:
yyDollar = yyS[yypt-1 : yypt+1]
//line go.y:2234
//line go.y:2235
{
yyVAL.list = list1(yyDollar[1].node)
}
case 351:
yyDollar = yyS[yypt-3 : yypt+1]
//line go.y:2238
//line go.y:2239
{
yyVAL.list = list(yyDollar[1].list, yyDollar[3].node)
}
......
......@@ -3,7 +3,7 @@ state 0
$accept: .file $end
$$4: . (4)
. reduce 4 (src line 148)
. reduce 4 (src line 149)
file goto 1
loadsys goto 2
......@@ -21,7 +21,7 @@ state 2
package: . (2)
LPACKAGE shift 5
. reduce 2 (src line 131)
. reduce 2 (src line 132)
package goto 4
......@@ -37,7 +37,7 @@ state 4
file: loadsys package.imports xdcl_list
imports: . (6)
. reduce 6 (src line 165)
. reduce 6 (src line 166)
imports goto 8
......@@ -56,7 +56,7 @@ state 6
loadsys: $$4 import_package.import_there
$$21: . (21)
. reduce 21 (src line 272)
. reduce 21 (src line 273)
import_there goto 14
$$21 goto 15
......@@ -74,7 +74,7 @@ state 8
xdcl_list: . (218)
LIMPORT shift 19
. reduce 218 (src line 1507)
. reduce 218 (src line 1508)
xdcl_list goto 17
import goto 18
......@@ -89,19 +89,19 @@ state 9
state 10
sym: LNAME. (157)
. reduce 157 (src line 1113)
. reduce 157 (src line 1114)
state 11
sym: hidden_importsym. (158)
. reduce 158 (src line 1122)
. reduce 158 (src line 1123)
state 12
sym: '?'. (159)
. reduce 159 (src line 1123)
. reduce 159 (src line 1124)
state 13
......@@ -115,14 +115,14 @@ state 13
state 14
loadsys: $$4 import_package import_there. (5)
. reduce 5 (src line 159)
. reduce 5 (src line 160)
state 15
import_there: $$21.hidden_import_list '$' '$'
hidden_import_list: . (344)
. reduce 344 (src line 2209)
. reduce 344 (src line 2210)
hidden_import_list goto 22
......@@ -131,7 +131,7 @@ state 16
import_safety: . (19)
LNAME shift 24
. reduce 19 (src line 264)
. reduce 19 (src line 265)
import_safety goto 23
......@@ -140,7 +140,7 @@ state 17
xdcl_list: xdcl_list.xdcl ';'
xdcl: . (23)
$end reduce 1 (src line 122)
$end reduce 1 (src line 123)
error shift 29
LLITERAL shift 68
LBREAK shift 41
......@@ -170,7 +170,7 @@ state 17
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 23 (src line 285)
';' reduce 23 (src line 286)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -236,7 +236,7 @@ state 19
state 20
package: LPACKAGE sym ';'. (3)
. reduce 3 (src line 138)
. reduce 3 (src line 139)
state 21
......@@ -271,7 +271,7 @@ state 23
state 24
import_safety: LNAME. (20)
. reduce 20 (src line 265)
. reduce 20 (src line 266)
state 25
......@@ -284,25 +284,25 @@ state 25
state 26
xdcl: common_dcl. (24)
. reduce 24 (src line 290)
. reduce 24 (src line 291)
state 27
xdcl: xfndcl. (25)
. reduce 25 (src line 291)
. reduce 25 (src line 292)
state 28
xdcl: non_dcl_stmt. (26)
. reduce 26 (src line 295)
. reduce 26 (src line 296)
state 29
xdcl: error. (27)
. reduce 27 (src line 300)
. reduce 27 (src line 301)
state 30
......@@ -373,31 +373,31 @@ state 33
state 34
non_dcl_stmt: simple_stmt. (256)
. reduce 256 (src line 1734)
. reduce 256 (src line 1735)
state 35
non_dcl_stmt: for_stmt. (257)
. reduce 257 (src line 1736)
. reduce 257 (src line 1737)
state 36
non_dcl_stmt: switch_stmt. (258)
. reduce 258 (src line 1737)
. reduce 258 (src line 1738)
state 37
non_dcl_stmt: select_stmt. (259)
. reduce 259 (src line 1738)
. reduce 259 (src line 1739)
state 38
non_dcl_stmt: if_stmt. (260)
. reduce 260 (src line 1739)
. reduce 260 (src line 1740)
state 39
......@@ -410,7 +410,7 @@ state 39
state 40
non_dcl_stmt: LFALL. (263)
. reduce 263 (src line 1756)
. reduce 263 (src line 1757)
state 41
......@@ -420,7 +420,7 @@ state 41
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 155 (src line 1107)
. reduce 155 (src line 1108)
sym goto 119
new_name goto 118
......@@ -434,7 +434,7 @@ state 42
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 155 (src line 1107)
. reduce 155 (src line 1108)
sym goto 119
new_name goto 118
......@@ -538,7 +538,7 @@ state 46
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 292 (src line 1905)
. reduce 292 (src line 1906)
sym goto 123
expr goto 129
......@@ -562,7 +562,7 @@ state 46
state 47
lconst: LCONST. (38)
. reduce 38 (src line 354)
. reduce 38 (src line 355)
state 48
......@@ -593,7 +593,7 @@ state 48
expr_list: expr. (276)
LASOP shift 130
LCOLAS reduce 276 (src line 1840)
LCOLAS reduce 276 (src line 1841)
LANDAND shift 134
LANDNOT shift 149
LCOMM shift 152
......@@ -616,9 +616,9 @@ state 48
'/' shift 146
'%' shift 147
'&' shift 148
'=' reduce 276 (src line 1840)
',' reduce 276 (src line 1840)
. reduce 49 (src line 410)
'=' reduce 276 (src line 1841)
',' reduce 276 (src line 1841)
. reduce 49 (src line 411)
state 49
......@@ -636,7 +636,7 @@ state 50
for_stmt: LFOR.$$74 for_body
$$74: . (74)
. reduce 74 (src line 659)
. reduce 74 (src line 660)
$$74 goto 156
......@@ -644,7 +644,7 @@ state 51
switch_stmt: LSWITCH.$$88 if_header $$89 LBODY caseblock_list '}'
$$88: . (88)
. reduce 88 (src line 754)
. reduce 88 (src line 755)
$$88 goto 157
......@@ -652,7 +652,7 @@ state 52
select_stmt: LSELECT.$$91 LBODY caseblock_list '}'
$$91: . (91)
. reduce 91 (src line 777)
. reduce 91 (src line 778)
$$91 goto 158
......@@ -660,28 +660,28 @@ state 53
if_stmt: LIF.$$78 if_header $$79 loop_body $$80 elseif_list else
$$78: . (78)
. reduce 78 (src line 688)
. reduce 78 (src line 689)
$$78 goto 159
state 54
labelname: new_name. (163)
. reduce 163 (src line 1167)
. reduce 163 (src line 1168)
state 55
expr: uexpr. (93)
. reduce 93 (src line 793)
. reduce 93 (src line 794)
state 56
new_name: sym. (153)
name: sym. (162)
':' reduce 153 (src line 1091)
. reduce 162 (src line 1158)
':' reduce 153 (src line 1092)
. reduce 162 (src line 1159)
state 57
......@@ -699,7 +699,7 @@ state 57
'(' shift 160
'.' shift 161
'[' shift 162
. reduce 114 (src line 877)
. reduce 114 (src line 878)
state 58
......@@ -1027,7 +1027,7 @@ state 66
pexpr: pexpr_no_paren. (146)
'{' shift 171
. reduce 146 (src line 1054)
. reduce 146 (src line 1055)
state 67
......@@ -1078,19 +1078,19 @@ state 67
state 68
pexpr_no_paren: LLITERAL. (126)
. reduce 126 (src line 941)
. reduce 126 (src line 942)
state 69
pexpr_no_paren: name. (127)
. reduce 127 (src line 946)
. reduce 127 (src line 947)
state 70
pexpr_no_paren: pseudocall. (134)
. reduce 134 (src line 984)
. reduce 134 (src line 985)
state 71
......@@ -1112,23 +1112,23 @@ state 72
state 73
pexpr_no_paren: fnliteral. (139)
. reduce 139 (src line 1011)
. reduce 139 (src line 1012)
state 74
convtype: fntype. (181)
fnlitdcl: fntype. (215)
'(' reduce 181 (src line 1220)
. reduce 215 (src line 1484)
'(' reduce 181 (src line 1221)
. reduce 215 (src line 1485)
state 75
convtype: othertype. (182)
comptype: othertype. (183)
'(' reduce 182 (src line 1222)
. reduce 183 (src line 1224)
'(' reduce 182 (src line 1223)
. reduce 183 (src line 1225)
state 76
......@@ -1167,7 +1167,7 @@ state 77
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 290 (src line 1899)
. reduce 290 (src line 1900)
sym goto 123
expr goto 188
......@@ -1226,13 +1226,13 @@ state 79
state 80
othertype: structtype. (196)
. reduce 196 (src line 1272)
. reduce 196 (src line 1273)
state 81
othertype: interfacetype. (197)
. reduce 197 (src line 1273)
. reduce 197 (src line 1274)
state 82
......@@ -1258,13 +1258,13 @@ state 83
state 84
imports: imports import ';'. (7)
. reduce 7 (src line 166)
. reduce 7 (src line 167)
state 85
import: LIMPORT import_stmt. (8)
. reduce 8 (src line 168)
. reduce 8 (src line 169)
state 86
......@@ -1291,7 +1291,7 @@ state 87
$$21: . (21)
LPACKAGE shift 7
. reduce 21 (src line 272)
. reduce 21 (src line 273)
import_package goto 204
import_there goto 205
......@@ -1300,7 +1300,7 @@ state 87
state 88
import_here: LLITERAL. (15)
. reduce 15 (src line 224)
. reduce 15 (src line 225)
state 89
......@@ -1336,7 +1336,7 @@ state 92
state 93
hidden_import_list: hidden_import_list hidden_import. (345)
. reduce 345 (src line 2210)
. reduce 345 (src line 2211)
state 94
......@@ -1389,19 +1389,19 @@ state 98
state 99
import_package: LPACKAGE LNAME import_safety ';'. (18)
. reduce 18 (src line 247)
. reduce 18 (src line 248)
state 100
xdcl_list: xdcl_list xdcl ';'. (219)
. reduce 219 (src line 1511)
. reduce 219 (src line 1512)
state 101
common_dcl: LVAR vardcl. (28)
. reduce 28 (src line 305)
. reduce 28 (src line 306)
state 102
......@@ -1458,19 +1458,19 @@ state 103
state 104
dcl_name_list: dcl_name. (274)
. reduce 274 (src line 1830)
. reduce 274 (src line 1831)
state 105
dcl_name: sym. (154)
. reduce 154 (src line 1101)
. reduce 154 (src line 1102)
state 106
common_dcl: lconst constdcl. (31)
. reduce 31 (src line 318)
. reduce 31 (src line 319)
state 107
......@@ -1526,7 +1526,7 @@ state 108
state 109
common_dcl: LTYPE typedcl. (35)
. reduce 35 (src line 341)
. reduce 35 (src line 342)
state 110
......@@ -1577,7 +1577,7 @@ state 111
state 112
typedclname: sym. (47)
. reduce 47 (src line 395)
. reduce 47 (src line 396)
state 113
......@@ -1585,7 +1585,7 @@ state 113
fnbody: . (210)
'{' shift 242
. reduce 210 (src line 1457)
. reduce 210 (src line 1458)
fnbody goto 241
......@@ -1607,7 +1607,7 @@ state 114
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -1637,43 +1637,43 @@ state 116
non_dcl_stmt: labelname ':'.$$261 stmt
$$261: . (261)
. reduce 261 (src line 1740)
. reduce 261 (src line 1741)
$$261 goto 252
state 117
non_dcl_stmt: LBREAK onew_name. (264)
. reduce 264 (src line 1762)
. reduce 264 (src line 1763)
state 118
onew_name: new_name. (156)
. reduce 156 (src line 1111)
. reduce 156 (src line 1112)
state 119
new_name: sym. (153)
. reduce 153 (src line 1091)
. reduce 153 (src line 1092)
state 120
non_dcl_stmt: LCONTINUE onew_name. (265)
. reduce 265 (src line 1766)
. reduce 265 (src line 1767)
state 121
pexpr_no_paren: pseudocall. (134)
non_dcl_stmt: LGO pseudocall. (266)
'(' reduce 134 (src line 984)
'.' reduce 134 (src line 984)
'{' reduce 134 (src line 984)
'[' reduce 134 (src line 984)
. reduce 266 (src line 1770)
'(' reduce 134 (src line 985)
'.' reduce 134 (src line 985)
'{' reduce 134 (src line 985)
'[' reduce 134 (src line 985)
. reduce 266 (src line 1771)
state 122
......@@ -1696,7 +1696,7 @@ state 122
state 123
name: sym. (162)
. reduce 162 (src line 1158)
. reduce 162 (src line 1159)
state 124
......@@ -1710,23 +1710,23 @@ state 125
pexpr_no_paren: pseudocall. (134)
non_dcl_stmt: LDEFER pseudocall. (267)
'(' reduce 134 (src line 984)
'.' reduce 134 (src line 984)
'{' reduce 134 (src line 984)
'[' reduce 134 (src line 984)
. reduce 267 (src line 1774)
'(' reduce 134 (src line 985)
'.' reduce 134 (src line 985)
'{' reduce 134 (src line 985)
'[' reduce 134 (src line 985)
. reduce 267 (src line 1775)
state 126
non_dcl_stmt: LGOTO new_name. (268)
. reduce 268 (src line 1778)
. reduce 268 (src line 1779)
state 127
non_dcl_stmt: LRETURN oexpr_list. (269)
. reduce 269 (src line 1783)
. reduce 269 (src line 1784)
state 128
......@@ -1734,7 +1734,7 @@ state 128
oexpr_list: expr_list. (293)
',' shift 155
. reduce 293 (src line 1909)
. reduce 293 (src line 1910)
state 129
......@@ -1780,7 +1780,7 @@ state 129
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 276 (src line 1840)
. reduce 276 (src line 1841)
state 130
......@@ -1827,13 +1827,13 @@ state 130
state 131
simple_stmt: expr LINC. (53)
. reduce 53 (src line 460)
. reduce 53 (src line 461)
state 132
simple_stmt: expr LDEC. (54)
. reduce 54 (src line 466)
. reduce 54 (src line 467)
state 133
......@@ -2805,7 +2805,7 @@ state 156
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -2853,7 +2853,7 @@ state 157
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -2906,7 +2906,7 @@ state 159
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -3016,7 +3016,7 @@ state 162
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 290 (src line 1899)
. reduce 290 (src line 1900)
sym goto 123
expr goto 294
......@@ -3039,56 +3039,56 @@ state 162
state 163
uexpr: '*' uexpr. (115)
. reduce 115 (src line 879)
. reduce 115 (src line 880)
state 164
uexpr: '&' uexpr. (116)
. reduce 116 (src line 883)
. reduce 116 (src line 884)
state 165
uexpr: '+' uexpr. (117)
. reduce 117 (src line 894)
. reduce 117 (src line 895)
state 166
uexpr: '-' uexpr. (118)
. reduce 118 (src line 898)
. reduce 118 (src line 899)
state 167
uexpr: '!' uexpr. (119)
. reduce 119 (src line 902)
. reduce 119 (src line 903)
state 168
uexpr: '~' uexpr. (120)
. reduce 120 (src line 906)
. reduce 120 (src line 907)
state 169
uexpr: '^' uexpr. (121)
. reduce 121 (src line 911)
. reduce 121 (src line 912)
state 170
uexpr: LCOMM uexpr. (122)
. reduce 122 (src line 915)
. reduce 122 (src line 916)
state 171
pexpr_no_paren: pexpr_no_paren '{'.start_complit braced_keyval_list '}'
start_complit: . (140)
. reduce 140 (src line 1013)
. reduce 140 (src line 1014)
start_complit goto 296
......@@ -3143,19 +3143,19 @@ state 173
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 148 (src line 1069)
. reduce 148 (src line 1070)
state 174
expr_or_type: non_expr_type. (149)
. reduce 149 (src line 1071)
. reduce 149 (src line 1072)
state 175
non_expr_type: recvchantype. (172)
. reduce 172 (src line 1201)
. reduce 172 (src line 1202)
state 176
......@@ -3163,11 +3163,11 @@ state 176
convtype: fntype. (181)
fnlitdcl: fntype. (215)
error reduce 215 (src line 1484)
LBODY reduce 215 (src line 1484)
'(' reduce 181 (src line 1220)
'{' reduce 215 (src line 1484)
. reduce 173 (src line 1203)
error reduce 215 (src line 1485)
LBODY reduce 215 (src line 1485)
'(' reduce 181 (src line 1221)
'{' reduce 215 (src line 1485)
. reduce 173 (src line 1204)
state 177
......@@ -3175,10 +3175,10 @@ state 177
convtype: othertype. (182)
comptype: othertype. (183)
LBODY reduce 183 (src line 1224)
'(' reduce 182 (src line 1222)
'{' reduce 183 (src line 1224)
. reduce 174 (src line 1204)
LBODY reduce 183 (src line 1225)
'(' reduce 182 (src line 1223)
'{' reduce 183 (src line 1225)
. reduce 174 (src line 1205)
state 178
......@@ -3310,20 +3310,20 @@ state 181
pexpr_no_paren: comptype lbrace.start_complit braced_keyval_list '}'
start_complit: . (140)
. reduce 140 (src line 1013)
. reduce 140 (src line 1014)
start_complit goto 301
state 182
lbrace: LBODY. (151)
. reduce 151 (src line 1076)
. reduce 151 (src line 1077)
state 183
lbrace: '{'. (152)
. reduce 152 (src line 1081)
. reduce 152 (src line 1082)
state 184
......@@ -3359,9 +3359,9 @@ state 184
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -3403,7 +3403,7 @@ state 184
state 185
fnliteral: fnlitdcl error. (217)
. reduce 217 (src line 1496)
. reduce 217 (src line 1497)
state 186
......@@ -3463,13 +3463,13 @@ state 188
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 291 (src line 1903)
. reduce 291 (src line 1904)
state 189
othertype: LCHAN non_recvchantype. (193)
. reduce 193 (src line 1258)
. reduce 193 (src line 1259)
state 190
......@@ -3504,25 +3504,25 @@ state 190
state 191
non_recvchantype: fntype. (176)
. reduce 176 (src line 1210)
. reduce 176 (src line 1211)
state 192
non_recvchantype: othertype. (177)
. reduce 177 (src line 1212)
. reduce 177 (src line 1213)
state 193
non_recvchantype: ptrtype. (178)
. reduce 178 (src line 1213)
. reduce 178 (src line 1214)
state 194
non_recvchantype: dotname. (179)
. reduce 179 (src line 1214)
. reduce 179 (src line 1215)
state 195
......@@ -3588,7 +3588,7 @@ state 197
dotname: name.'.' sym
'.' shift 314
. reduce 189 (src line 1234)
. reduce 189 (src line 1235)
state 198
......@@ -3665,27 +3665,27 @@ state 201
osemi: . (286)
';' shift 333
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 332
state 202
import: LIMPORT '(' ')'. (10)
. reduce 10 (src line 171)
. reduce 10 (src line 172)
state 203
import_stmt_list: import_stmt. (13)
. reduce 13 (src line 220)
. reduce 13 (src line 221)
state 204
import_stmt: import_here import_package.import_there
$$21: . (21)
. reduce 21 (src line 272)
. reduce 21 (src line 273)
import_there goto 334
$$21 goto 15
......@@ -3693,37 +3693,37 @@ state 204
state 205
import_stmt: import_here import_there. (12)
. reduce 12 (src line 209)
. reduce 12 (src line 210)
state 206
import_here: sym LLITERAL. (16)
. reduce 16 (src line 232)
. reduce 16 (src line 233)
state 207
import_here: '.' LLITERAL. (17)
. reduce 17 (src line 239)
. reduce 17 (src line 240)
state 208
hidden_importsym: '@' LLITERAL '.' LNAME. (160)
. reduce 160 (src line 1128)
. reduce 160 (src line 1129)
state 209
hidden_importsym: '@' LLITERAL '.' '?'. (161)
. reduce 161 (src line 1143)
. reduce 161 (src line 1144)
state 210
import_there: $$21 hidden_import_list '$' '$'. (22)
. reduce 22 (src line 276)
. reduce 22 (src line 277)
state 211
......@@ -3757,7 +3757,7 @@ state 212
state 213
hidden_pkg_importsym: hidden_importsym. (310)
. reduce 310 (src line 1985)
. reduce 310 (src line 1986)
state 214
......@@ -3807,7 +3807,7 @@ state 215
state 216
hidden_pkgtype: hidden_pkg_importsym. (311)
. reduce 311 (src line 1992)
. reduce 311 (src line 1993)
state 217
......@@ -3815,7 +3815,7 @@ state 217
fnbody: . (210)
'{' shift 242
. reduce 210 (src line 1457)
. reduce 210 (src line 1458)
fnbody goto 353
......@@ -3845,20 +3845,20 @@ state 220
osemi: . (286)
';' shift 359
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 358
state 221
common_dcl: LVAR '(' ')'. (30)
. reduce 30 (src line 314)
. reduce 30 (src line 315)
state 222
vardcl_list: vardcl. (220)
. reduce 220 (src line 1523)
. reduce 220 (src line 1524)
state 223
......@@ -3866,7 +3866,7 @@ state 223
vardcl: dcl_name_list ntype.'=' expr_list
'=' shift 360
. reduce 39 (src line 360)
. reduce 39 (src line 361)
state 224
......@@ -3926,31 +3926,31 @@ state 225
state 226
ntype: recvchantype. (166)
. reduce 166 (src line 1190)
. reduce 166 (src line 1191)
state 227
ntype: fntype. (167)
. reduce 167 (src line 1192)
. reduce 167 (src line 1193)
state 228
ntype: othertype. (168)
. reduce 168 (src line 1193)
. reduce 168 (src line 1194)
state 229
ntype: ptrtype. (169)
. reduce 169 (src line 1194)
. reduce 169 (src line 1195)
state 230
ntype: dotname. (170)
. reduce 170 (src line 1195)
. reduce 170 (src line 1196)
state 231
......@@ -3995,14 +3995,14 @@ state 233
osemi: . (286)
';' shift 366
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 365
state 234
common_dcl: lconst '(' ')'. (34)
. reduce 34 (src line 336)
. reduce 34 (src line 337)
state 235
......@@ -4060,32 +4060,32 @@ state 237
osemi: . (286)
';' shift 370
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 369
state 238
common_dcl: LTYPE '(' ')'. (37)
. reduce 37 (src line 349)
. reduce 37 (src line 350)
state 239
typedcl_list: typedcl. (224)
. reduce 224 (src line 1537)
. reduce 224 (src line 1538)
state 240
typedcl: typedclname ntype. (48)
. reduce 48 (src line 404)
. reduce 48 (src line 405)
state 241
xfndcl: LFUNC fndcl fnbody. (204)
. reduce 204 (src line 1318)
. reduce 204 (src line 1319)
state 242
......@@ -4121,9 +4121,9 @@ state 242
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -4176,20 +4176,20 @@ state 244
ocomma: . (288)
',' shift 373
. reduce 288 (src line 1896)
. reduce 288 (src line 1897)
ocomma goto 374
state 245
arg_type_list: arg_type. (247)
. reduce 247 (src line 1697)
. reduce 247 (src line 1698)
state 246
arg_type: name_or_type. (243)
. reduce 243 (src line 1681)
. reduce 243 (src line 1682)
state 247
......@@ -4210,7 +4210,7 @@ state 247
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 162 (src line 1158)
. reduce 162 (src line 1159)
sym goto 123
ntype goto 249
......@@ -4229,13 +4229,13 @@ state 247
state 248
arg_type: dotdotdot. (246)
. reduce 246 (src line 1695)
. reduce 246 (src line 1696)
state 249
name_or_type: ntype. (150)
. reduce 150 (src line 1073)
. reduce 150 (src line 1074)
state 250
......@@ -4254,7 +4254,7 @@ state 250
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 164 (src line 1179)
. reduce 164 (src line 1180)
sym goto 123
ntype goto 377
......@@ -4285,7 +4285,7 @@ state 251
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -4311,11 +4311,11 @@ state 252
error shift 307
LLITERAL shift 68
LBREAK shift 41
LCASE reduce 251 (src line 1719)
LCASE reduce 251 (src line 1720)
LCHAN shift 78
LCONST shift 47
LCONTINUE shift 42
LDEFAULT reduce 251 (src line 1719)
LDEFAULT reduce 251 (src line 1720)
LDEFER shift 44
LFALL shift 40
LFOR shift 50
......@@ -4339,9 +4339,9 @@ state 252
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -4396,7 +4396,7 @@ state 253
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -4458,7 +4458,7 @@ state 254
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 50 (src line 425)
. reduce 50 (src line 426)
state 255
......@@ -4502,7 +4502,7 @@ state 255
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 94 (src line 795)
. reduce 94 (src line 796)
state 256
......@@ -4545,7 +4545,7 @@ state 256
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 95 (src line 799)
. reduce 95 (src line 800)
state 257
......@@ -4582,7 +4582,7 @@ state 257
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 96 (src line 803)
. reduce 96 (src line 804)
state 258
......@@ -4619,7 +4619,7 @@ state 258
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 97 (src line 807)
. reduce 97 (src line 808)
state 259
......@@ -4656,7 +4656,7 @@ state 259
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 98 (src line 811)
. reduce 98 (src line 812)
state 260
......@@ -4693,7 +4693,7 @@ state 260
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 99 (src line 815)
. reduce 99 (src line 816)
state 261
......@@ -4730,7 +4730,7 @@ state 261
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 100 (src line 819)
. reduce 100 (src line 820)
state 262
......@@ -4767,7 +4767,7 @@ state 262
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 101 (src line 823)
. reduce 101 (src line 824)
state 263
......@@ -4800,7 +4800,7 @@ state 263
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 102 (src line 827)
. reduce 102 (src line 828)
state 264
......@@ -4833,7 +4833,7 @@ state 264
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 103 (src line 831)
. reduce 103 (src line 832)
state 265
......@@ -4866,7 +4866,7 @@ state 265
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 104 (src line 835)
. reduce 104 (src line 836)
state 266
......@@ -4899,7 +4899,7 @@ state 266
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 105 (src line 839)
. reduce 105 (src line 840)
state 267
......@@ -4925,7 +4925,7 @@ state 267
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 106 (src line 843)
. reduce 106 (src line 844)
state 268
......@@ -4951,7 +4951,7 @@ state 268
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 107 (src line 847)
. reduce 107 (src line 848)
state 269
......@@ -4977,7 +4977,7 @@ state 269
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 108 (src line 851)
. reduce 108 (src line 852)
state 270
......@@ -5003,7 +5003,7 @@ state 270
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 109 (src line 855)
. reduce 109 (src line 856)
state 271
......@@ -5029,7 +5029,7 @@ state 271
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 110 (src line 859)
. reduce 110 (src line 860)
state 272
......@@ -5055,7 +5055,7 @@ state 272
expr: expr.LRSH expr
expr: expr.LCOMM expr
. reduce 111 (src line 863)
. reduce 111 (src line 864)
state 273
......@@ -5081,7 +5081,7 @@ state 273
expr: expr LRSH expr. (112)
expr: expr.LCOMM expr
. reduce 112 (src line 867)
. reduce 112 (src line 868)
state 274
......@@ -5126,7 +5126,7 @@ state 274
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 113 (src line 872)
. reduce 113 (src line 873)
state 275
......@@ -5134,7 +5134,7 @@ state 275
expr_list: expr_list.',' expr
',' shift 155
. reduce 51 (src line 430)
. reduce 51 (src line 431)
state 276
......@@ -5142,7 +5142,7 @@ state 276
expr_list: expr_list.',' expr
',' shift 155
. reduce 52 (src line 442)
. reduce 52 (src line 443)
state 277
......@@ -5188,13 +5188,13 @@ state 277
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 277 (src line 1845)
. reduce 277 (src line 1846)
state 278
for_stmt: LFOR $$74 for_body. (75)
. reduce 75 (src line 664)
. reduce 75 (src line 665)
state 279
......@@ -5210,19 +5210,19 @@ state 280
for_header: osimple_stmt. (71)
';' shift 383
. reduce 71 (src line 644)
. reduce 71 (src line 645)
state 281
for_header: range_stmt. (72)
. reduce 72 (src line 650)
. reduce 72 (src line 651)
state 282
osimple_stmt: simple_stmt. (295)
. reduce 295 (src line 1915)
. reduce 295 (src line 1916)
state 283
......@@ -5283,7 +5283,7 @@ state 285
switch_stmt: LSWITCH $$88 if_header.$$89 LBODY caseblock_list '}'
$$89: . (89)
. reduce 89 (src line 759)
. reduce 89 (src line 760)
$$89 goto 387
......@@ -5292,14 +5292,14 @@ state 286
if_header: osimple_stmt.';' osimple_stmt
';' shift 388
. reduce 76 (src line 670)
. reduce 76 (src line 671)
state 287
select_stmt: LSELECT $$91 LBODY.caseblock_list '}'
caseblock_list: . (63)
. reduce 63 (src line 590)
. reduce 63 (src line 591)
caseblock_list goto 389
......@@ -5307,14 +5307,14 @@ state 288
if_stmt: LIF $$78 if_header.$$79 loop_body $$80 elseif_list else
$$79: . (79)
. reduce 79 (src line 693)
. reduce 79 (src line 694)
$$79 goto 390
state 289
pseudocall: pexpr '(' ')'. (123)
. reduce 123 (src line 924)
. reduce 123 (src line 925)
state 290
......@@ -5325,20 +5325,20 @@ state 290
LDDD shift 392
',' shift 393
. reduce 288 (src line 1896)
. reduce 288 (src line 1897)
ocomma goto 391
state 291
expr_or_type_list: expr_or_type. (278)
. reduce 278 (src line 1850)
. reduce 278 (src line 1851)
state 292
pexpr_no_paren: pexpr '.' sym. (128)
. reduce 128 (src line 947)
. reduce 128 (src line 948)
state 293
......@@ -5432,7 +5432,7 @@ state 294
'%' shift 147
'&' shift 148
']' shift 396
. reduce 291 (src line 1903)
. reduce 291 (src line 1904)
state 295
......@@ -5467,7 +5467,7 @@ state 296
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 284 (src line 1881)
. reduce 284 (src line 1882)
sym goto 123
expr goto 402
......@@ -5495,13 +5495,13 @@ state 297
pexpr: '(' expr_or_type ')'. (147)
'{' shift 404
. reduce 147 (src line 1056)
. reduce 147 (src line 1057)
state 298
non_expr_type: '*' non_expr_type. (175)
. reduce 175 (src line 1205)
. reduce 175 (src line 1206)
state 299
......@@ -5581,7 +5581,7 @@ state 300
'%' shift 147
'&' shift 148
',' shift 413
. reduce 288 (src line 1896)
. reduce 288 (src line 1897)
ocomma goto 412
......@@ -5609,7 +5609,7 @@ state 301
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 284 (src line 1881)
. reduce 284 (src line 1882)
sym goto 123
expr goto 402
......@@ -5644,38 +5644,38 @@ state 302
state 303
stmt_list: stmt. (270)
. reduce 270 (src line 1804)
. reduce 270 (src line 1805)
state 304
stmt: compound_stmt. (252)
. reduce 252 (src line 1723)
. reduce 252 (src line 1724)
state 305
stmt: common_dcl. (253)
. reduce 253 (src line 1724)
. reduce 253 (src line 1725)
state 306
stmt: non_dcl_stmt. (254)
. reduce 254 (src line 1728)
. reduce 254 (src line 1729)
state 307
stmt: error. (255)
. reduce 255 (src line 1729)
. reduce 255 (src line 1730)
state 308
compound_stmt: '{'.$$59 stmt_list '}'
$$59: . (59)
. reduce 59 (src line 544)
. reduce 59 (src line 545)
$$59 goto 417
......@@ -5740,7 +5740,7 @@ state 310
state 311
othertype: LCHAN LCOMM ntype. (194)
. reduce 194 (src line 1263)
. reduce 194 (src line 1264)
state 312
......@@ -5753,7 +5753,7 @@ state 312
state 313
ptrtype: '*' ntype. (198)
. reduce 198 (src line 1275)
. reduce 198 (src line 1276)
state 314
......@@ -5780,20 +5780,20 @@ state 316
osemi: . (286)
';' shift 424
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 423
state 317
structtype: LSTRUCT lbrace '}'. (201)
. reduce 201 (src line 1295)
. reduce 201 (src line 1296)
state 318
structdcl_list: structdcl. (226)
. reduce 226 (src line 1547)
. reduce 226 (src line 1548)
state 319
......@@ -5832,7 +5832,7 @@ state 320
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 427
......@@ -5861,13 +5861,13 @@ state 322
state 323
new_name_list: new_name. (272)
. reduce 272 (src line 1820)
. reduce 272 (src line 1821)
state 324
embed: packname. (238)
. reduce 238 (src line 1646)
. reduce 238 (src line 1647)
state 325
......@@ -5875,11 +5875,11 @@ state 325
packname: LNAME. (236)
packname: LNAME.'.' sym
LLITERAL reduce 236 (src line 1621)
';' reduce 236 (src line 1621)
LLITERAL reduce 236 (src line 1622)
';' reduce 236 (src line 1622)
'.' shift 434
'}' reduce 236 (src line 1621)
. reduce 157 (src line 1113)
'}' reduce 236 (src line 1622)
. reduce 157 (src line 1114)
state 326
......@@ -5888,20 +5888,20 @@ state 326
osemi: . (286)
';' shift 436
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 435
state 327
interfacetype: LINTERFACE lbrace '}'. (203)
. reduce 203 (src line 1308)
. reduce 203 (src line 1309)
state 328
interfacedcl_list: interfacedcl. (228)
. reduce 228 (src line 1554)
. reduce 228 (src line 1555)
state 329
......@@ -5915,7 +5915,7 @@ state 329
state 330
interfacedcl: packname. (240)
. reduce 240 (src line 1658)
. reduce 240 (src line 1659)
state 331
......@@ -5942,7 +5942,7 @@ state 333
'.' shift 90
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
import_here goto 87
sym goto 89
......@@ -5952,7 +5952,7 @@ state 333
state 334
import_stmt: import_here import_package import_there. (11)
. reduce 11 (src line 173)
. reduce 11 (src line 174)
state 335
......@@ -5972,31 +5972,31 @@ state 336
state 337
hidden_type: hidden_type_misc. (312)
. reduce 312 (src line 2003)
. reduce 312 (src line 2004)
state 338
hidden_type: hidden_type_recv_chan. (313)
. reduce 313 (src line 2005)
. reduce 313 (src line 2006)
state 339
hidden_type: hidden_type_func. (314)
. reduce 314 (src line 2006)
. reduce 314 (src line 2007)
state 340
hidden_type_misc: hidden_importsym. (317)
. reduce 317 (src line 2012)
. reduce 317 (src line 2013)
state 341
hidden_type_misc: LNAME. (318)
. reduce 318 (src line 2017)
. reduce 318 (src line 2018)
state 342
......@@ -6131,7 +6131,7 @@ state 354
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 296 (src line 1917)
. reduce 296 (src line 1918)
sym goto 357
hidden_importsym goto 11
......@@ -6151,7 +6151,7 @@ state 355
state 356
hidden_funarg_list: hidden_funarg. (346)
. reduce 346 (src line 2212)
. reduce 346 (src line 2213)
state 357
......@@ -6191,7 +6191,7 @@ state 359
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 105
dcl_name goto 104
......@@ -6246,13 +6246,13 @@ state 361
expr_list: expr_list.',' expr
',' shift 155
. reduce 41 (src line 369)
. reduce 41 (src line 370)
state 362
dcl_name_list: dcl_name_list ',' dcl_name. (275)
. reduce 275 (src line 1835)
. reduce 275 (src line 1836)
state 363
......@@ -6305,7 +6305,7 @@ state 366
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 105
dcl_name goto 104
......@@ -6362,7 +6362,7 @@ state 368
expr_list: expr_list.',' expr
',' shift 155
. reduce 43 (src line 379)
. reduce 43 (src line 380)
state 369
......@@ -6379,7 +6379,7 @@ state 370
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 112
typedclname goto 111
......@@ -6412,7 +6412,7 @@ state 372
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 212 (src line 1469)
. reduce 212 (src line 1470)
sym goto 485
dotname goto 493
......@@ -6444,7 +6444,7 @@ state 373
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 289 (src line 1897)
. reduce 289 (src line 1898)
sym goto 247
ntype goto 249
......@@ -6464,25 +6464,25 @@ state 373
state 374
oarg_type_list_ocomma: arg_type_list ocomma. (250)
. reduce 250 (src line 1711)
. reduce 250 (src line 1712)
state 375
arg_type: sym name_or_type. (244)
. reduce 244 (src line 1683)
. reduce 244 (src line 1684)
state 376
arg_type: sym dotdotdot. (245)
. reduce 245 (src line 1689)
. reduce 245 (src line 1690)
state 377
dotdotdot: LDDD ntype. (165)
. reduce 165 (src line 1185)
. reduce 165 (src line 1186)
state 378
......@@ -6495,7 +6495,7 @@ state 378
state 379
non_dcl_stmt: labelname ':' $$261 stmt. (262)
. reduce 262 (src line 1745)
. reduce 262 (src line 1746)
state 380
......@@ -6508,14 +6508,14 @@ state 380
state 381
for_body: for_header loop_body. (73)
. reduce 73 (src line 652)
. reduce 73 (src line 653)
state 382
loop_body: LBODY.$$65 stmt_list '}'
$$65: . (65)
. reduce 65 (src line 599)
. reduce 65 (src line 600)
$$65 goto 497
......@@ -6542,7 +6542,7 @@ state 383
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -6695,7 +6695,7 @@ state 386
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 69 (src line 624)
. reduce 69 (src line 625)
state 387
......@@ -6728,7 +6728,7 @@ state 388
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -6782,7 +6782,7 @@ state 392
ocomma: . (288)
',' shift 413
. reduce 288 (src line 1896)
. reduce 288 (src line 1897)
ocomma goto 510
......@@ -6809,7 +6809,7 @@ state 393
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 289 (src line 1897)
. reduce 289 (src line 1898)
sym goto 123
expr goto 173
......@@ -6848,7 +6848,7 @@ state 395
state 396
pexpr_no_paren: pexpr '[' expr ']'. (131)
. reduce 131 (src line 966)
. reduce 131 (src line 967)
state 397
......@@ -6875,7 +6875,7 @@ state 397
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 290 (src line 1899)
. reduce 290 (src line 1900)
sym goto 123
expr goto 188
......@@ -6909,20 +6909,20 @@ state 399
ocomma: . (288)
',' shift 516
. reduce 288 (src line 1896)
. reduce 288 (src line 1897)
ocomma goto 517
state 400
keyval_list: keyval. (280)
. reduce 280 (src line 1863)
. reduce 280 (src line 1864)
state 401
keyval_list: bare_complitexpr. (281)
. reduce 281 (src line 1868)
. reduce 281 (src line 1869)
state 402
......@@ -6970,14 +6970,14 @@ state 402
'%' shift 147
'&' shift 148
':' shift 518
. reduce 142 (src line 1026)
. reduce 142 (src line 1027)
state 403
bare_complitexpr: '{'.start_complit braced_keyval_list '}'
start_complit: . (140)
. reduce 140 (src line 1013)
. reduce 140 (src line 1014)
start_complit goto 519
......@@ -6985,7 +6985,7 @@ state 404
pexpr_no_paren: '(' expr_or_type ')' '{'.start_complit braced_keyval_list '}'
start_complit: . (140)
. reduce 140 (src line 1013)
. reduce 140 (src line 1014)
start_complit goto 520
......@@ -7022,47 +7022,47 @@ state 405
state 406
recvchantype: LCOMM LCHAN ntype. (199)
. reduce 199 (src line 1281)
. reduce 199 (src line 1282)
state 407
ntype: fntype. (167)
non_recvchantype: fntype. (176)
LBODY reduce 176 (src line 1210)
'(' reduce 176 (src line 1210)
'{' reduce 176 (src line 1210)
. reduce 167 (src line 1192)
LBODY reduce 176 (src line 1211)
'(' reduce 176 (src line 1211)
'{' reduce 176 (src line 1211)
. reduce 167 (src line 1193)
state 408
ntype: othertype. (168)
non_recvchantype: othertype. (177)
LBODY reduce 177 (src line 1212)
'(' reduce 177 (src line 1212)
'{' reduce 177 (src line 1212)
. reduce 168 (src line 1193)
LBODY reduce 177 (src line 1213)
'(' reduce 177 (src line 1213)
'{' reduce 177 (src line 1213)
. reduce 168 (src line 1194)
state 409
ntype: ptrtype. (169)
non_recvchantype: ptrtype. (178)
LBODY reduce 178 (src line 1213)
'(' reduce 178 (src line 1213)
'{' reduce 178 (src line 1213)
. reduce 169 (src line 1194)
LBODY reduce 178 (src line 1214)
'(' reduce 178 (src line 1214)
'{' reduce 178 (src line 1214)
. reduce 169 (src line 1195)
state 410
ntype: dotname. (170)
non_recvchantype: dotname. (179)
LBODY reduce 179 (src line 1214)
'(' reduce 179 (src line 1214)
'{' reduce 179 (src line 1214)
. reduce 170 (src line 1195)
LBODY reduce 179 (src line 1215)
'(' reduce 179 (src line 1215)
'{' reduce 179 (src line 1215)
. reduce 170 (src line 1196)
state 411
......@@ -7105,7 +7105,7 @@ state 412
state 413
ocomma: ','. (289)
. reduce 289 (src line 1897)
. reduce 289 (src line 1898)
state 414
......@@ -7118,7 +7118,7 @@ state 414
state 415
fnliteral: fnlitdcl lbrace stmt_list '}'. (216)
. reduce 216 (src line 1490)
. reduce 216 (src line 1491)
state 416
......@@ -7128,11 +7128,11 @@ state 416
error shift 307
LLITERAL shift 68
LBREAK shift 41
LCASE reduce 251 (src line 1719)
LCASE reduce 251 (src line 1720)
LCHAN shift 78
LCONST shift 47
LCONTINUE shift 42
LDEFAULT reduce 251 (src line 1719)
LDEFAULT reduce 251 (src line 1720)
LDEFER shift 44
LFALL shift 40
LFOR shift 50
......@@ -7156,9 +7156,9 @@ state 416
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -7229,9 +7229,9 @@ state 417
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -7273,25 +7273,25 @@ state 417
state 418
othertype: '[' oexpr ']' ntype. (191)
. reduce 191 (src line 1248)
. reduce 191 (src line 1249)
state 419
othertype: '[' LDDD ']' ntype. (192)
. reduce 192 (src line 1253)
. reduce 192 (src line 1254)
state 420
non_recvchantype: '(' ntype ')'. (180)
. reduce 180 (src line 1215)
. reduce 180 (src line 1216)
state 421
dotname: name '.' sym. (190)
. reduce 190 (src line 1236)
. reduce 190 (src line 1237)
state 422
......@@ -7339,7 +7339,7 @@ state 424
'(' shift 321
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 119
packname goto 324
......@@ -7354,7 +7354,7 @@ state 425
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 529
......@@ -7373,13 +7373,13 @@ state 426
state 427
structdcl: embed oliteral. (231)
. reduce 231 (src line 1589)
. reduce 231 (src line 1590)
state 428
oliteral: LLITERAL. (303)
. reduce 303 (src line 1939)
. reduce 303 (src line 1940)
state 429
......@@ -7403,7 +7403,7 @@ state 431
packname: LNAME.'.' sym
'.' shift 434
. reduce 236 (src line 1621)
. reduce 236 (src line 1622)
state 432
......@@ -7411,7 +7411,7 @@ state 432
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 533
......@@ -7450,7 +7450,7 @@ state 436
'(' shift 331
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 119
packname goto 330
......@@ -7461,7 +7461,7 @@ state 436
state 437
interfacedcl: new_name indcl. (239)
. reduce 239 (src line 1652)
. reduce 239 (src line 1653)
state 438
......@@ -7481,7 +7481,7 @@ state 438
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -7510,25 +7510,25 @@ state 439
state 440
import: LIMPORT '(' import_stmt_list osemi ')'. (9)
. reduce 9 (src line 170)
. reduce 9 (src line 171)
state 441
import_stmt_list: import_stmt_list ';' import_stmt. (14)
. reduce 14 (src line 222)
. reduce 14 (src line 223)
state 442
hidden_import: LIMPORT LNAME LLITERAL ';'. (304)
. reduce 304 (src line 1944)
. reduce 304 (src line 1945)
state 443
hidden_import: LVAR hidden_pkg_importsym hidden_type ';'. (305)
. reduce 305 (src line 1949)
. reduce 305 (src line 1950)
state 444
......@@ -7587,7 +7587,7 @@ state 447
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 298 (src line 1923)
. reduce 298 (src line 1924)
sym goto 546
hidden_importsym goto 11
......@@ -7610,7 +7610,7 @@ state 448
'[' shift 342
'?' shift 12
'@' shift 13
. reduce 300 (src line 1929)
. reduce 300 (src line 1930)
sym goto 550
hidden_importsym goto 553
......@@ -7625,13 +7625,13 @@ state 448
state 449
hidden_type_misc: '*' hidden_type. (324)
. reduce 324 (src line 2048)
. reduce 324 (src line 2049)
state 450
hidden_type_misc: LCHAN hidden_type_non_recv_chan. (325)
. reduce 325 (src line 2052)
. reduce 325 (src line 2053)
state 451
......@@ -7666,13 +7666,13 @@ state 452
state 453
hidden_type_non_recv_chan: hidden_type_misc. (315)
. reduce 315 (src line 2008)
. reduce 315 (src line 2009)
state 454
hidden_type_non_recv_chan: hidden_type_func. (316)
. reduce 316 (src line 2010)
. reduce 316 (src line 2011)
state 455
......@@ -7703,7 +7703,7 @@ state 456
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 296 (src line 1917)
. reduce 296 (src line 1918)
sym goto 357
hidden_importsym goto 11
......@@ -7721,7 +7721,7 @@ state 457
state 458
hidden_constant: hidden_literal. (342)
. reduce 342 (src line 2195)
. reduce 342 (src line 2196)
state 459
......@@ -7741,7 +7741,7 @@ state 459
state 460
hidden_literal: LLITERAL. (339)
. reduce 339 (src line 2164)
. reduce 339 (src line 2165)
state 461
......@@ -7754,7 +7754,7 @@ state 461
state 462
hidden_literal: sym. (341)
. reduce 341 (src line 2187)
. reduce 341 (src line 2188)
state 463
......@@ -7776,13 +7776,13 @@ state 463
state 464
hidden_import: LTYPE hidden_pkgtype hidden_type ';'. (308)
. reduce 308 (src line 1961)
. reduce 308 (src line 1962)
state 465
hidden_import: LFUNC hidden_fndcl fnbody ';'. (309)
. reduce 309 (src line 1965)
. reduce 309 (src line 1966)
state 466
......@@ -7797,7 +7797,7 @@ state 467
hidden_funarg_list: hidden_funarg_list.',' hidden_funarg
',' shift 469
. reduce 297 (src line 1921)
. reduce 297 (src line 1922)
state 468
......@@ -7828,7 +7828,7 @@ state 470
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 565
......@@ -7856,13 +7856,13 @@ state 471
state 472
common_dcl: LVAR '(' vardcl_list osemi ')'. (29)
. reduce 29 (src line 310)
. reduce 29 (src line 311)
state 473
vardcl_list: vardcl_list ';' vardcl. (221)
. reduce 221 (src line 1525)
. reduce 221 (src line 1526)
state 474
......@@ -7870,19 +7870,19 @@ state 474
expr_list: expr_list.',' expr
',' shift 155
. reduce 40 (src line 365)
. reduce 40 (src line 366)
state 475
ntype: '(' ntype ')'. (171)
. reduce 171 (src line 1196)
. reduce 171 (src line 1197)
state 476
common_dcl: lconst '(' constdcl osemi ')'. (32)
. reduce 32 (src line 324)
. reduce 32 (src line 325)
state 477
......@@ -7891,20 +7891,20 @@ state 477
osemi: . (286)
';' shift 568
. reduce 286 (src line 1893)
. reduce 286 (src line 1894)
osemi goto 567
state 478
constdcl_list: constdcl1. (222)
. reduce 222 (src line 1530)
. reduce 222 (src line 1531)
state 479
constdcl1: constdcl. (44)
. reduce 44 (src line 384)
. reduce 44 (src line 385)
state 480
......@@ -7928,7 +7928,7 @@ state 480
'?' shift 12
'@' shift 13
',' shift 225
. reduce 46 (src line 390)
. reduce 46 (src line 391)
sym goto 123
ntype goto 569
......@@ -7947,25 +7947,25 @@ state 481
expr_list: expr_list.',' expr
',' shift 155
. reduce 42 (src line 374)
. reduce 42 (src line 375)
state 482
common_dcl: LTYPE '(' typedcl_list osemi ')'. (36)
. reduce 36 (src line 345)
. reduce 36 (src line 346)
state 483
typedcl_list: typedcl_list ';' typedcl. (225)
. reduce 225 (src line 1542)
. reduce 225 (src line 1543)
state 484
fnbody: '{' stmt_list '}'. (211)
. reduce 211 (src line 1461)
. reduce 211 (src line 1462)
state 485
......@@ -7973,19 +7973,19 @@ state 485
fndcl: '(' oarg_type_list_ocomma ')' sym.'(' oarg_type_list_ocomma ')' fnres
'(' shift 570
. reduce 162 (src line 1158)
. reduce 162 (src line 1159)
state 486
fntype: LFUNC '(' oarg_type_list_ocomma ')' fnres. (209)
. reduce 209 (src line 1448)
. reduce 209 (src line 1449)
state 487
fnres: fnret_type. (213)
. reduce 213 (src line 1474)
. reduce 213 (src line 1475)
state 488
......@@ -8005,7 +8005,7 @@ state 488
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -8027,37 +8027,37 @@ state 488
state 489
fnret_type: recvchantype. (184)
. reduce 184 (src line 1227)
. reduce 184 (src line 1228)
state 490
fnret_type: fntype. (185)
. reduce 185 (src line 1229)
. reduce 185 (src line 1230)
state 491
fnret_type: othertype. (186)
. reduce 186 (src line 1230)
. reduce 186 (src line 1231)
state 492
fnret_type: ptrtype. (187)
. reduce 187 (src line 1231)
. reduce 187 (src line 1232)
state 493
fnret_type: dotname. (188)
. reduce 188 (src line 1232)
. reduce 188 (src line 1233)
state 494
arg_type_list: arg_type_list ',' arg_type. (248)
. reduce 248 (src line 1702)
. reduce 248 (src line 1703)
state 495
......@@ -8076,7 +8076,7 @@ state 495
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 212 (src line 1469)
. reduce 212 (src line 1470)
sym goto 123
dotname goto 493
......@@ -8107,7 +8107,7 @@ state 496
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 212 (src line 1469)
. reduce 212 (src line 1470)
sym goto 123
dotname goto 493
......@@ -8155,9 +8155,9 @@ state 497
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -8289,33 +8289,33 @@ state 501
switch_stmt: LSWITCH $$88 if_header $$89 LBODY.caseblock_list '}'
caseblock_list: . (63)
. reduce 63 (src line 590)
. reduce 63 (src line 591)
caseblock_list goto 577
state 502
if_header: osimple_stmt ';' osimple_stmt. (77)
. reduce 77 (src line 677)
. reduce 77 (src line 678)
state 503
caseblock_list: caseblock_list caseblock. (64)
. reduce 64 (src line 594)
. reduce 64 (src line 595)
state 504
select_stmt: LSELECT $$91 LBODY caseblock_list '}'. (92)
. reduce 92 (src line 782)
. reduce 92 (src line 783)
state 505
caseblock: case.$$61 stmt_list
$$61: . (61)
. reduce 61 (src line 559)
. reduce 61 (src line 560)
$$61 goto 578
......@@ -8377,14 +8377,14 @@ state 508
if_stmt: LIF $$78 if_header $$79 loop_body.$$80 elseif_list else
$$80: . (80)
. reduce 80 (src line 699)
. reduce 80 (src line 700)
$$80 goto 581
state 509
pseudocall: pexpr '(' expr_or_type_list ocomma ')'. (124)
. reduce 124 (src line 929)
. reduce 124 (src line 930)
state 510
......@@ -8397,19 +8397,19 @@ state 510
state 511
expr_or_type_list: expr_or_type_list ',' expr_or_type. (279)
. reduce 279 (src line 1855)
. reduce 279 (src line 1856)
state 512
pexpr_no_paren: pexpr '.' '(' expr_or_type ')'. (129)
. reduce 129 (src line 958)
. reduce 129 (src line 959)
state 513
pexpr_no_paren: pexpr '.' '(' LTYPE ')'. (130)
. reduce 130 (src line 962)
. reduce 130 (src line 963)
state 514
......@@ -8424,7 +8424,7 @@ state 514
state 515
pexpr_no_paren: pexpr_no_paren '{' start_complit braced_keyval_list '}'. (137)
. reduce 137 (src line 998)
. reduce 137 (src line 999)
state 516
......@@ -8452,7 +8452,7 @@ state 516
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 289 (src line 1897)
. reduce 289 (src line 1898)
sym goto 123
expr goto 402
......@@ -8476,7 +8476,7 @@ state 516
state 517
braced_keyval_list: keyval_list ocomma. (285)
. reduce 285 (src line 1885)
. reduce 285 (src line 1886)
state 518
......@@ -8546,7 +8546,7 @@ state 519
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 284 (src line 1881)
. reduce 284 (src line 1882)
sym goto 123
expr goto 402
......@@ -8593,7 +8593,7 @@ state 520
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 284 (src line 1881)
. reduce 284 (src line 1882)
sym goto 123
expr goto 402
......@@ -8627,19 +8627,19 @@ state 521
state 522
pexpr_no_paren: convtype '(' expr ocomma ')'. (135)
. reduce 135 (src line 985)
. reduce 135 (src line 986)
state 523
pexpr_no_paren: comptype lbrace start_complit braced_keyval_list '}'. (136)
. reduce 136 (src line 991)
. reduce 136 (src line 992)
state 524
stmt_list: stmt_list ';' stmt. (271)
. reduce 271 (src line 1812)
. reduce 271 (src line 1813)
state 525
......@@ -8654,31 +8654,31 @@ state 525
state 526
othertype: LMAP '[' ntype ']' ntype. (195)
. reduce 195 (src line 1268)
. reduce 195 (src line 1269)
state 527
structtype: LSTRUCT lbrace structdcl_list osemi '}'. (200)
. reduce 200 (src line 1288)
. reduce 200 (src line 1289)
state 528
structdcl_list: structdcl_list ';' structdcl. (227)
. reduce 227 (src line 1549)
. reduce 227 (src line 1550)
state 529
structdcl: new_name_list ntype oliteral. (230)
. reduce 230 (src line 1564)
. reduce 230 (src line 1565)
state 530
new_name_list: new_name_list ',' new_name. (273)
. reduce 273 (src line 1825)
. reduce 273 (src line 1826)
state 531
......@@ -8686,7 +8686,7 @@ state 531
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 594
......@@ -8700,7 +8700,7 @@ state 532
state 533
structdcl: '*' embed oliteral. (233)
. reduce 233 (src line 1600)
. reduce 233 (src line 1601)
state 534
......@@ -8713,19 +8713,19 @@ state 534
state 535
packname: LNAME '.' sym. (237)
. reduce 237 (src line 1632)
. reduce 237 (src line 1633)
state 536
interfacetype: LINTERFACE lbrace interfacedcl_list osemi '}'. (202)
. reduce 202 (src line 1301)
. reduce 202 (src line 1302)
state 537
interfacedcl_list: interfacedcl_list ';' interfacedcl. (229)
. reduce 229 (src line 1559)
. reduce 229 (src line 1560)
state 538
......@@ -8738,13 +8738,13 @@ state 538
state 539
interfacedcl: '(' packname ')'. (241)
. reduce 241 (src line 1662)
. reduce 241 (src line 1663)
state 540
hidden_type_misc: '[' ']' hidden_type. (319)
. reduce 319 (src line 2028)
. reduce 319 (src line 2029)
state 541
......@@ -8787,13 +8787,13 @@ state 544
hidden_structdcl_list: hidden_structdcl_list.';' hidden_structdcl
';' shift 601
. reduce 299 (src line 1927)
. reduce 299 (src line 1928)
state 545
hidden_structdcl_list: hidden_structdcl. (348)
. reduce 348 (src line 2222)
. reduce 348 (src line 2223)
state 546
......@@ -8829,13 +8829,13 @@ state 548
hidden_interfacedcl_list: hidden_interfacedcl_list.';' hidden_interfacedcl
';' shift 604
. reduce 301 (src line 1933)
. reduce 301 (src line 1934)
state 549
hidden_interfacedcl_list: hidden_interfacedcl. (350)
. reduce 350 (src line 2232)
. reduce 350 (src line 2233)
state 550
......@@ -8848,23 +8848,23 @@ state 550
state 551
hidden_interfacedcl: hidden_type. (334)
. reduce 334 (src line 2139)
. reduce 334 (src line 2140)
state 552
sym: LNAME. (157)
hidden_type_misc: LNAME. (318)
'(' reduce 157 (src line 1113)
. reduce 318 (src line 2017)
'(' reduce 157 (src line 1114)
. reduce 318 (src line 2018)
state 553
sym: hidden_importsym. (158)
hidden_type_misc: hidden_importsym. (317)
'(' reduce 158 (src line 1122)
. reduce 317 (src line 2012)
'(' reduce 158 (src line 1123)
. reduce 317 (src line 2013)
state 554
......@@ -8877,13 +8877,13 @@ state 554
state 555
hidden_type_misc: LCHAN LCOMM hidden_type. (327)
. reduce 327 (src line 2064)
. reduce 327 (src line 2065)
state 556
hidden_type_recv_chan: LCOMM LCHAN hidden_type. (328)
. reduce 328 (src line 2071)
. reduce 328 (src line 2072)
state 557
......@@ -8896,7 +8896,7 @@ state 557
state 558
hidden_import: LCONST hidden_pkg_importsym '=' hidden_constant ';'. (306)
. reduce 306 (src line 1953)
. reduce 306 (src line 1954)
state 559
......@@ -8909,7 +8909,7 @@ state 559
state 560
hidden_literal: '-' LLITERAL. (340)
. reduce 340 (src line 2169)
. reduce 340 (src line 2170)
state 561
......@@ -8934,7 +8934,7 @@ state 562
'(' shift 612
'[' shift 342
'@' shift 13
. reduce 335 (src line 2144)
. reduce 335 (src line 2145)
hidden_importsym goto 340
hidden_funres goto 611
......@@ -8954,13 +8954,13 @@ state 563
state 564
hidden_funarg_list: hidden_funarg_list ',' hidden_funarg. (347)
. reduce 347 (src line 2217)
. reduce 347 (src line 2218)
state 565
hidden_funarg: sym hidden_type oliteral. (330)
. reduce 330 (src line 2085)
. reduce 330 (src line 2086)
state 566
......@@ -8968,7 +8968,7 @@ state 566
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 615
......@@ -8986,7 +8986,7 @@ state 568
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 287 (src line 1894)
. reduce 287 (src line 1895)
sym goto 105
dcl_name goto 104
......@@ -9000,7 +9000,7 @@ state 569
constdcl1: dcl_name_list ntype. (45)
'=' shift 367
. reduce 45 (src line 386)
. reduce 45 (src line 387)
state 570
......@@ -9020,7 +9020,7 @@ state 570
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 249 (src line 1707)
. reduce 249 (src line 1708)
sym goto 247
ntype goto 249
......@@ -9049,7 +9049,7 @@ state 571
state 572
fndcl: sym '(' oarg_type_list_ocomma ')' fnres. (205)
. reduce 205 (src line 1336)
. reduce 205 (src line 1337)
state 573
......@@ -9084,7 +9084,7 @@ state 574
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -9149,7 +9149,7 @@ state 575
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 67 (src line 610)
. reduce 67 (src line 611)
state 576
......@@ -9195,7 +9195,7 @@ state 576
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 68 (src line 617)
. reduce 68 (src line 618)
state 577
......@@ -9217,11 +9217,11 @@ state 578
error shift 307
LLITERAL shift 68
LBREAK shift 41
LCASE reduce 251 (src line 1719)
LCASE reduce 251 (src line 1720)
LCHAN shift 78
LCONST shift 47
LCONTINUE shift 42
LDEFAULT reduce 251 (src line 1719)
LDEFAULT reduce 251 (src line 1720)
LDEFER shift 44
LFALL shift 40
LFOR shift 50
......@@ -9245,9 +9245,9 @@ state 578
'*' shift 58
'&' shift 59
'(' shift 67
';' reduce 251 (src line 1719)
';' reduce 251 (src line 1720)
'{' shift 308
'}' reduce 251 (src line 1719)
'}' reduce 251 (src line 1720)
'!' shift 62
'~' shift 63
'[' shift 77
......@@ -9302,27 +9302,27 @@ state 579
state 580
case: LDEFAULT ':'. (58)
. reduce 58 (src line 524)
. reduce 58 (src line 525)
state 581
if_stmt: LIF $$78 if_header $$79 loop_body $$80.elseif_list else
elseif_list: . (84)
. reduce 84 (src line 734)
. reduce 84 (src line 735)
elseif_list goto 628
state 582
pseudocall: pexpr '(' expr_or_type_list LDDD ocomma ')'. (125)
. reduce 125 (src line 934)
. reduce 125 (src line 935)
state 583
pexpr_no_paren: pexpr '[' oexpr ':' oexpr ']'. (132)
. reduce 132 (src line 970)
. reduce 132 (src line 971)
state 584
......@@ -9348,7 +9348,7 @@ state 584
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 290 (src line 1899)
. reduce 290 (src line 1900)
sym goto 123
expr goto 188
......@@ -9371,19 +9371,19 @@ state 584
state 585
keyval_list: keyval_list ',' keyval. (282)
. reduce 282 (src line 1872)
. reduce 282 (src line 1873)
state 586
keyval_list: keyval_list ',' bare_complitexpr. (283)
. reduce 283 (src line 1876)
. reduce 283 (src line 1877)
state 587
keyval: expr ':' complitexpr. (141)
. reduce 141 (src line 1020)
. reduce 141 (src line 1021)
state 588
......@@ -9429,14 +9429,14 @@ state 588
'/' shift 146
'%' shift 147
'&' shift 148
. reduce 144 (src line 1046)
. reduce 144 (src line 1047)
state 589
complitexpr: '{'.start_complit braced_keyval_list '}'
start_complit: . (140)
. reduce 140 (src line 1013)
. reduce 140 (src line 1014)
start_complit goto 630
......@@ -9458,22 +9458,22 @@ state 592
ntype: '(' ntype ')'. (171)
non_recvchantype: '(' ntype ')'. (180)
LBODY reduce 180 (src line 1215)
'(' reduce 180 (src line 1215)
'{' reduce 180 (src line 1215)
. reduce 171 (src line 1196)
LBODY reduce 180 (src line 1216)
'(' reduce 180 (src line 1216)
'{' reduce 180 (src line 1216)
. reduce 171 (src line 1197)
state 593
compound_stmt: '{' $$59 stmt_list '}'. (60)
. reduce 60 (src line 549)
. reduce 60 (src line 550)
state 594
structdcl: '(' embed ')' oliteral. (232)
. reduce 232 (src line 1594)
. reduce 232 (src line 1595)
state 595
......@@ -9481,7 +9481,7 @@ state 595
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 633
......@@ -9490,7 +9490,7 @@ state 596
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 634
......@@ -9510,7 +9510,7 @@ state 597
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 212 (src line 1469)
. reduce 212 (src line 1470)
sym goto 123
dotname goto 493
......@@ -9528,7 +9528,7 @@ state 597
state 598
hidden_type_misc: '[' LLITERAL ']' hidden_type. (320)
. reduce 320 (src line 2032)
. reduce 320 (src line 2033)
state 599
......@@ -9555,7 +9555,7 @@ state 599
state 600
hidden_type_misc: LSTRUCT '{' ohidden_structdcl_list '}'. (322)
. reduce 322 (src line 2040)
. reduce 322 (src line 2041)
state 601
......@@ -9575,14 +9575,14 @@ state 602
oliteral: . (302)
LLITERAL shift 428
. reduce 302 (src line 1935)
. reduce 302 (src line 1936)
oliteral goto 638
state 603
hidden_type_misc: LINTERFACE '{' ohidden_interfacedcl_list '}'. (323)
. reduce 323 (src line 2044)
. reduce 323 (src line 2045)
state 604
......@@ -9616,7 +9616,7 @@ state 605
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 296 (src line 1917)
. reduce 296 (src line 1918)
sym goto 357
hidden_importsym goto 11
......@@ -9627,7 +9627,7 @@ state 605
state 606
hidden_type_misc: LCHAN '(' hidden_type_recv_chan ')'. (326)
. reduce 326 (src line 2058)
. reduce 326 (src line 2059)
state 607
......@@ -9645,7 +9645,7 @@ state 607
'(' shift 612
'[' shift 342
'@' shift 13
. reduce 335 (src line 2144)
. reduce 335 (src line 2145)
hidden_importsym goto 340
hidden_funres goto 611
......@@ -9672,19 +9672,19 @@ state 608
state 609
hidden_import: LCONST hidden_pkg_importsym hidden_type '=' hidden_constant ';'. (307)
. reduce 307 (src line 1957)
. reduce 307 (src line 1958)
state 610
hidden_fndcl: hidden_pkg_importsym '(' ohidden_funarg_list ')' ohidden_funres. (207)
. reduce 207 (src line 1405)
. reduce 207 (src line 1406)
state 611
ohidden_funres: hidden_funres. (336)
. reduce 336 (src line 2148)
. reduce 336 (src line 2149)
state 612
......@@ -9694,7 +9694,7 @@ state 612
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 296 (src line 1917)
. reduce 296 (src line 1918)
sym goto 357
hidden_importsym goto 11
......@@ -9705,7 +9705,7 @@ state 612
state 613
hidden_funres: hidden_type. (338)
. reduce 338 (src line 2155)
. reduce 338 (src line 2156)
state 614
......@@ -9715,7 +9715,7 @@ state 614
LNAME shift 10
'?' shift 12
'@' shift 13
. reduce 296 (src line 1917)
. reduce 296 (src line 1918)
sym goto 357
hidden_importsym goto 11
......@@ -9726,19 +9726,19 @@ state 614
state 615
hidden_funarg: sym LDDD hidden_type oliteral. (331)
. reduce 331 (src line 2094)
. reduce 331 (src line 2095)
state 616
common_dcl: lconst '(' constdcl ';' constdcl_list osemi ')'. (33)
. reduce 33 (src line 330)
. reduce 33 (src line 331)
state 617
constdcl_list: constdcl_list ';' constdcl1. (223)
. reduce 223 (src line 1532)
. reduce 223 (src line 1533)
state 618
......@@ -9751,25 +9751,25 @@ state 618
state 619
fnres: '(' oarg_type_list_ocomma ')'. (214)
. reduce 214 (src line 1478)
. reduce 214 (src line 1479)
state 620
loop_body: LBODY $$65 stmt_list '}'. (66)
. reduce 66 (src line 604)
. reduce 66 (src line 605)
state 621
for_header: osimple_stmt ';' osimple_stmt ';' osimple_stmt. (70)
. reduce 70 (src line 630)
. reduce 70 (src line 631)
state 622
switch_stmt: LSWITCH $$88 if_header $$89 LBODY caseblock_list '}'. (90)
. reduce 90 (src line 768)
. reduce 90 (src line 769)
state 623
......@@ -9777,13 +9777,13 @@ state 623
stmt_list: stmt_list.';' stmt
';' shift 416
. reduce 62 (src line 571)
. reduce 62 (src line 572)
state 624
case: LCASE expr_or_type_list ':'. (55)
. reduce 55 (src line 473)
. reduce 55 (src line 474)
state 625
......@@ -9918,7 +9918,7 @@ state 628
else: . (86)
LELSE shift 650
. reduce 86 (src line 743)
. reduce 86 (src line 744)
elseif goto 649
else goto 648
......@@ -9954,7 +9954,7 @@ state 630
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 284 (src line 1881)
. reduce 284 (src line 1882)
sym goto 123
expr goto 402
......@@ -9980,55 +9980,55 @@ state 630
state 631
bare_complitexpr: '{' start_complit braced_keyval_list '}'. (143)
. reduce 143 (src line 1040)
. reduce 143 (src line 1041)
state 632
pexpr_no_paren: '(' expr_or_type ')' '{' start_complit braced_keyval_list '}'. (138)
. reduce 138 (src line 1004)
. reduce 138 (src line 1005)
state 633
structdcl: '(' '*' embed ')' oliteral. (234)
. reduce 234 (src line 1606)
. reduce 234 (src line 1607)
state 634
structdcl: '*' '(' embed ')' oliteral. (235)
. reduce 235 (src line 1613)
. reduce 235 (src line 1614)
state 635
indcl: '(' oarg_type_list_ocomma ')' fnres. (242)
. reduce 242 (src line 1668)
. reduce 242 (src line 1669)
state 636
hidden_type_misc: LMAP '[' hidden_type ']' hidden_type. (321)
. reduce 321 (src line 2036)
. reduce 321 (src line 2037)
state 637
hidden_structdcl_list: hidden_structdcl_list ';' hidden_structdcl. (349)
. reduce 349 (src line 2227)
. reduce 349 (src line 2228)
state 638
hidden_structdcl: sym hidden_type oliteral. (332)
. reduce 332 (src line 2110)
. reduce 332 (src line 2111)
state 639
hidden_interfacedcl_list: hidden_interfacedcl_list ';' hidden_interfacedcl. (351)
. reduce 351 (src line 2237)
. reduce 351 (src line 2238)
state 640
......@@ -10041,7 +10041,7 @@ state 640
state 641
hidden_type_func: LFUNC '(' ohidden_funarg_list ')' ohidden_funres. (329)
. reduce 329 (src line 2079)
. reduce 329 (src line 2080)
state 642
......@@ -10081,7 +10081,7 @@ state 645
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 212 (src line 1469)
. reduce 212 (src line 1470)
sym goto 123
dotname goto 493
......@@ -10193,13 +10193,13 @@ state 647
state 648
if_stmt: LIF $$78 if_header $$79 loop_body $$80 elseif_list else. (81)
. reduce 81 (src line 703)
. reduce 81 (src line 704)
state 649
elseif_list: elseif_list elseif. (85)
. reduce 85 (src line 738)
. reduce 85 (src line 739)
state 650
......@@ -10215,7 +10215,7 @@ state 650
state 651
pexpr_no_paren: pexpr '[' oexpr ':' oexpr ':' oexpr ']'. (133)
. reduce 133 (src line 974)
. reduce 133 (src line 975)
state 652
......@@ -10240,7 +10240,7 @@ state 653
'(' shift 612
'[' shift 342
'@' shift 13
. reduce 335 (src line 2144)
. reduce 335 (src line 2145)
hidden_importsym goto 340
hidden_funres goto 611
......@@ -10253,13 +10253,13 @@ state 653
state 654
hidden_constant: '(' hidden_literal '+' hidden_literal ')'. (343)
. reduce 343 (src line 2197)
. reduce 343 (src line 2198)
state 655
hidden_funres: '(' ohidden_funarg_list ')'. (337)
. reduce 337 (src line 2150)
. reduce 337 (src line 2151)
state 656
......@@ -10277,7 +10277,7 @@ state 656
'(' shift 612
'[' shift 342
'@' shift 13
. reduce 335 (src line 2144)
. reduce 335 (src line 2145)
hidden_importsym goto 340
hidden_funres goto 611
......@@ -10290,51 +10290,51 @@ state 656
state 657
fndcl: '(' oarg_type_list_ocomma ')' sym '(' oarg_type_list_ocomma ')' fnres. (206)
. reduce 206 (src line 1368)
. reduce 206 (src line 1369)
state 658
case: LCASE expr_or_type_list '=' expr ':'. (56)
. reduce 56 (src line 497)
. reduce 56 (src line 498)
state 659
case: LCASE expr_or_type_list LCOLAS expr ':'. (57)
. reduce 57 (src line 515)
. reduce 57 (src line 516)
state 660
elseif: LELSE LIF.$$82 if_header loop_body
$$82: . (82)
. reduce 82 (src line 720)
. reduce 82 (src line 721)
$$82 goto 665
state 661
else: LELSE compound_stmt. (87)
. reduce 87 (src line 747)
. reduce 87 (src line 748)
state 662
complitexpr: '{' start_complit braced_keyval_list '}'. (145)
. reduce 145 (src line 1048)
. reduce 145 (src line 1049)
state 663
hidden_interfacedcl: sym '(' ohidden_funarg_list ')' ohidden_funres. (333)
. reduce 333 (src line 2134)
. reduce 333 (src line 2135)
state 664
hidden_fndcl: '(' hidden_funarg_list ')' sym '(' ohidden_funarg_list ')' ohidden_funres. (208)
. reduce 208 (src line 1431)
. reduce 208 (src line 1432)
state 665
......@@ -10360,7 +10360,7 @@ state 665
'[' shift 77
'?' shift 12
'@' shift 13
. reduce 294 (src line 1911)
. reduce 294 (src line 1912)
sym goto 123
expr goto 48
......@@ -10394,7 +10394,7 @@ state 666
state 667
elseif: LELSE LIF $$82 if_header loop_body. (83)
. reduce 83 (src line 725)
. reduce 83 (src line 726)
76 terminals, 142 nonterminals
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment