diff options
Diffstat (limited to 'test/fixedbugs/bug099.go')
-rw-r--r-- | test/fixedbugs/bug099.go | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/test/fixedbugs/bug099.go b/test/fixedbugs/bug099.go deleted file mode 100644 index f76f0e873..000000000 --- a/test/fixedbugs/bug099.go +++ /dev/null @@ -1,37 +0,0 @@ -// $G $D/$F.go && $L $F.$A && ./$A.out || echo BUG should not crash - -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package main - -// Interface -type I interface { F() int } - -// Implements interface -type S struct { } -func (s *S) F() int { return 1 } - -// Allocates S but returns I -// Arg is unused but important: -// if you take it out (and the 0s below) -// then the bug goes away. -func NewI(i int) I { - return new(S) -} - -// Uses interface method. -func Use(x I) { - x.F() -} - -func main() { - i := NewI(0); - Use(i); - - // Again, without temporary - // Crashes because x.F is 0. - Use(NewI(0)); -} - |