From: Russ Cox Date: Wed, 15 Jul 2015 04:11:26 +0000 (+0000) Subject: Revert "cmd/compile: define func value symbols at declaration" X-Git-Tag: go1.5beta2~55 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ea918ef535cfc2f0cbff5a63fa520fe90f15c1e4;p=gostls13.git Revert "cmd/compile: define func value symbols at declaration" This reverts commit 3b411bf1a1bb08d6868083981cecba8088dc7aea. Change-Id: I321a43fa378a43b3e4d7aa97e0222775640af64b Reviewed-on: https://go-review.googlesource.com/12205 Reviewed-by: Russ Cox --- diff --git a/src/cmd/compile/internal/gc/closure.go b/src/cmd/compile/internal/gc/closure.go index 65f77d9079..24af94c0cd 100644 --- a/src/cmd/compile/internal/gc/closure.go +++ b/src/cmd/compile/internal/gc/closure.go @@ -199,7 +199,6 @@ func makeclosure(func_ *Node) *Node { xfunc.Func.Nname.Name.Funcdepth = func_.Func.Depth xfunc.Func.Depth = func_.Func.Depth xfunc.Func.Endlineno = func_.Func.Endlineno - makefuncsym(xfunc.Func.Nname.Sym) xfunc.Nbody = func_.Nbody xfunc.Func.Dcl = concat(func_.Func.Dcl, xfunc.Func.Dcl) diff --git a/src/cmd/compile/internal/gc/dcl.go b/src/cmd/compile/internal/gc/dcl.go index 0cb04eead6..cba8e21705 100644 --- a/src/cmd/compile/internal/gc/dcl.go +++ b/src/cmd/compile/internal/gc/dcl.go @@ -585,10 +585,6 @@ func funchdr(n *Node) { Fatal("funchdr: dclcontext") } - if importpkg == nil && n.Func.Nname != nil { - makefuncsym(n.Func.Nname.Sym) - } - dclcontext = PAUTO markdcl() Funcdepth++ @@ -1493,16 +1489,12 @@ func funcsym(s *Sym) *Sym { } s1 := Pkglookup(s.Name+"·f", s.Pkg) + if s1.Def == nil { + s1.Def = newfuncname(s1) + s1.Def.Func.Shortname = newname(s) + funcsyms = list(funcsyms, s1.Def) + } s.Fsym = s1 - return s1 -} -func makefuncsym(s *Sym) { - if isblanksym(s) { - return - } - s1 := funcsym(s) - s1.Def = newfuncname(s1) - s1.Def.Func.Shortname = newname(s) - funcsyms = list(funcsyms, s1.Def) + return s1 }