Commit d9bb6939 authored by Matthew Dempsky's avatar Matthew Dempsky

cmd/compile: sort interface methods in tointerface0

Might as well sort them while they're still in a slice.

Change-Id: I40c25ddc5c054dcb4da2aeefa79947967609d599
Reviewed-on: https://go-review.googlesource.com/20591
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
parent 53984e5b
...@@ -7,6 +7,7 @@ package gc ...@@ -7,6 +7,7 @@ package gc
import ( import (
"cmd/internal/obj" "cmd/internal/obj"
"fmt" "fmt"
"sort"
"strings" "strings"
) )
...@@ -975,6 +976,7 @@ func tointerface0(t *Type, l []*Node) *Type { ...@@ -975,6 +976,7 @@ func tointerface0(t *Type, l []*Node) *Type {
fields = append(fields, f) fields = append(fields, f)
} }
} }
sort.Sort(methcmp(fields))
t.SetFields(fields) t.SetFields(fields)
for f, it := IterFields(t); f != nil && !t.Broke; f = it.Next() { for f, it := IterFields(t); f != nil && !t.Broke; f = it.Next() {
...@@ -984,7 +986,6 @@ func tointerface0(t *Type, l []*Node) *Type { ...@@ -984,7 +986,6 @@ func tointerface0(t *Type, l []*Node) *Type {
} }
checkdupfields("method", t) checkdupfields("method", t)
t = sortinter(t)
checkwidth(t) checkwidth(t)
return t return t
......
...@@ -416,13 +416,6 @@ func (x methcmp) Less(i, j int) bool { ...@@ -416,13 +416,6 @@ func (x methcmp) Less(i, j int) bool {
return false return false
} }
func sortinter(t *Type) *Type {
s := t.FieldSlice()
sort.Sort(methcmp(s))
t.SetFields(s)
return t
}
func Nodintconst(v int64) *Node { func Nodintconst(v int64) *Node {
c := Nod(OLITERAL, nil, nil) c := Nod(OLITERAL, nil, nil)
c.Addable = true c.Addable = true
......
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