cmd/compile: run escape analysis after method wrapper generation

Also modified test/run.go to ignore messages prefixed <autogenerated>
because those cannot be described with "// ERROR ...", and backed out
patch from issue #9537 because it is no longer necessary.  The reasons
described in the 9537 discussion for why escape analysis cannot run
late no longer hold, happily.

Fixes #11053.

Change-Id: Icb14eccdf2e8cde3d0f8fb8a216b765400a96385
Reviewed-on: https://go-review.googlesource.com/11088
Reviewed-by: Russ Cox <rsc@golang.org>
Run-TryBot: David Chase <drchase@google.com>
This commit is contained in:
David Chase 2015-06-16 18:28:01 -04:00
parent 6428a8b437
commit 5be61b18d4
8 changed files with 80 additions and 17 deletions

View file

@ -2494,15 +2494,8 @@ func genwrapper(rcvr *Type, method *Type, newnam *Sym, iface int) {
typecheck(&fn, Etop)
typechecklist(fn.Nbody, Etop)
// Set inl_nonlocal to whether we are calling a method on a
// type defined in a different package. Checked in inlvar.
if !methodrcvr.Local {
inl_nonlocal = 1
}
inlcalls(fn)
inl_nonlocal = 0
escAnalyze(list1(fn), false)
Curfn = nil
funccompile(fn)