cmd/compile/internal/gc: use slice instead of NodeList for Label.Use

Change-Id: I021c95df24edbff24ff2922769ef2b2acd47016a
Reviewed-on: https://go-review.googlesource.com/14081
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Dave Cheney <dave@cheney.net>
This commit is contained in:
Håvard Haugen 2015-08-30 22:24:53 +02:00 committed by Brad Fitzpatrick
parent e8da46f6db
commit dd42eff8fe
2 changed files with 6 additions and 8 deletions

View file

@ -135,7 +135,7 @@ func newlab(n *Node) *Label {
lab.Def = n
}
} else {
lab.Use = list(lab.Use, n)
lab.Use = append(lab.Use, n)
}
return lab
@ -986,12 +986,10 @@ func CgenTemp(n *Node) *Node {
}
func checklabels() {
var l *NodeList
for lab := labellist; lab != nil; lab = lab.Link {
if lab.Def == nil {
for l = lab.Use; l != nil; l = l.Next {
yyerrorl(int(l.N.Lineno), "label %v not defined", lab.Sym)
for _, n := range lab.Use {
yyerrorl(int(n.Lineno), "label %v not defined", lab.Sym)
}
continue
}
@ -1004,8 +1002,8 @@ func checklabels() {
if lab.Gotopc != nil {
Fatalf("label %v never resolved", lab.Sym)
}
for l = lab.Use; l != nil; l = l.Next {
checkgoto(l.N, lab.Def)
for _, n := range lab.Use {
checkgoto(n, lab.Def)
}
}
}