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