Source file test/fixedbugs/issue5753.go
1 // run 2 3 // Copyright 2013 The Go Authors. All rights reserved. 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file. 6 7 // issue 5753: bad typecheck info causes escape analysis to 8 // not run on method thunks. 9 10 package main 11 12 type Thing struct{} 13 14 func (t *Thing) broken(s string) []string { 15 foo := [1]string{s} 16 return foo[:] 17 } 18 19 func main() { 20 t := &Thing{} 21 22 f := t.broken 23 s := f("foo") 24 _ = f("bar") 25 if s[0] != "foo" { 26 panic(`s[0] != "foo"`) 27 } 28 29 } 30