]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile: remove unnecessary FuncType cloning
authorMatthew Dempsky <mdempsky@google.com>
Tue, 6 Sep 2016 21:26:56 +0000 (14:26 -0700)
committerMatthew Dempsky <mdempsky@google.com>
Thu, 8 Sep 2016 05:38:46 +0000 (05:38 +0000)
Since FuncTypes are represented as structs rather than linking the
parameter lists together, we no longer need to worry about duplicating
the parameter lists.

Change-Id: I3767aa3cd1cbeddfb80a6eef6b42290dc2ac14ae
Reviewed-on: https://go-review.googlesource.com/28574
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
src/cmd/compile/internal/gc/type.go

index ac038f465d062a58bac58d2bb771c1288068e9d8..a90864fdab276cde369aca27334de4059a7a9bbd 100644 (file)
@@ -560,14 +560,6 @@ func substAny(t *Type, types *[]*Type) *Type {
                params := substAny(t.Params(), types)
                results := substAny(t.Results(), types)
                if recvs != t.Recvs() || params != t.Params() || results != t.Results() {
-                       // Note that this code has to be aware of the
-                       // representation underlying Recvs/Results/Params.
-                       if recvs == t.Recvs() {
-                               recvs = recvs.Copy()
-                       }
-                       if results == t.Results() {
-                               results = results.Copy()
-                       }
                        t = t.Copy()
                        t.FuncType().Receiver = recvs
                        t.FuncType().Results = results