| // skip |
| |
| // Copyright 2012 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. |
| |
| // Test the -X facility of the gc linker (6l etc.). |
| // This test is run by linkx_run.go. |
| |
| package main |
| |
| import "fmt" |
| |
| var tbd string |
| var overwrite string = "dibs" |
| |
| var tbdcopy = tbd |
| var overwritecopy = overwrite |
| var arraycopy = [2]string{tbd, overwrite} |
| |
| var b bool |
| var x int |
| |
| func main() { |
| fmt.Println(tbd) |
| fmt.Println(tbdcopy) |
| fmt.Println(arraycopy[0]) |
| |
| fmt.Println(overwrite) |
| fmt.Println(overwritecopy) |
| fmt.Println(arraycopy[1]) |
| |
| // Check non-string symbols are not overwritten. |
| // This also make them used. |
| if b || x != 0 { |
| panic("b or x overwritten") |
| } |
| } |