Home | History | Annotate | Download | only in fixedbugs
      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