2014-11-06 15:14:08 -05:00
|
|
|
// skip
|
2012-09-23 13:16:14 -04:00
|
|
|
|
2016-04-10 14:32:26 -07:00
|
|
|
// Copyright 2012 The Go Authors. All rights reserved.
|
2012-02-07 16:46:33 -05:00
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
2012-02-23 18:47:26 +11:00
|
|
|
// Test the -X facility of the gc linker (6l etc.).
|
2014-11-06 15:14:08 -05:00
|
|
|
// This test is run by linkx_run.go.
|
2012-02-23 18:47:26 +11:00
|
|
|
|
2012-02-07 16:46:33 -05:00
|
|
|
package main
|
|
|
|
|
2015-05-21 14:35:02 -04:00
|
|
|
import "fmt"
|
|
|
|
|
2012-02-07 16:46:33 -05:00
|
|
|
var tbd string
|
2014-09-15 18:16:45 -07:00
|
|
|
var overwrite string = "dibs"
|
2012-02-07 16:46:33 -05:00
|
|
|
|
2019-10-03 10:49:28 -07:00
|
|
|
var tbdcopy = tbd
|
|
|
|
var overwritecopy = overwrite
|
|
|
|
var arraycopy = [2]string{tbd, overwrite}
|
|
|
|
|
2015-06-29 13:03:11 -04:00
|
|
|
var b bool
|
|
|
|
var x int
|
|
|
|
|
2012-02-07 16:46:33 -05:00
|
|
|
func main() {
|
2015-05-21 14:35:02 -04:00
|
|
|
fmt.Println(tbd)
|
2019-10-03 10:49:28 -07:00
|
|
|
fmt.Println(tbdcopy)
|
|
|
|
fmt.Println(arraycopy[0])
|
|
|
|
|
2015-05-21 14:35:02 -04:00
|
|
|
fmt.Println(overwrite)
|
2019-10-03 10:49:28 -07:00
|
|
|
fmt.Println(overwritecopy)
|
|
|
|
fmt.Println(arraycopy[1])
|
2019-10-09 10:22:20 -04:00
|
|
|
|
|
|
|
// Check non-string symbols are not overwritten.
|
|
|
|
// This also make them used.
|
|
|
|
if b || x != 0 {
|
|
|
|
panic("b or x overwritten")
|
|
|
|
}
|
2012-02-07 16:46:33 -05:00
|
|
|
}
|