]> Cypherpunks.ru repositories - gostls13.git/blob - test/fixedbugs/bug483.go
all: make copyright headers consistent with one space after period
[gostls13.git] / test / fixedbugs / bug483.go
1 // run
2
3 // Copyright 2014 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 // Test for a garbage collection bug involving not
8 // marking x as having its address taken by &x[0]
9 // when x is an array value.
10
11 package main
12
13 import (
14         "bytes"
15         "fmt"
16         "runtime"
17 )
18
19 func main() {
20         var x = [4]struct{ x, y interface{} }{
21                 {"a", "b"},
22                 {"c", "d"},
23                 {"e", "f"},
24                 {"g", "h"},
25         }
26
27         var buf bytes.Buffer
28         for _, z := range x {
29                 runtime.GC()
30                 fmt.Fprintf(&buf, "%s %s ", z.x.(string), z.y.(string))
31         }
32
33         if buf.String() != "a b c d e f g h " {
34                 println("BUG wrong output\n", buf.String())
35         }
36 }