Update prebuilts to go1.7rc1 ab/3043704
toolchain/go sha ffb9ee3a
Change-Id: I230dd018def6fd975e28add1eb70aae6c54ad5d7
diff --git a/test/fixedbugs/bug083.dir/bug0.go b/test/fixedbugs/bug083.dir/bug0.go
index e312256..2f59d81 100644
--- a/test/fixedbugs/bug083.dir/bug0.go
+++ b/test/fixedbugs/bug083.dir/bug0.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug083.dir/bug1.go b/test/fixedbugs/bug083.dir/bug1.go
index 486fe76..ea5bcfe 100644
--- a/test/fixedbugs/bug083.dir/bug1.go
+++ b/test/fixedbugs/bug083.dir/bug1.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug088.dir/bug0.go b/test/fixedbugs/bug088.dir/bug0.go
index af9d991..7a6e347 100644
--- a/test/fixedbugs/bug088.dir/bug0.go
+++ b/test/fixedbugs/bug088.dir/bug0.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug088.dir/bug1.go b/test/fixedbugs/bug088.dir/bug1.go
index cadf0e6..2568e37 100644
--- a/test/fixedbugs/bug088.dir/bug1.go
+++ b/test/fixedbugs/bug088.dir/bug1.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug106.dir/bug0.go b/test/fixedbugs/bug106.dir/bug0.go
index d9c26a0..7494c58 100644
--- a/test/fixedbugs/bug106.dir/bug0.go
+++ b/test/fixedbugs/bug106.dir/bug0.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug106.dir/bug1.go b/test/fixedbugs/bug106.dir/bug1.go
index 0f1d20e..eff0d36 100644
--- a/test/fixedbugs/bug106.dir/bug1.go
+++ b/test/fixedbugs/bug106.dir/bug1.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug108.go b/test/fixedbugs/bug108.go
index 9f2a27e..cfec4c9 100644
--- a/test/fixedbugs/bug108.go
+++ b/test/fixedbugs/bug108.go
@@ -6,6 +6,6 @@
package main
func f() {
- v := 1 << 1025; // ERROR "overflow|stupid shift"
+ v := 1 << 1025; // ERROR "overflow|shift count too large"
_ = v
}
diff --git a/test/fixedbugs/bug133.dir/bug0.go b/test/fixedbugs/bug133.dir/bug0.go
index 48cd104..19a2bfb 100644
--- a/test/fixedbugs/bug133.dir/bug0.go
+++ b/test/fixedbugs/bug133.dir/bug0.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug133.dir/bug1.go b/test/fixedbugs/bug133.dir/bug1.go
index 7562147..dd59b2f 100644
--- a/test/fixedbugs/bug133.dir/bug1.go
+++ b/test/fixedbugs/bug133.dir/bug1.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug133.dir/bug2.go b/test/fixedbugs/bug133.dir/bug2.go
index e531001..b6184c2 100644
--- a/test/fixedbugs/bug133.dir/bug2.go
+++ b/test/fixedbugs/bug133.dir/bug2.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug13343.go b/test/fixedbugs/bug13343.go
new file mode 100644
index 0000000..5dc736d
--- /dev/null
+++ b/test/fixedbugs/bug13343.go
@@ -0,0 +1,18 @@
+// errorcheck
+
+// Copyright 2015 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
+
+var (
+ a, b = f() // ERROR "initialization loop|depends upon itself"
+ c = b
+)
+
+func f() (int, int) {
+ return c, c
+}
+
+func main() {}
diff --git a/test/fixedbugs/bug1515.go b/test/fixedbugs/bug1515.go
index a4baccd..5fef5ad 100644
--- a/test/fixedbugs/bug1515.go
+++ b/test/fixedbugs/bug1515.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug160.dir/x.go b/test/fixedbugs/bug160.dir/x.go
index bd52c6c..2673552 100644
--- a/test/fixedbugs/bug160.dir/x.go
+++ b/test/fixedbugs/bug160.dir/x.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug160.dir/y.go b/test/fixedbugs/bug160.dir/y.go
index 27e2f35..428808d 100644
--- a/test/fixedbugs/bug160.dir/y.go
+++ b/test/fixedbugs/bug160.dir/y.go
@@ -1,4 +1,4 @@
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug203.go b/test/fixedbugs/bug203.go
index 2fb084b..68647ec 100644
--- a/test/fixedbugs/bug203.go
+++ b/test/fixedbugs/bug203.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug227.go b/test/fixedbugs/bug227.go
index ea8d02d..afbdd97 100644
--- a/test/fixedbugs/bug227.go
+++ b/test/fixedbugs/bug227.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug228.go b/test/fixedbugs/bug228.go
index 3fccd17..f7ac670 100644
--- a/test/fixedbugs/bug228.go
+++ b/test/fixedbugs/bug228.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug229.go b/test/fixedbugs/bug229.go
index 1977688..4baf65e 100644
--- a/test/fixedbugs/bug229.go
+++ b/test/fixedbugs/bug229.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
@@ -14,7 +14,7 @@
// make sure error mentions that
// name is unexported, not just "name not found".
- t.name = nil // ERROR "unexported"
+ t.common.name = nil // ERROR "unexported"
println(testing.anyLowercaseName("asdf")) // ERROR "unexported" "undefined: testing.anyLowercaseName"
}
diff --git a/test/fixedbugs/bug230.go b/test/fixedbugs/bug230.go
index 210acc4..e5eead5 100644
--- a/test/fixedbugs/bug230.go
+++ b/test/fixedbugs/bug230.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug231.go b/test/fixedbugs/bug231.go
index a9d409b..f64ddc3 100644
--- a/test/fixedbugs/bug231.go
+++ b/test/fixedbugs/bug231.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug232.go b/test/fixedbugs/bug232.go
index d18727e..10b0c52 100644
--- a/test/fixedbugs/bug232.go
+++ b/test/fixedbugs/bug232.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug233.go b/test/fixedbugs/bug233.go
index 63f8ee2..d4e1e07 100644
--- a/test/fixedbugs/bug233.go
+++ b/test/fixedbugs/bug233.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug234.go b/test/fixedbugs/bug234.go
index 9f503f0..0d37ce2 100644
--- a/test/fixedbugs/bug234.go
+++ b/test/fixedbugs/bug234.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug235.go b/test/fixedbugs/bug235.go
index d12d9e7..a33092b 100644
--- a/test/fixedbugs/bug235.go
+++ b/test/fixedbugs/bug235.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug236.go b/test/fixedbugs/bug236.go
index 6c24556..de7e8e3 100644
--- a/test/fixedbugs/bug236.go
+++ b/test/fixedbugs/bug236.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug237.go b/test/fixedbugs/bug237.go
index 58996ca..75d6132 100644
--- a/test/fixedbugs/bug237.go
+++ b/test/fixedbugs/bug237.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug243.go b/test/fixedbugs/bug243.go
index 4870c36..5b6bb75 100644
--- a/test/fixedbugs/bug243.go
+++ b/test/fixedbugs/bug243.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug245.go b/test/fixedbugs/bug245.go
index c607a6d..adf62f9 100644
--- a/test/fixedbugs/bug245.go
+++ b/test/fixedbugs/bug245.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug247.go b/test/fixedbugs/bug247.go
index b6851e1..6550bd8 100644
--- a/test/fixedbugs/bug247.go
+++ b/test/fixedbugs/bug247.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug249.go b/test/fixedbugs/bug249.go
index dc92245..ec9699a 100644
--- a/test/fixedbugs/bug249.go
+++ b/test/fixedbugs/bug249.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2009 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug250.go b/test/fixedbugs/bug250.go
index 5140f3e..9fb34c3 100644
--- a/test/fixedbugs/bug250.go
+++ b/test/fixedbugs/bug250.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug251.go b/test/fixedbugs/bug251.go
index 43d9d52..f061723 100644
--- a/test/fixedbugs/bug251.go
+++ b/test/fixedbugs/bug251.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug252.go b/test/fixedbugs/bug252.go
index 6f007fb..f678925 100644
--- a/test/fixedbugs/bug252.go
+++ b/test/fixedbugs/bug252.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug253.go b/test/fixedbugs/bug253.go
index f6ab712..933f3f1 100644
--- a/test/fixedbugs/bug253.go
+++ b/test/fixedbugs/bug253.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug254.go b/test/fixedbugs/bug254.go
index 9b1c819..3902cd5 100644
--- a/test/fixedbugs/bug254.go
+++ b/test/fixedbugs/bug254.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug255.go b/test/fixedbugs/bug255.go
index 65ed1b8..cc7d92f 100644
--- a/test/fixedbugs/bug255.go
+++ b/test/fixedbugs/bug255.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug256.go b/test/fixedbugs/bug256.go
index 0498a40..705a032 100644
--- a/test/fixedbugs/bug256.go
+++ b/test/fixedbugs/bug256.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug257.go b/test/fixedbugs/bug257.go
index 003f3ff..b05c37a 100644
--- a/test/fixedbugs/bug257.go
+++ b/test/fixedbugs/bug257.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug258.go b/test/fixedbugs/bug258.go
index d362e5a..075da87 100644
--- a/test/fixedbugs/bug258.go
+++ b/test/fixedbugs/bug258.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug259.go b/test/fixedbugs/bug259.go
index e4dcaeb..857b442 100644
--- a/test/fixedbugs/bug259.go
+++ b/test/fixedbugs/bug259.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug261.go b/test/fixedbugs/bug261.go
index f7879b0..abe6431 100644
--- a/test/fixedbugs/bug261.go
+++ b/test/fixedbugs/bug261.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug266.go b/test/fixedbugs/bug266.go
index d4da891..5d2334c 100644
--- a/test/fixedbugs/bug266.go
+++ b/test/fixedbugs/bug266.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug269.go b/test/fixedbugs/bug269.go
index 60ee7ee..ec0dbc6 100644
--- a/test/fixedbugs/bug269.go
+++ b/test/fixedbugs/bug269.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug271.go b/test/fixedbugs/bug271.go
index 30d9bb1..a6abbfe 100644
--- a/test/fixedbugs/bug271.go
+++ b/test/fixedbugs/bug271.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug272.go b/test/fixedbugs/bug272.go
index f943d68..6b8862f 100644
--- a/test/fixedbugs/bug272.go
+++ b/test/fixedbugs/bug272.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug273.go b/test/fixedbugs/bug273.go
index b4e3f65..b6258d5 100644
--- a/test/fixedbugs/bug273.go
+++ b/test/fixedbugs/bug273.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug274.go b/test/fixedbugs/bug274.go
index e57d147..e93f30e 100644
--- a/test/fixedbugs/bug274.go
+++ b/test/fixedbugs/bug274.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug275.go b/test/fixedbugs/bug275.go
index f5f6b14..d3be754 100644
--- a/test/fixedbugs/bug275.go
+++ b/test/fixedbugs/bug275.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug278.go b/test/fixedbugs/bug278.go
index 68a3d81..4817ebf 100644
--- a/test/fixedbugs/bug278.go
+++ b/test/fixedbugs/bug278.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug279.go b/test/fixedbugs/bug279.go
index 726ba60..3b1df3b 100644
--- a/test/fixedbugs/bug279.go
+++ b/test/fixedbugs/bug279.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug280.go b/test/fixedbugs/bug280.go
index 3925b9a..afec57f 100644
--- a/test/fixedbugs/bug280.go
+++ b/test/fixedbugs/bug280.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug281.go b/test/fixedbugs/bug281.go
index 92c8d86..c65530f 100644
--- a/test/fixedbugs/bug281.go
+++ b/test/fixedbugs/bug281.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug282.dir/p1.go b/test/fixedbugs/bug282.dir/p1.go
index b562755..0f7422c 100644
--- a/test/fixedbugs/bug282.dir/p1.go
+++ b/test/fixedbugs/bug282.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug282.dir/p2.go b/test/fixedbugs/bug282.dir/p2.go
index 3f8bd9d..f614507 100644
--- a/test/fixedbugs/bug282.dir/p2.go
+++ b/test/fixedbugs/bug282.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug283.go b/test/fixedbugs/bug283.go
index 1f7f6e0..ef1953b 100644
--- a/test/fixedbugs/bug283.go
+++ b/test/fixedbugs/bug283.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug285.go b/test/fixedbugs/bug285.go
index e0b3766..0632ab4 100644
--- a/test/fixedbugs/bug285.go
+++ b/test/fixedbugs/bug285.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug286.go b/test/fixedbugs/bug286.go
index 44f0515..b1271f4 100644
--- a/test/fixedbugs/bug286.go
+++ b/test/fixedbugs/bug286.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug287.go b/test/fixedbugs/bug287.go
index 2ed81c5..94582a8 100644
--- a/test/fixedbugs/bug287.go
+++ b/test/fixedbugs/bug287.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug288.go b/test/fixedbugs/bug288.go
index d2461e6..0a53d32 100644
--- a/test/fixedbugs/bug288.go
+++ b/test/fixedbugs/bug288.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug289.go b/test/fixedbugs/bug289.go
index 3c6b687..5a30979 100644
--- a/test/fixedbugs/bug289.go
+++ b/test/fixedbugs/bug289.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug290.go b/test/fixedbugs/bug290.go
index 46ebc1f..4eee285 100644
--- a/test/fixedbugs/bug290.go
+++ b/test/fixedbugs/bug290.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug291.go b/test/fixedbugs/bug291.go
index d627a9d..ac84a7e 100644
--- a/test/fixedbugs/bug291.go
+++ b/test/fixedbugs/bug291.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug292.go b/test/fixedbugs/bug292.go
index 0c24912..1130a28 100644
--- a/test/fixedbugs/bug292.go
+++ b/test/fixedbugs/bug292.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug293.go b/test/fixedbugs/bug293.go
index c985305..ae7cc1f 100644
--- a/test/fixedbugs/bug293.go
+++ b/test/fixedbugs/bug293.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug294.go b/test/fixedbugs/bug294.go
index ec41fe8..b35b771 100644
--- a/test/fixedbugs/bug294.go
+++ b/test/fixedbugs/bug294.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug295.go b/test/fixedbugs/bug295.go
index 63a12a3..d1c961c 100644
--- a/test/fixedbugs/bug295.go
+++ b/test/fixedbugs/bug295.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug296.go b/test/fixedbugs/bug296.go
index a7c4e0c..2ef4e66 100644
--- a/test/fixedbugs/bug296.go
+++ b/test/fixedbugs/bug296.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug297.go b/test/fixedbugs/bug297.go
index ee2ff92..852d208 100644
--- a/test/fixedbugs/bug297.go
+++ b/test/fixedbugs/bug297.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug298.go b/test/fixedbugs/bug298.go
index bd362ac..0aed032 100644
--- a/test/fixedbugs/bug298.go
+++ b/test/fixedbugs/bug298.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug299.go b/test/fixedbugs/bug299.go
index 1067fd1..cf11bcc 100644
--- a/test/fixedbugs/bug299.go
+++ b/test/fixedbugs/bug299.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug300.go b/test/fixedbugs/bug300.go
index 1ef43a0..1695a96 100644
--- a/test/fixedbugs/bug300.go
+++ b/test/fixedbugs/bug300.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug301.go b/test/fixedbugs/bug301.go
index fc52503..2be62b8 100644
--- a/test/fixedbugs/bug301.go
+++ b/test/fixedbugs/bug301.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug302.dir/main.go b/test/fixedbugs/bug302.dir/main.go
index 281f908..52c054f 100644
--- a/test/fixedbugs/bug302.dir/main.go
+++ b/test/fixedbugs/bug302.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug302.dir/p.go b/test/fixedbugs/bug302.dir/p.go
index 7c54b90..0be521b 100644
--- a/test/fixedbugs/bug302.dir/p.go
+++ b/test/fixedbugs/bug302.dir/p.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug302.go b/test/fixedbugs/bug302.go
index 42345a9..e4de25d 100644
--- a/test/fixedbugs/bug302.go
+++ b/test/fixedbugs/bug302.go
@@ -1,7 +1,7 @@
// +build !nacl
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug303.go b/test/fixedbugs/bug303.go
index 94ca07e..aef8b22 100644
--- a/test/fixedbugs/bug303.go
+++ b/test/fixedbugs/bug303.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug304.go b/test/fixedbugs/bug304.go
index ad71b20..4073073 100644
--- a/test/fixedbugs/bug304.go
+++ b/test/fixedbugs/bug304.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug305.go b/test/fixedbugs/bug305.go
index d0a4b24..0c34b1a 100644
--- a/test/fixedbugs/bug305.go
+++ b/test/fixedbugs/bug305.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug306.dir/p1.go b/test/fixedbugs/bug306.dir/p1.go
index bf87ea1..b285518 100644
--- a/test/fixedbugs/bug306.dir/p1.go
+++ b/test/fixedbugs/bug306.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug306.dir/p2.go b/test/fixedbugs/bug306.dir/p2.go
index 3f8bd9d..f614507 100644
--- a/test/fixedbugs/bug306.dir/p2.go
+++ b/test/fixedbugs/bug306.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug308.go b/test/fixedbugs/bug308.go
index 5bea517..a23903c 100644
--- a/test/fixedbugs/bug308.go
+++ b/test/fixedbugs/bug308.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug309.go b/test/fixedbugs/bug309.go
index 948ca5c..d707aa3 100644
--- a/test/fixedbugs/bug309.go
+++ b/test/fixedbugs/bug309.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug311.go b/test/fixedbugs/bug311.go
index edcd975..f5cab44 100644
--- a/test/fixedbugs/bug311.go
+++ b/test/fixedbugs/bug311.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug312.go b/test/fixedbugs/bug312.go
index c7c17e1..af423e5 100644
--- a/test/fixedbugs/bug312.go
+++ b/test/fixedbugs/bug312.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug313.dir/a.go b/test/fixedbugs/bug313.dir/a.go
index cb4ca72..335f84d 100644
--- a/test/fixedbugs/bug313.dir/a.go
+++ b/test/fixedbugs/bug313.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug313.dir/b.go b/test/fixedbugs/bug313.dir/b.go
index 7eda72b..26e6413 100644
--- a/test/fixedbugs/bug313.dir/b.go
+++ b/test/fixedbugs/bug313.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug313.go b/test/fixedbugs/bug313.go
index a7c1d36..f7e0238 100644
--- a/test/fixedbugs/bug313.go
+++ b/test/fixedbugs/bug313.go
@@ -1,6 +1,6 @@
// errorcheckdir
-// Copyright 2010 The Go Authors. All rights reserved.
+// Copyright 2010 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.
diff --git a/test/fixedbugs/bug317.go b/test/fixedbugs/bug317.go
index 3ff4dc4..4cd9ec2 100644
--- a/test/fixedbugs/bug317.go
+++ b/test/fixedbugs/bug317.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug319.go b/test/fixedbugs/bug319.go
index f8e959a..b93106d 100644
--- a/test/fixedbugs/bug319.go
+++ b/test/fixedbugs/bug319.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug320.go b/test/fixedbugs/bug320.go
index c2dd31b..0406b96 100644
--- a/test/fixedbugs/bug320.go
+++ b/test/fixedbugs/bug320.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug321.go b/test/fixedbugs/bug321.go
index 7d01827..19970af 100644
--- a/test/fixedbugs/bug321.go
+++ b/test/fixedbugs/bug321.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug323.go b/test/fixedbugs/bug323.go
index 9730ae5..3cb8eaa 100644
--- a/test/fixedbugs/bug323.go
+++ b/test/fixedbugs/bug323.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug325.go b/test/fixedbugs/bug325.go
index 6ccd0e3..e6528ae 100644
--- a/test/fixedbugs/bug325.go
+++ b/test/fixedbugs/bug325.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug326.go b/test/fixedbugs/bug326.go
index 57f6471..75d620c 100644
--- a/test/fixedbugs/bug326.go
+++ b/test/fixedbugs/bug326.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug327.go b/test/fixedbugs/bug327.go
index 0598d95..ecb5d22 100644
--- a/test/fixedbugs/bug327.go
+++ b/test/fixedbugs/bug327.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug328.go b/test/fixedbugs/bug328.go
index 73ab46d..180af05 100644
--- a/test/fixedbugs/bug328.go
+++ b/test/fixedbugs/bug328.go
@@ -1,6 +1,6 @@
// cmpout
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug329.go b/test/fixedbugs/bug329.go
index 74fc781..37c93d0 100644
--- a/test/fixedbugs/bug329.go
+++ b/test/fixedbugs/bug329.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug330.go b/test/fixedbugs/bug330.go
index ef6a077..2f33feb 100644
--- a/test/fixedbugs/bug330.go
+++ b/test/fixedbugs/bug330.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug331.go b/test/fixedbugs/bug331.go
index fac0e36..9eb57cd 100644
--- a/test/fixedbugs/bug331.go
+++ b/test/fixedbugs/bug331.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug332.go b/test/fixedbugs/bug332.go
index 702779b..91ae0b2 100644
--- a/test/fixedbugs/bug332.go
+++ b/test/fixedbugs/bug332.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug333.go b/test/fixedbugs/bug333.go
index bb690f0..149843a 100644
--- a/test/fixedbugs/bug333.go
+++ b/test/fixedbugs/bug333.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug334.go b/test/fixedbugs/bug334.go
index bd67169..9558c06 100644
--- a/test/fixedbugs/bug334.go
+++ b/test/fixedbugs/bug334.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug335.dir/a.go b/test/fixedbugs/bug335.dir/a.go
index 256c110..6ecc5c4 100644
--- a/test/fixedbugs/bug335.dir/a.go
+++ b/test/fixedbugs/bug335.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug335.dir/b.go b/test/fixedbugs/bug335.dir/b.go
index 1474470..a7735a8 100644
--- a/test/fixedbugs/bug335.dir/b.go
+++ b/test/fixedbugs/bug335.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug335.go b/test/fixedbugs/bug335.go
index 37c97d7..fda9eb8 100644
--- a/test/fixedbugs/bug335.go
+++ b/test/fixedbugs/bug335.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug336.go b/test/fixedbugs/bug336.go
index fbf2320..fbcd3a5 100644
--- a/test/fixedbugs/bug336.go
+++ b/test/fixedbugs/bug336.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug337.go b/test/fixedbugs/bug337.go
index 38dc665..1a0616f 100644
--- a/test/fixedbugs/bug337.go
+++ b/test/fixedbugs/bug337.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug338.go b/test/fixedbugs/bug338.go
index c2193fc..a4537a4 100644
--- a/test/fixedbugs/bug338.go
+++ b/test/fixedbugs/bug338.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug339.go b/test/fixedbugs/bug339.go
index 59921d4..36be761 100644
--- a/test/fixedbugs/bug339.go
+++ b/test/fixedbugs/bug339.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug340.go b/test/fixedbugs/bug340.go
index d996ab6..118bbac 100644
--- a/test/fixedbugs/bug340.go
+++ b/test/fixedbugs/bug340.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug341.go b/test/fixedbugs/bug341.go
index db1af3e..baab282 100644
--- a/test/fixedbugs/bug341.go
+++ b/test/fixedbugs/bug341.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug342.go b/test/fixedbugs/bug342.go
index ffcb668..f90f6f3 100644
--- a/test/fixedbugs/bug342.go
+++ b/test/fixedbugs/bug342.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug343.go b/test/fixedbugs/bug343.go
index 8220108..fd8bd76 100644
--- a/test/fixedbugs/bug343.go
+++ b/test/fixedbugs/bug343.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug344.go b/test/fixedbugs/bug344.go
index 4a92624..b53abd2 100644
--- a/test/fixedbugs/bug344.go
+++ b/test/fixedbugs/bug344.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug345.dir/io.go b/test/fixedbugs/bug345.dir/io.go
index 1d695c3..ca7a509 100644
--- a/test/fixedbugs/bug345.dir/io.go
+++ b/test/fixedbugs/bug345.dir/io.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug345.dir/main.go b/test/fixedbugs/bug345.dir/main.go
index ddba8da..6e4fdf4 100644
--- a/test/fixedbugs/bug345.dir/main.go
+++ b/test/fixedbugs/bug345.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug345.go b/test/fixedbugs/bug345.go
index e291a55..dcf62f0 100644
--- a/test/fixedbugs/bug345.go
+++ b/test/fixedbugs/bug345.go
@@ -1,7 +1,7 @@
// +build !nacl,!plan9,!windows
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug347.go b/test/fixedbugs/bug347.go
index 08edf0f..92afb2e 100644
--- a/test/fixedbugs/bug347.go
+++ b/test/fixedbugs/bug347.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug348.go b/test/fixedbugs/bug348.go
index 54a289a..c7f1346 100644
--- a/test/fixedbugs/bug348.go
+++ b/test/fixedbugs/bug348.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug349.go b/test/fixedbugs/bug349.go
index a3e6bd1..a6e8386 100644
--- a/test/fixedbugs/bug349.go
+++ b/test/fixedbugs/bug349.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug350.go b/test/fixedbugs/bug350.go
index 5ce8996..cdce1cf 100644
--- a/test/fixedbugs/bug350.go
+++ b/test/fixedbugs/bug350.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug351.go b/test/fixedbugs/bug351.go
index 4c5c7c3..8fd63e3 100644
--- a/test/fixedbugs/bug351.go
+++ b/test/fixedbugs/bug351.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug352.go b/test/fixedbugs/bug352.go
index 1ae2d61..464ad7b 100644
--- a/test/fixedbugs/bug352.go
+++ b/test/fixedbugs/bug352.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug353.go b/test/fixedbugs/bug353.go
index 2a532c4..4a65f77 100644
--- a/test/fixedbugs/bug353.go
+++ b/test/fixedbugs/bug353.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug354.go b/test/fixedbugs/bug354.go
index 1245d91..293180f 100644
--- a/test/fixedbugs/bug354.go
+++ b/test/fixedbugs/bug354.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug355.go b/test/fixedbugs/bug355.go
index fcf859b..880353a 100644
--- a/test/fixedbugs/bug355.go
+++ b/test/fixedbugs/bug355.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug356.go b/test/fixedbugs/bug356.go
index 273c5b8..6d93860 100644
--- a/test/fixedbugs/bug356.go
+++ b/test/fixedbugs/bug356.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug357.go b/test/fixedbugs/bug357.go
index ceb2009..e9db50e 100644
--- a/test/fixedbugs/bug357.go
+++ b/test/fixedbugs/bug357.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug358.go b/test/fixedbugs/bug358.go
index 063c2e0..5ca0be1 100644
--- a/test/fixedbugs/bug358.go
+++ b/test/fixedbugs/bug358.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
@@ -10,13 +10,14 @@
package main
import (
- "io/ioutil" // GCCGO_ERROR "imported and not used"
+ // avoid imported and not used errors
+ // "io/ioutil"
"net/http"
- "os" // GCCGO_ERROR "imported and not used"
+ // "os"
)
func makeHandler(fn func(http.ResponseWriter, *http.Request, string)) http.HandlerFunc {
- return func(w http.ResponseWriter, r *http.Request) // ERROR "syntax error|invalid use of type"
+ return func(w http.ResponseWriter, r *http.Request) // ERROR "syntax error|not an expression|invalid use of type"
}
type Page struct {
diff --git a/test/fixedbugs/bug361.go b/test/fixedbugs/bug361.go
index 3e3b7c1..8e28243 100644
--- a/test/fixedbugs/bug361.go
+++ b/test/fixedbugs/bug361.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug362.go b/test/fixedbugs/bug362.go
index b888ccb..771d13d 100644
--- a/test/fixedbugs/bug362.go
+++ b/test/fixedbugs/bug362.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug363.go b/test/fixedbugs/bug363.go
index 615c668..1bd1400 100644
--- a/test/fixedbugs/bug363.go
+++ b/test/fixedbugs/bug363.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug365.go b/test/fixedbugs/bug365.go
index 795323b..985b6de 100644
--- a/test/fixedbugs/bug365.go
+++ b/test/fixedbugs/bug365.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug366.go b/test/fixedbugs/bug366.go
index 33a1a5a..3af5bea 100644
--- a/test/fixedbugs/bug366.go
+++ b/test/fixedbugs/bug366.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug368.go b/test/fixedbugs/bug368.go
index c38cc7f..353ea5a 100644
--- a/test/fixedbugs/bug368.go
+++ b/test/fixedbugs/bug368.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug369.dir/main.go b/test/fixedbugs/bug369.dir/main.go
index 1c9e36b..4812602 100644
--- a/test/fixedbugs/bug369.dir/main.go
+++ b/test/fixedbugs/bug369.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug369.dir/pkg.go b/test/fixedbugs/bug369.dir/pkg.go
index cf57041..9964347 100644
--- a/test/fixedbugs/bug369.dir/pkg.go
+++ b/test/fixedbugs/bug369.dir/pkg.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug369.go b/test/fixedbugs/bug369.go
index dd48da8..60162ab 100644
--- a/test/fixedbugs/bug369.go
+++ b/test/fixedbugs/bug369.go
@@ -1,7 +1,7 @@
// +build !nacl,!windows
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug370.go b/test/fixedbugs/bug370.go
index 246bc7c..c5165c5 100644
--- a/test/fixedbugs/bug370.go
+++ b/test/fixedbugs/bug370.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug371.go b/test/fixedbugs/bug371.go
index 86c73bf..3a626e5 100644
--- a/test/fixedbugs/bug371.go
+++ b/test/fixedbugs/bug371.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug372.go b/test/fixedbugs/bug372.go
index 3457856..5fba131 100644
--- a/test/fixedbugs/bug372.go
+++ b/test/fixedbugs/bug372.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug373.go b/test/fixedbugs/bug373.go
index e91f26d..aa0f5d1 100644
--- a/test/fixedbugs/bug373.go
+++ b/test/fixedbugs/bug373.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug374.go b/test/fixedbugs/bug374.go
index 4f0b721..2d604cb 100644
--- a/test/fixedbugs/bug374.go
+++ b/test/fixedbugs/bug374.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug375.go b/test/fixedbugs/bug375.go
index cb159b0..08d5afc 100644
--- a/test/fixedbugs/bug375.go
+++ b/test/fixedbugs/bug375.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug376.go b/test/fixedbugs/bug376.go
index 5fbbc9c..7bef58b 100644
--- a/test/fixedbugs/bug376.go
+++ b/test/fixedbugs/bug376.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug378.go b/test/fixedbugs/bug378.go
index f3346c6..c7b0dac 100644
--- a/test/fixedbugs/bug378.go
+++ b/test/fixedbugs/bug378.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug379.go b/test/fixedbugs/bug379.go
index 14abe46..5638123 100644
--- a/test/fixedbugs/bug379.go
+++ b/test/fixedbugs/bug379.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug380.go b/test/fixedbugs/bug380.go
index 96e1ede..0cb3487 100644
--- a/test/fixedbugs/bug380.go
+++ b/test/fixedbugs/bug380.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug381.go b/test/fixedbugs/bug381.go
index 0253e14..a0a1c8a 100644
--- a/test/fixedbugs/bug381.go
+++ b/test/fixedbugs/bug381.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug382.dir/pkg.go b/test/fixedbugs/bug382.dir/pkg.go
index f8d75d4..92fe4e3 100644
--- a/test/fixedbugs/bug382.dir/pkg.go
+++ b/test/fixedbugs/bug382.dir/pkg.go
@@ -1,4 +1,4 @@
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug383.go b/test/fixedbugs/bug383.go
index 503779c..dc2ecd6 100644
--- a/test/fixedbugs/bug383.go
+++ b/test/fixedbugs/bug383.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug384.go b/test/fixedbugs/bug384.go
index 0233c19..d02352b 100644
--- a/test/fixedbugs/bug384.go
+++ b/test/fixedbugs/bug384.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug385_32.go b/test/fixedbugs/bug385_32.go
index daf2a08..73a1311 100644
--- a/test/fixedbugs/bug385_32.go
+++ b/test/fixedbugs/bug385_32.go
@@ -1,7 +1,7 @@
// +build 386 amd64p32 arm
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug385_64.go b/test/fixedbugs/bug385_64.go
index 6789c0a..0f941ca 100644
--- a/test/fixedbugs/bug385_64.go
+++ b/test/fixedbugs/bug385_64.go
@@ -1,7 +1,7 @@
// +build amd64
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug386.go b/test/fixedbugs/bug386.go
index ec358bd..889c8b0 100644
--- a/test/fixedbugs/bug386.go
+++ b/test/fixedbugs/bug386.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug387.go b/test/fixedbugs/bug387.go
index 59d5ef9..d885445 100644
--- a/test/fixedbugs/bug387.go
+++ b/test/fixedbugs/bug387.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug388.go b/test/fixedbugs/bug388.go
index d41f9ea..af0c9d9 100644
--- a/test/fixedbugs/bug388.go
+++ b/test/fixedbugs/bug388.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
@@ -9,7 +9,7 @@
package main
import "runtime"
-func foo(runtime.UintType, i int) { // ERROR "cannot declare name runtime.UintType|named/anonymous mix|undefined identifier"
+func foo(runtime.UintType, i int) { // ERROR "cannot declare name runtime.UintType|mixed named and unnamed|undefined identifier"
println(i, runtime.UintType) // GCCGO_ERROR "undefined identifier"
}
diff --git a/test/fixedbugs/bug389.go b/test/fixedbugs/bug389.go
index 55a02e0..14804c8 100644
--- a/test/fixedbugs/bug389.go
+++ b/test/fixedbugs/bug389.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug391.go b/test/fixedbugs/bug391.go
index 07d129d..9211b1c 100644
--- a/test/fixedbugs/bug391.go
+++ b/test/fixedbugs/bug391.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug392.dir/one.go b/test/fixedbugs/bug392.dir/one.go
index 8242f28..aba8649 100644
--- a/test/fixedbugs/bug392.dir/one.go
+++ b/test/fixedbugs/bug392.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug392.dir/pkg2.go b/test/fixedbugs/bug392.dir/pkg2.go
index 8320b2f..2ee41f0 100644
--- a/test/fixedbugs/bug392.dir/pkg2.go
+++ b/test/fixedbugs/bug392.dir/pkg2.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug392.dir/pkg3.go b/test/fixedbugs/bug392.dir/pkg3.go
index 402c3b0..1403798 100644
--- a/test/fixedbugs/bug392.dir/pkg3.go
+++ b/test/fixedbugs/bug392.dir/pkg3.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug393.go b/test/fixedbugs/bug393.go
index f8a9c65..61af578 100644
--- a/test/fixedbugs/bug393.go
+++ b/test/fixedbugs/bug393.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug394.go b/test/fixedbugs/bug394.go
index 2d77156..08bac18 100644
--- a/test/fixedbugs/bug394.go
+++ b/test/fixedbugs/bug394.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug396.dir/one.go b/test/fixedbugs/bug396.dir/one.go
index 96a1dd7..66eba63 100644
--- a/test/fixedbugs/bug396.dir/one.go
+++ b/test/fixedbugs/bug396.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug396.dir/two.go b/test/fixedbugs/bug396.dir/two.go
index 9b32508..9152bec 100644
--- a/test/fixedbugs/bug396.dir/two.go
+++ b/test/fixedbugs/bug396.dir/two.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug397.go b/test/fixedbugs/bug397.go
index 56cc7cd..6188e3e 100644
--- a/test/fixedbugs/bug397.go
+++ b/test/fixedbugs/bug397.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug398.go b/test/fixedbugs/bug398.go
index 1dd3fa4..81bf33c 100644
--- a/test/fixedbugs/bug398.go
+++ b/test/fixedbugs/bug398.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
@@ -8,17 +8,20 @@
package p
-type I1 interface {
- F() interface{I1}
+type i1 interface {
+ F() interface{i1}
}
-type I2 interface {
- F() interface{I2}
+type i2 interface {
+ F() interface{i2}
}
-var v1 I1
-var v2 I2
+var v1 i1
+var v2 i2
func f() bool {
return v1 == v2
}
+
+// TODO(gri) Change test to use exported interfaces.
+// See issue #15596 for details.
\ No newline at end of file
diff --git a/test/fixedbugs/bug399.go b/test/fixedbugs/bug399.go
index 94852c9..e460d81 100644
--- a/test/fixedbugs/bug399.go
+++ b/test/fixedbugs/bug399.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
diff --git a/test/fixedbugs/bug401.go b/test/fixedbugs/bug401.go
index 5589b5b..215498e 100644
--- a/test/fixedbugs/bug401.go
+++ b/test/fixedbugs/bug401.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2011 The Go Authors. All rights reserved.
+// Copyright 2011 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.
@@ -9,9 +9,8 @@
type T struct{}
+//go:noinline
func (T) cplx() complex128 {
- for false {
- } // avoid inlining
return complex(1, 0)
}
diff --git a/test/fixedbugs/bug402.go b/test/fixedbugs/bug402.go
index db3f3da..f9f554d 100644
--- a/test/fixedbugs/bug402.go
+++ b/test/fixedbugs/bug402.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug403.go b/test/fixedbugs/bug403.go
index ed7b49a..aa3c1ea 100644
--- a/test/fixedbugs/bug403.go
+++ b/test/fixedbugs/bug403.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug404.dir/one.go b/test/fixedbugs/bug404.dir/one.go
index 2024eb0..9fc4770 100644
--- a/test/fixedbugs/bug404.dir/one.go
+++ b/test/fixedbugs/bug404.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug404.dir/two.go b/test/fixedbugs/bug404.dir/two.go
index 162eae7..0c70a23 100644
--- a/test/fixedbugs/bug404.dir/two.go
+++ b/test/fixedbugs/bug404.dir/two.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug406.go b/test/fixedbugs/bug406.go
index 6df3c5c..32cf3e3 100644
--- a/test/fixedbugs/bug406.go
+++ b/test/fixedbugs/bug406.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug407.dir/one.go b/test/fixedbugs/bug407.dir/one.go
index a91d904..c85b077 100644
--- a/test/fixedbugs/bug407.dir/one.go
+++ b/test/fixedbugs/bug407.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug407.dir/two.go b/test/fixedbugs/bug407.dir/two.go
index 67e1852..640305c 100644
--- a/test/fixedbugs/bug407.dir/two.go
+++ b/test/fixedbugs/bug407.dir/two.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug409.go b/test/fixedbugs/bug409.go
index 1dca43b..9e08a8e 100644
--- a/test/fixedbugs/bug409.go
+++ b/test/fixedbugs/bug409.go
@@ -1,6 +1,6 @@
// cmpout
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug410.go b/test/fixedbugs/bug410.go
index 430ddcb..a4eef64 100644
--- a/test/fixedbugs/bug410.go
+++ b/test/fixedbugs/bug410.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug411.go b/test/fixedbugs/bug411.go
index 3b90db8..a1c36f6 100644
--- a/test/fixedbugs/bug411.go
+++ b/test/fixedbugs/bug411.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug412.go b/test/fixedbugs/bug412.go
index c7ddc0c..183fb7e 100644
--- a/test/fixedbugs/bug412.go
+++ b/test/fixedbugs/bug412.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug413.go b/test/fixedbugs/bug413.go
index ba80464..819bd1a 100644
--- a/test/fixedbugs/bug413.go
+++ b/test/fixedbugs/bug413.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug414.dir/p1.go b/test/fixedbugs/bug414.dir/p1.go
index 2463834..143e600 100644
--- a/test/fixedbugs/bug414.dir/p1.go
+++ b/test/fixedbugs/bug414.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug414.dir/prog.go b/test/fixedbugs/bug414.dir/prog.go
index f55d946..8945d65 100644
--- a/test/fixedbugs/bug414.dir/prog.go
+++ b/test/fixedbugs/bug414.dir/prog.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug414.go b/test/fixedbugs/bug414.go
index 35e19be..5b435b4 100644
--- a/test/fixedbugs/bug414.go
+++ b/test/fixedbugs/bug414.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug415.dir/p.go b/test/fixedbugs/bug415.dir/p.go
index b4152d6..e86a697 100644
--- a/test/fixedbugs/bug415.dir/p.go
+++ b/test/fixedbugs/bug415.dir/p.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug415.dir/prog.go b/test/fixedbugs/bug415.dir/prog.go
index b894453..1ffde18 100644
--- a/test/fixedbugs/bug415.dir/prog.go
+++ b/test/fixedbugs/bug415.dir/prog.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug415.go b/test/fixedbugs/bug415.go
index 8cd4c49..daf4f0c 100644
--- a/test/fixedbugs/bug415.go
+++ b/test/fixedbugs/bug415.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug416.go b/test/fixedbugs/bug416.go
index 1d24fa9..9fc3532 100644
--- a/test/fixedbugs/bug416.go
+++ b/test/fixedbugs/bug416.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug424.dir/lib.go b/test/fixedbugs/bug424.dir/lib.go
index 97054da..31df8c6 100644
--- a/test/fixedbugs/bug424.dir/lib.go
+++ b/test/fixedbugs/bug424.dir/lib.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug424.dir/main.go b/test/fixedbugs/bug424.dir/main.go
index c2fe146..28b41e6 100644
--- a/test/fixedbugs/bug424.dir/main.go
+++ b/test/fixedbugs/bug424.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug424.go b/test/fixedbugs/bug424.go
index 59c2cd3..9c59abe 100644
--- a/test/fixedbugs/bug424.go
+++ b/test/fixedbugs/bug424.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug428.go b/test/fixedbugs/bug428.go
index 298c455..d9ad276 100644
--- a/test/fixedbugs/bug428.go
+++ b/test/fixedbugs/bug428.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug429.go b/test/fixedbugs/bug429.go
index 31d5a3a..2c31f32 100644
--- a/test/fixedbugs/bug429.go
+++ b/test/fixedbugs/bug429.go
@@ -1,6 +1,6 @@
// skip
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug435.go b/test/fixedbugs/bug435.go
index 0c2ac7b..692a492 100644
--- a/test/fixedbugs/bug435.go
+++ b/test/fixedbugs/bug435.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug437.dir/one.go b/test/fixedbugs/bug437.dir/one.go
index 8d3caad..633573e 100644
--- a/test/fixedbugs/bug437.dir/one.go
+++ b/test/fixedbugs/bug437.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug437.dir/two.go b/test/fixedbugs/bug437.dir/two.go
index 406dd59..61da121 100644
--- a/test/fixedbugs/bug437.dir/two.go
+++ b/test/fixedbugs/bug437.dir/two.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug437.dir/x.go b/test/fixedbugs/bug437.dir/x.go
index 364d017..585b480 100644
--- a/test/fixedbugs/bug437.dir/x.go
+++ b/test/fixedbugs/bug437.dir/x.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug437.go b/test/fixedbugs/bug437.go
index 5c4a2ad..98adce7 100644
--- a/test/fixedbugs/bug437.go
+++ b/test/fixedbugs/bug437.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug441.go b/test/fixedbugs/bug441.go
index 8562bfe..b67125b 100644
--- a/test/fixedbugs/bug441.go
+++ b/test/fixedbugs/bug441.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug442.go b/test/fixedbugs/bug442.go
index 1d1a948..684d54f 100644
--- a/test/fixedbugs/bug442.go
+++ b/test/fixedbugs/bug442.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug443.go b/test/fixedbugs/bug443.go
index b67bd8c..9abd254 100644
--- a/test/fixedbugs/bug443.go
+++ b/test/fixedbugs/bug443.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug444.go b/test/fixedbugs/bug444.go
index b54fb4f..29a60f5 100644
--- a/test/fixedbugs/bug444.go
+++ b/test/fixedbugs/bug444.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug445.go b/test/fixedbugs/bug445.go
index 497ecd3..45c3290 100644
--- a/test/fixedbugs/bug445.go
+++ b/test/fixedbugs/bug445.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug447.go b/test/fixedbugs/bug447.go
index a4c871b..8358f00 100644
--- a/test/fixedbugs/bug447.go
+++ b/test/fixedbugs/bug447.go
@@ -1,6 +1,6 @@
// runoutput
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug448.dir/pkg1.go b/test/fixedbugs/bug448.dir/pkg1.go
index 032e5d9..291903c 100644
--- a/test/fixedbugs/bug448.dir/pkg1.go
+++ b/test/fixedbugs/bug448.dir/pkg1.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug448.dir/pkg2.go b/test/fixedbugs/bug448.dir/pkg2.go
index 5c78c7d..20d8509 100644
--- a/test/fixedbugs/bug448.dir/pkg2.go
+++ b/test/fixedbugs/bug448.dir/pkg2.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug448.go b/test/fixedbugs/bug448.go
index 242f599..481acda 100644
--- a/test/fixedbugs/bug448.go
+++ b/test/fixedbugs/bug448.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug450.go b/test/fixedbugs/bug450.go
index 3f13de1..af27b72 100644
--- a/test/fixedbugs/bug450.go
+++ b/test/fixedbugs/bug450.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug452.go b/test/fixedbugs/bug452.go
index d2e4a0b..f1f8b08 100644
--- a/test/fixedbugs/bug452.go
+++ b/test/fixedbugs/bug452.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug453.go b/test/fixedbugs/bug453.go
index 136abef..1f4f3ea 100644
--- a/test/fixedbugs/bug453.go
+++ b/test/fixedbugs/bug453.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug454.go b/test/fixedbugs/bug454.go
index a10abba..9e3344d 100644
--- a/test/fixedbugs/bug454.go
+++ b/test/fixedbugs/bug454.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug455.go b/test/fixedbugs/bug455.go
index 8e3c770..9f6974d 100644
--- a/test/fixedbugs/bug455.go
+++ b/test/fixedbugs/bug455.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug456.go b/test/fixedbugs/bug456.go
index 064e1aa..c77a76d 100644
--- a/test/fixedbugs/bug456.go
+++ b/test/fixedbugs/bug456.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug457.go b/test/fixedbugs/bug457.go
index ee70489..84f8db4 100644
--- a/test/fixedbugs/bug457.go
+++ b/test/fixedbugs/bug457.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug458.go b/test/fixedbugs/bug458.go
index ddc97bd..6332697 100644
--- a/test/fixedbugs/bug458.go
+++ b/test/fixedbugs/bug458.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug459.go b/test/fixedbugs/bug459.go
index 014f2ef..c71cb1b 100644
--- a/test/fixedbugs/bug459.go
+++ b/test/fixedbugs/bug459.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug460.dir/a.go b/test/fixedbugs/bug460.dir/a.go
index 29049d9..51c6836 100644
--- a/test/fixedbugs/bug460.dir/a.go
+++ b/test/fixedbugs/bug460.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug460.dir/b.go b/test/fixedbugs/bug460.dir/b.go
index 5c0a0c4..ef64694 100644
--- a/test/fixedbugs/bug460.dir/b.go
+++ b/test/fixedbugs/bug460.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug460.go b/test/fixedbugs/bug460.go
index 79234a3..a1b6f47 100644
--- a/test/fixedbugs/bug460.go
+++ b/test/fixedbugs/bug460.go
@@ -1,6 +1,6 @@
// errorcheckdir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug461.go b/test/fixedbugs/bug461.go
index f0f7b0e..d7fe802 100644
--- a/test/fixedbugs/bug461.go
+++ b/test/fixedbugs/bug461.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug462.go b/test/fixedbugs/bug462.go
index 1a23ad0..3df63b0 100644
--- a/test/fixedbugs/bug462.go
+++ b/test/fixedbugs/bug462.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug463.go b/test/fixedbugs/bug463.go
index 3e7a184..c7f9237 100644
--- a/test/fixedbugs/bug463.go
+++ b/test/fixedbugs/bug463.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug464.go b/test/fixedbugs/bug464.go
index 5821939..3e2c18a 100644
--- a/test/fixedbugs/bug464.go
+++ b/test/fixedbugs/bug464.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug465.dir/a.go b/test/fixedbugs/bug465.dir/a.go
index a9a8614..3e5d012 100644
--- a/test/fixedbugs/bug465.dir/a.go
+++ b/test/fixedbugs/bug465.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug465.dir/b.go b/test/fixedbugs/bug465.dir/b.go
index c84c683..db7f731 100644
--- a/test/fixedbugs/bug465.dir/b.go
+++ b/test/fixedbugs/bug465.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug465.go b/test/fixedbugs/bug465.go
index a6ef587..84ff07b 100644
--- a/test/fixedbugs/bug465.go
+++ b/test/fixedbugs/bug465.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug466.dir/a.go b/test/fixedbugs/bug466.dir/a.go
index b9de63e..e27699c 100644
--- a/test/fixedbugs/bug466.dir/a.go
+++ b/test/fixedbugs/bug466.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug466.dir/b.go b/test/fixedbugs/bug466.dir/b.go
index 82d66ea..04e3626 100644
--- a/test/fixedbugs/bug466.dir/b.go
+++ b/test/fixedbugs/bug466.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug466.go b/test/fixedbugs/bug466.go
index 6b65b33..dc909d4 100644
--- a/test/fixedbugs/bug466.go
+++ b/test/fixedbugs/bug466.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug467.go b/test/fixedbugs/bug467.go
index d73adba..4126f92 100644
--- a/test/fixedbugs/bug467.go
+++ b/test/fixedbugs/bug467.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug468.dir/p1.go b/test/fixedbugs/bug468.dir/p1.go
index ca17577..cdda735 100644
--- a/test/fixedbugs/bug468.dir/p1.go
+++ b/test/fixedbugs/bug468.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug468.dir/p2.go b/test/fixedbugs/bug468.dir/p2.go
index 1793c0e..dbb4693 100644
--- a/test/fixedbugs/bug468.dir/p2.go
+++ b/test/fixedbugs/bug468.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug468.go b/test/fixedbugs/bug468.go
index 12e4997..77941ce 100644
--- a/test/fixedbugs/bug468.go
+++ b/test/fixedbugs/bug468.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug470.go b/test/fixedbugs/bug470.go
index 0a35918..c21663f 100644
--- a/test/fixedbugs/bug470.go
+++ b/test/fixedbugs/bug470.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug471.go b/test/fixedbugs/bug471.go
index e454259..343661f 100644
--- a/test/fixedbugs/bug471.go
+++ b/test/fixedbugs/bug471.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/bug472.dir/p1.go b/test/fixedbugs/bug472.dir/p1.go
index 9d47fd8..cda1aa7 100644
--- a/test/fixedbugs/bug472.dir/p1.go
+++ b/test/fixedbugs/bug472.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug472.dir/p2.go b/test/fixedbugs/bug472.dir/p2.go
index 34a3f04..581ec40 100644
--- a/test/fixedbugs/bug472.dir/p2.go
+++ b/test/fixedbugs/bug472.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug472.dir/z.go b/test/fixedbugs/bug472.dir/z.go
index 6c29dd0..eb791bf 100644
--- a/test/fixedbugs/bug472.dir/z.go
+++ b/test/fixedbugs/bug472.dir/z.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug472.go b/test/fixedbugs/bug472.go
index c79c64c..6939e64 100644
--- a/test/fixedbugs/bug472.go
+++ b/test/fixedbugs/bug472.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug473.go b/test/fixedbugs/bug473.go
index 49ce7d7..7649b6b 100644
--- a/test/fixedbugs/bug473.go
+++ b/test/fixedbugs/bug473.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug474.go b/test/fixedbugs/bug474.go
index b826487..1efabe4 100644
--- a/test/fixedbugs/bug474.go
+++ b/test/fixedbugs/bug474.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug475.go b/test/fixedbugs/bug475.go
index 1bd6fa3..0145aab 100644
--- a/test/fixedbugs/bug475.go
+++ b/test/fixedbugs/bug475.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug476.go b/test/fixedbugs/bug476.go
index 563fd91..8695f95 100644
--- a/test/fixedbugs/bug476.go
+++ b/test/fixedbugs/bug476.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug477.go b/test/fixedbugs/bug477.go
index 86289af..f1fbffa 100644
--- a/test/fixedbugs/bug477.go
+++ b/test/fixedbugs/bug477.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug478.dir/a.go b/test/fixedbugs/bug478.dir/a.go
index a40e454..b5a2dbc 100644
--- a/test/fixedbugs/bug478.dir/a.go
+++ b/test/fixedbugs/bug478.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug478.dir/b.go b/test/fixedbugs/bug478.dir/b.go
index c0fdf11..cfd1d27 100644
--- a/test/fixedbugs/bug478.dir/b.go
+++ b/test/fixedbugs/bug478.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug478.go b/test/fixedbugs/bug478.go
index 5e339e8..8757f46 100644
--- a/test/fixedbugs/bug478.go
+++ b/test/fixedbugs/bug478.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug479.dir/a.go b/test/fixedbugs/bug479.dir/a.go
index 5ff3bef..eddb4cf 100644
--- a/test/fixedbugs/bug479.dir/a.go
+++ b/test/fixedbugs/bug479.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug479.dir/b.go b/test/fixedbugs/bug479.dir/b.go
index a1b27b3..9f3f5e8 100644
--- a/test/fixedbugs/bug479.dir/b.go
+++ b/test/fixedbugs/bug479.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug479.go b/test/fixedbugs/bug479.go
index f8a0f93..80012ba 100644
--- a/test/fixedbugs/bug479.go
+++ b/test/fixedbugs/bug479.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug480.dir/a.go b/test/fixedbugs/bug480.dir/a.go
index 6dff515..26a8d11 100644
--- a/test/fixedbugs/bug480.dir/a.go
+++ b/test/fixedbugs/bug480.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug480.dir/b.go b/test/fixedbugs/bug480.dir/b.go
index 6207365..5bd40f6 100644
--- a/test/fixedbugs/bug480.dir/b.go
+++ b/test/fixedbugs/bug480.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug480.go b/test/fixedbugs/bug480.go
index 5b44af4..ad2f73c 100644
--- a/test/fixedbugs/bug480.go
+++ b/test/fixedbugs/bug480.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug481.go b/test/fixedbugs/bug481.go
index d0922a5..13a5339 100644
--- a/test/fixedbugs/bug481.go
+++ b/test/fixedbugs/bug481.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug482.go b/test/fixedbugs/bug482.go
index 10c4828..0e5417d 100644
--- a/test/fixedbugs/bug482.go
+++ b/test/fixedbugs/bug482.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/bug483.go b/test/fixedbugs/bug483.go
index 2372e89..8db6425 100644
--- a/test/fixedbugs/bug483.go
+++ b/test/fixedbugs/bug483.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug484.go b/test/fixedbugs/bug484.go
index c664b83..bd4fa51 100644
--- a/test/fixedbugs/bug484.go
+++ b/test/fixedbugs/bug484.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
@@ -23,20 +23,14 @@
import "runtime"
-var c bool
-
+//go:noinline
func f() interface{} {
- if c { // disable inlining
- f()
- }
runtime.GC()
return nil
}
+//go:noinline
func g() {
- if c { // disable inlining
- g()
- }
var s interface{}
_ = func() {
s := f()
@@ -47,31 +41,25 @@
useiface(s)
}
+//go:noinline
func useiface(x interface{}) {
- if c { // disable inlining
- useiface(x)
- }
}
+//go:noinline
func h() {
- if c { // disable inlining
- h()
- }
var x [16]uintptr
for i := range x {
x[i] = 1
}
-
+
useint(x[0])
useint(x[1])
useint(x[2])
useint(x[3])
}
+//go:noinline
func useint(x uintptr) {
- if c { // disable inlining
- useint(x)
- }
}
func main() {
@@ -85,6 +73,6 @@
func big(x int) {
if x >= 0 {
- big(x-1)
+ big(x - 1)
}
}
diff --git a/test/fixedbugs/bug485.go b/test/fixedbugs/bug485.go
index 1544753..c99faed 100644
--- a/test/fixedbugs/bug485.go
+++ b/test/fixedbugs/bug485.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug486.go b/test/fixedbugs/bug486.go
index c1a4723..9ad23b3 100644
--- a/test/fixedbugs/bug486.go
+++ b/test/fixedbugs/bug486.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug487.go b/test/fixedbugs/bug487.go
index eb1ad5e..e60af6c 100644
--- a/test/fixedbugs/bug487.go
+++ b/test/fixedbugs/bug487.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug488.dir/a.go b/test/fixedbugs/bug488.dir/a.go
index 94eaf7f..fc49420 100644
--- a/test/fixedbugs/bug488.dir/a.go
+++ b/test/fixedbugs/bug488.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug488.dir/b.go b/test/fixedbugs/bug488.dir/b.go
index 21b4c5b..f93328c 100644
--- a/test/fixedbugs/bug488.dir/b.go
+++ b/test/fixedbugs/bug488.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug488.go b/test/fixedbugs/bug488.go
index 63a601e..3912deb 100644
--- a/test/fixedbugs/bug488.go
+++ b/test/fixedbugs/bug488.go
@@ -1,6 +1,6 @@
// errorcheckdir
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug489.go b/test/fixedbugs/bug489.go
index 4cf19e0..34250cd 100644
--- a/test/fixedbugs/bug489.go
+++ b/test/fixedbugs/bug489.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug490.go b/test/fixedbugs/bug490.go
index 7d05f39..387a680 100644
--- a/test/fixedbugs/bug490.go
+++ b/test/fixedbugs/bug490.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug491.go b/test/fixedbugs/bug491.go
index f4b58af..39a3509 100644
--- a/test/fixedbugs/bug491.go
+++ b/test/fixedbugs/bug491.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/bug496.go b/test/fixedbugs/bug496.go
new file mode 100644
index 0000000..4307c75
--- /dev/null
+++ b/test/fixedbugs/bug496.go
@@ -0,0 +1,29 @@
+// compile
+
+// Copyright 2015 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.
+
+// Gccgo used to give an error:
+// <built-in>: error: redefinition of ‘s$F$hash’
+// <built-in>: note: previous definition of ‘s$F$hash’ was here
+// <built-in>: error: redefinition of ‘s$F$equal’
+// <built-in>: note: previous definition of ‘s$F$equal’ was here
+
+package p
+
+type T1 int
+
+func (t T1) F() {
+ type s struct {
+ f string
+ }
+}
+
+type T2 int
+
+func (t T2) F() {
+ type s struct {
+ f string
+ }
+}
diff --git a/test/fixedbugs/bug497.go b/test/fixedbugs/bug497.go
new file mode 100644
index 0000000..7081b1c
--- /dev/null
+++ b/test/fixedbugs/bug497.go
@@ -0,0 +1,28 @@
+// run
+
+// Copyright 2015 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.
+
+// Gccgo used to miscompile passing a global variable with a
+// zero-sized type to a function.
+
+package main
+
+type T struct {
+ field s
+}
+
+type s struct{}
+
+var X T
+
+func F(_ T, c interface{}) int {
+ return len(c.(string))
+}
+
+func main() {
+ if v := F(X, "hi"); v != 2 {
+ panic(v)
+ }
+}
diff --git a/test/fixedbugs/gcc61204.go b/test/fixedbugs/gcc61204.go
index 5a5bb16..e175f83 100644
--- a/test/fixedbugs/gcc61204.go
+++ b/test/fixedbugs/gcc61204.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61244.go b/test/fixedbugs/gcc61244.go
index 7fbc872..642bc61 100644
--- a/test/fixedbugs/gcc61244.go
+++ b/test/fixedbugs/gcc61244.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61246.go b/test/fixedbugs/gcc61246.go
index 4866570..797d6c7 100644
--- a/test/fixedbugs/gcc61246.go
+++ b/test/fixedbugs/gcc61246.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61248.go b/test/fixedbugs/gcc61248.go
index 593c634..cb59c9f 100644
--- a/test/fixedbugs/gcc61248.go
+++ b/test/fixedbugs/gcc61248.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61253.go b/test/fixedbugs/gcc61253.go
index dc125ac..696b26e 100644
--- a/test/fixedbugs/gcc61253.go
+++ b/test/fixedbugs/gcc61253.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61254.go b/test/fixedbugs/gcc61254.go
index 36ac7d4..82e666e 100644
--- a/test/fixedbugs/gcc61254.go
+++ b/test/fixedbugs/gcc61254.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61255.go b/test/fixedbugs/gcc61255.go
index a0e6d18..288fb54 100644
--- a/test/fixedbugs/gcc61255.go
+++ b/test/fixedbugs/gcc61255.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61258.go b/test/fixedbugs/gcc61258.go
index 8474665..e4dcb33 100644
--- a/test/fixedbugs/gcc61258.go
+++ b/test/fixedbugs/gcc61258.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61264.go b/test/fixedbugs/gcc61264.go
index d4e05f4..a4092f5 100644
--- a/test/fixedbugs/gcc61264.go
+++ b/test/fixedbugs/gcc61264.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61265.go b/test/fixedbugs/gcc61265.go
index 42fae36..be79233 100644
--- a/test/fixedbugs/gcc61265.go
+++ b/test/fixedbugs/gcc61265.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc61273.go b/test/fixedbugs/gcc61273.go
index 2983222..ed78b1e 100644
--- a/test/fixedbugs/gcc61273.go
+++ b/test/fixedbugs/gcc61273.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/gcc65755.go b/test/fixedbugs/gcc65755.go
index e76f4d1..1e5d116 100644
--- a/test/fixedbugs/gcc65755.go
+++ b/test/fixedbugs/gcc65755.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/gcc67968.dir/a.go b/test/fixedbugs/gcc67968.dir/a.go
new file mode 100644
index 0000000..9f51a7a
--- /dev/null
+++ b/test/fixedbugs/gcc67968.dir/a.go
@@ -0,0 +1,12 @@
+// Copyright 2015 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 a
+
+type T int
+
+func (a *T) Foo() [1]string {
+ var r [1]string
+ return r
+}
diff --git a/test/fixedbugs/gcc67968.dir/b.go b/test/fixedbugs/gcc67968.dir/b.go
new file mode 100644
index 0000000..41b62d2
--- /dev/null
+++ b/test/fixedbugs/gcc67968.dir/b.go
@@ -0,0 +1,12 @@
+// Copyright 2015 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 b
+
+import "./a"
+
+func F() (interface{}) {
+ var v *a.T
+ return v.Foo()
+}
diff --git a/test/fixedbugs/gcc67968.go b/test/fixedbugs/gcc67968.go
new file mode 100644
index 0000000..8db3dd8
--- /dev/null
+++ b/test/fixedbugs/gcc67968.go
@@ -0,0 +1,14 @@
+// compiledir
+
+// Copyright 2015 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.
+
+// https://gcc.gnu.org/PR67968
+
+// gccgo compiler crash building the equality and hash functions for a
+// type when a return statement requires a conversion to interface
+// type of a call of function defined in a different package that
+// returns an unnamed type.
+
+package ignored
diff --git a/test/fixedbugs/issue10047.go b/test/fixedbugs/issue10047.go
index 1cb9c24..dcbde48 100644
--- a/test/fixedbugs/issue10047.go
+++ b/test/fixedbugs/issue10047.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10284.go b/test/fixedbugs/issue10284.go
index e89d6f4..39028e7 100644
--- a/test/fixedbugs/issue10284.go
+++ b/test/fixedbugs/issue10284.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10320.go b/test/fixedbugs/issue10320.go
index 697aad1..c7e2bab 100644
--- a/test/fixedbugs/issue10320.go
+++ b/test/fixedbugs/issue10320.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10332.go b/test/fixedbugs/issue10332.go
index e00a8b4..096b7a5 100644
--- a/test/fixedbugs/issue10332.go
+++ b/test/fixedbugs/issue10332.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10407.go b/test/fixedbugs/issue10407.go
index fe033ef..c6461a3 100644
--- a/test/fixedbugs/issue10407.go
+++ b/test/fixedbugs/issue10407.go
@@ -1,6 +1,6 @@
// runoutput
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10441.go b/test/fixedbugs/issue10441.go
index 25832fa..9bc4948 100644
--- a/test/fixedbugs/issue10441.go
+++ b/test/fixedbugs/issue10441.go
@@ -11,7 +11,7 @@
foo(&f)
}
+//go:noinline
func foo(f *func()) func() {
- defer func() {}() // prevent inlining of foo
return *f
}
diff --git a/test/fixedbugs/issue10486.go b/test/fixedbugs/issue10486.go
index f346828..3b62cb9 100644
--- a/test/fixedbugs/issue10486.go
+++ b/test/fixedbugs/issue10486.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue10975.go b/test/fixedbugs/issue10975.go
new file mode 100644
index 0000000..b5f043f
--- /dev/null
+++ b/test/fixedbugs/issue10975.go
@@ -0,0 +1,18 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Issue 10975: Returning an invalid interface would cause
+// `internal compiler error: getinarg: not a func`.
+
+package main
+
+type I interface {
+ int // ERROR "interface contains embedded non-interface int"
+}
+
+func New() I {
+ return struct{}{}
+}
diff --git a/test/fixedbugs/issue11053.dir/p.go b/test/fixedbugs/issue11053.dir/p.go
index e431cb4..81b412a 100644
--- a/test/fixedbugs/issue11053.dir/p.go
+++ b/test/fixedbugs/issue11053.dir/p.go
@@ -1,4 +1,4 @@
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue11053.dir/p_test.go b/test/fixedbugs/issue11053.dir/p_test.go
index e0a9555..542c2a3 100644
--- a/test/fixedbugs/issue11053.dir/p_test.go
+++ b/test/fixedbugs/issue11053.dir/p_test.go
@@ -1,4 +1,4 @@
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue11326.go b/test/fixedbugs/issue11326.go
index fd1fab3..82754c7 100644
--- a/test/fixedbugs/issue11326.go
+++ b/test/fixedbugs/issue11326.go
@@ -1,28 +1,31 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
+// Tests for golang.org/issue/11326.
+
package main
-import "fmt"
-
func main() {
- var g = 1e81391777742999 // ERROR "exponent too large"
- // The next should only cause a problem when converted to float64
- // by the assignment, but instead the compiler rejects it outright,
- // rather than mishandle it. Specifically, when handled, 'var h' prints:
- // issue11326.go:N: constant 0.93342e+536870911 overflows float64
- // The rejection of 'var i' is just insurance. It seems to work correctly.
- // See golang.org/issue/11326.
- // var h = 1e2147483647 // should be "1.00000e+2147483647 overflows float64"
- var h = 1e2147483647 // ERROR "exponent too large"
- // var i = 1e214748364 // should be "1.00000e\+214748364 overflows float64"
- var i = 1e214748364 // ERROR "exponent too large"
- var j = 1e21474836 // ERROR "1.00000e\+21474836 overflows float64"
- var k = 1e2147483 // ERROR "1.00000e\+2147483 overflows float64"
- var l = 1e214748 // ERROR "1.00000e\+214748 overflows float64"
- var m = 1e21474 // ERROR "1.00000e\+21474 overflows float64"
- fmt.Println(g)
+ // The gc compiler implementation uses the minimally required 32bit
+ // binary exponent, so these constants cannot be represented anymore
+ // internally. However, the language spec does not preclude other
+ // implementations from handling these. Don't check the error.
+ // var _ = 1e2147483647 // "constant too large"
+ // var _ = 1e646456993 // "constant too large"
+
+ // Any implementation must be able to handle these constants at
+ // compile time (even though they cannot be assigned to a float64).
+ var _ = 1e646456992 // ERROR "1e\+646456992 overflows float64"
+ var _ = 1e64645699 // ERROR "1e\+64645699 overflows float64"
+ var _ = 1e6464569 // ERROR "1e\+6464569 overflows float64"
+ var _ = 1e646456 // ERROR "1e\+646456 overflows float64"
+ var _ = 1e64645 // ERROR "1e\+64645 overflows float64"
+ var _ = 1e6464 // ERROR "1e\+6464 overflows float64"
+ var _ = 1e646 // ERROR "1e\+646 overflows float64"
+ var _ = 1e309 // ERROR "1e\+309 overflows float64"
+
+ var _ = 1e308
}
diff --git a/test/fixedbugs/issue11326b.go b/test/fixedbugs/issue11326b.go
index 00effbc..8aba4d9 100644
--- a/test/fixedbugs/issue11326b.go
+++ b/test/fixedbugs/issue11326b.go
@@ -1,41 +1,41 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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
+// Tests for golang.org/issue/11326.
+
func main() {
- /* TODO(rsc): Should work but does not. See golang.org/issue/11326.
{
- const n = 1e2147483647
- const d = 1e2147483646
+ const n = 1e646456992
+ const d = 1e646456991
x := n / d
if x != 10.0 {
println("incorrect value:", x)
}
}
{
- const n = 1e214748364
- const d = 1e214748363
- x := n / d
- if x != 10.0 {
- println("incorrect value:", x)
- }
- }
- */
- {
- const n = 1e21474836
- const d = 1e21474835
+ const n = 1e64645699
+ const d = 1e64645698
x := n / d
if x != 10.0 {
println("incorrect value:", x)
}
}
{
- const n = 1e2147483
- const d = 1e2147482
+ const n = 1e6464569
+ const d = 1e6464568
+ x := n / d
+ if x != 10.0 {
+ println("incorrect value:", x)
+ }
+ }
+ {
+ const n = 1e646456
+ const d = 1e646455
x := n / d
if x != 10.0 {
println("incorrect value:", x)
diff --git a/test/fixedbugs/issue11359.go b/test/fixedbugs/issue11359.go
new file mode 100644
index 0000000..6ffffed
--- /dev/null
+++ b/test/fixedbugs/issue11359.go
@@ -0,0 +1,11 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// identifiers beginning with non-ASCII digits were incorrectly accepted.
+// issue 11359.
+
+package p
+var Û¶ = 0 // ERROR "identifier cannot begin with digit"
diff --git a/test/fixedbugs/issue11361.go b/test/fixedbugs/issue11361.go
new file mode 100644
index 0000000..d01776b
--- /dev/null
+++ b/test/fixedbugs/issue11361.go
@@ -0,0 +1,11 @@
+// errorcheck
+
+// Copyright 2016 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 a
+
+import "fmt" // ERROR "imported and not used"
+
+const n = fmt // ERROR "fmt without selector" "fmt is not a constant"
diff --git a/test/fixedbugs/issue11362.go b/test/fixedbugs/issue11362.go
new file mode 100644
index 0000000..9e9e599
--- /dev/null
+++ b/test/fixedbugs/issue11362.go
@@ -0,0 +1,15 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Issue 11362: prints empty canonical import path
+
+package main
+
+import _ "unicode//utf8" // ERROR "non-canonical import path .unicode//utf8. \(should be .unicode/utf8.\)" "can't find import: .unicode//utf8."
+
+func main() {
+}
+
diff --git a/test/fixedbugs/issue11590.go b/test/fixedbugs/issue11590.go
new file mode 100644
index 0000000..0934547
--- /dev/null
+++ b/test/fixedbugs/issue11590.go
@@ -0,0 +1,11 @@
+// errorcheck
+
+// Copyright 2015 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 p
+
+var _ = int8(4) * 300 // ERROR "constant 300 overflows int8" "constant 1200 overflows int8"
+var _ = complex64(1) * 1e200 // ERROR "constant 1e\+200 overflows complex64"
+var _ = complex128(1) * 1e500 // ERROR "constant 1e\+500 overflows complex128"
diff --git a/test/fixedbugs/issue11610.go b/test/fixedbugs/issue11610.go
new file mode 100644
index 0000000..f32d480
--- /dev/null
+++ b/test/fixedbugs/issue11610.go
@@ -0,0 +1,17 @@
+// errorcheck
+
+// Copyright 2015 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 an internal compiler error on ? symbol in declaration
+// following an empty import.
+
+package a
+import"" // ERROR "import path is empty"
+var? // ERROR "illegal character U\+003F '\?'"
+
+var x int // ERROR "unexpected var" "cannot declare name"
+
+func main() {
+}
diff --git a/test/fixedbugs/issue11614.go b/test/fixedbugs/issue11614.go
new file mode 100644
index 0000000..959643a
--- /dev/null
+++ b/test/fixedbugs/issue11614.go
@@ -0,0 +1,26 @@
+// errorcheck
+
+// Copyright 2015 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 that incorrect expressions involving wrong anonymous interface
+// do not generate panics in Type Stringer.
+// Does not compile.
+
+package main
+
+type I interface {
+ int // ERROR "interface contains embedded non-interface int"
+}
+
+func n() {
+ (I) // ERROR "type I is not an expression"
+}
+
+func m() {
+ (interface{int}) // ERROR "interface contains embedded non-interface int" "type interface { int } is not an expression"
+}
+
+func main() {
+}
diff --git a/test/fixedbugs/issue11656.go b/test/fixedbugs/issue11656.go
index 90385bb..e0ef097 100644
--- a/test/fixedbugs/issue11656.go
+++ b/test/fixedbugs/issue11656.go
@@ -1,29 +1,18 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
-// darwin/386 seems to mangle the PC and SP before
-// it manages to invoke the signal handler, so this test fails there.
-// +build !darwin !386
-//
-// openbsd/386 and netbsd/386 don't work, not sure why.
-// +build !openbsd !386
-// +build !netbsd !386
-//
// windows doesn't work, because Windows exception handling
// delivers signals based on the current PC, and that current PC
// doesn't go into the Go runtime.
// +build !windows
-//
-// arm64 gets "illegal instruction" (why is the data executable?)
-// and is unable to do the traceback correctly (why?).
-// +build !arm64
package main
import (
+ "encoding/binary"
"runtime"
"runtime/debug"
"unsafe"
@@ -56,7 +45,33 @@
var f struct {
x uintptr
}
- f.x = uintptr(unsafe.Pointer(&f))
+
+ // We want to force an illegal instruction, to get a crash
+ // at a PC value != 0.
+ // Not all systems make the data section non-executable.
+ ill := make([]byte, 64)
+ switch runtime.GOARCH {
+ case "386", "amd64":
+ binary.LittleEndian.PutUint16(ill, 0x0b0f) // ud2
+ case "arm":
+ binary.LittleEndian.PutUint32(ill, 0xe7f000f0) // no name, but permanently undefined
+ case "arm64":
+ binary.LittleEndian.PutUint32(ill, 0xd4207d00) // brk #1000
+ case "ppc64":
+ binary.BigEndian.PutUint32(ill, 0x7fe00008) // trap
+ case "ppc64le":
+ binary.LittleEndian.PutUint32(ill, 0x7fe00008) // trap
+ case "mips64":
+ binary.BigEndian.PutUint32(ill, 0x00000034) // trap
+ case "mips64le":
+ binary.LittleEndian.PutUint32(ill, 0x00000034) // trap
+ case "s390x":
+ binary.BigEndian.PutUint32(ill, 0) // undefined instruction
+ default:
+ // Just leave it as 0 and hope for the best.
+ }
+
+ f.x = uintptr(unsafe.Pointer(&ill[0]))
fn := *(*func())(unsafe.Pointer(&f))
fn()
}
diff --git a/test/fixedbugs/issue11699.go b/test/fixedbugs/issue11699.go
new file mode 100644
index 0000000..755e9a1
--- /dev/null
+++ b/test/fixedbugs/issue11699.go
@@ -0,0 +1,12 @@
+// compile
+
+// Copyright 2015 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.
+
+// issue 11699; used to fail with duplicate _.args_stackmap symbols.
+
+package p
+
+func _()
+func _()
diff --git a/test/fixedbugs/issue11737.go b/test/fixedbugs/issue11737.go
new file mode 100644
index 0000000..86ecf9a
--- /dev/null
+++ b/test/fixedbugs/issue11737.go
@@ -0,0 +1,17 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Issue 11737 - invalid == not being caught until generated switch code was compiled
+
+package p
+
+func f()
+
+func s(x interface{}) {
+ switch x {
+ case f: // ERROR "invalid case f \(type func\(\)\) in switch \(incomparable type\)"
+ }
+}
diff --git a/test/fixedbugs/issue11750.go b/test/fixedbugs/issue11750.go
index 5e6fe60..d5a2b22 100644
--- a/test/fixedbugs/issue11750.go
+++ b/test/fixedbugs/issue11750.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue11771.go b/test/fixedbugs/issue11771.go
index 7691ca6..d91fc5d 100644
--- a/test/fixedbugs/issue11771.go
+++ b/test/fixedbugs/issue11771.go
@@ -1,7 +1,7 @@
// +build !nacl
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue11790.go b/test/fixedbugs/issue11790.go
index d7669f8..096b297 100644
--- a/test/fixedbugs/issue11790.go
+++ b/test/fixedbugs/issue11790.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue11987.go b/test/fixedbugs/issue11987.go
new file mode 100644
index 0000000..9b665dc
--- /dev/null
+++ b/test/fixedbugs/issue11987.go
@@ -0,0 +1,23 @@
+// run
+
+// Copyright 2015 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.
+
+// Issue 11987. The ppc64 SRADCC instruction was misassembled in a way
+// lost bit 5 of the immediate so v>>32 was assembled as v>>0. SRADCC
+// is only ever inserted by peep so it's hard to be sure when it will
+// be used. This formulation worked when the bug was fixed.
+
+package main
+
+import "fmt"
+
+var v int64 = 0x80000000
+
+func main() {
+ s := fmt.Sprintf("%v", v>>32 == 0)
+ if s != "true" {
+ fmt.Printf("BUG: v>>32 == 0 evaluated as %q\n", s)
+ }
+}
diff --git a/test/fixedbugs/issue12006.go b/test/fixedbugs/issue12006.go
new file mode 100644
index 0000000..9d81a04
--- /dev/null
+++ b/test/fixedbugs/issue12006.go
@@ -0,0 +1,174 @@
+// errorcheck -0 -m -l
+
+// Copyright 2015 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 escape analysis through ... parameters.
+
+package foo
+
+func FooN(vals ...*int) (s int) { // ERROR "FooN vals does not escape"
+ for _, v := range vals {
+ s += *v
+ }
+ return s
+}
+
+// Append forces heap allocation and copies entries in vals to heap, therefore they escape to heap.
+func FooNx(x *int, vals ...*int) (s int) { // ERROR "leaking param: x" "leaking param content: vals"
+ vals = append(vals, x)
+ return FooN(vals...)
+}
+
+var sink []*int
+
+func FooNy(x *int, vals ...*int) (s int) { // ERROR "leaking param: x" "leaking param: vals" "leaking param content: vals"
+ vals = append(vals, x)
+ sink = vals
+ return FooN(vals...)
+}
+
+func FooNz(vals ...*int) (s int) { // ERROR "leaking param: vals"
+ sink = vals
+ return FooN(vals...)
+}
+
+func TFooN() {
+ for i := 0; i < 1000; i++ {
+ var i, j int
+ FooN(&i, &j) // ERROR "TFooN &i does not escape" "TFooN &j does not escape" "TFooN ... argument does not escape"
+ }
+}
+
+func TFooNx() {
+ for i := 0; i < 1000; i++ {
+ var i, j, k int // ERROR "moved to heap: i" "moved to heap: j" "moved to heap: k"
+ FooNx(&k, &i, &j) // ERROR "&k escapes to heap" "&i escapes to heap" "&j escapes to heap" "TFooNx ... argument does not escape"
+ }
+}
+
+func TFooNy() {
+ for i := 0; i < 1000; i++ {
+ var i, j, k int // ERROR "moved to heap: i" "moved to heap: j" "moved to heap: k"
+ FooNy(&k, &i, &j) // ERROR "&i escapes to heap" "&j escapes to heap" "&k escapes to heap" "... argument escapes to heap"
+ }
+}
+
+func TFooNz() {
+ for i := 0; i < 1000; i++ {
+ var i, j int // ERROR "moved to heap: i" "moved to heap: j"
+ FooNz(&i, &j) // ERROR "&i escapes to heap" "&j escapes to heap" "... argument escapes to heap"
+ }
+}
+
+var isink *int32
+
+func FooI(args ...interface{}) { // ERROR "leaking param content: args"
+ for i := 0; i < len(args); i++ {
+ switch x := args[i].(type) {
+ case nil:
+ println("is nil")
+ case int32:
+ println("is int32")
+ case *int32:
+ println("is *int32")
+ isink = x
+ case string:
+ println("is string")
+ }
+ }
+}
+
+func TFooI() {
+ a := int32(1) // ERROR "moved to heap: a"
+ b := "cat"
+ c := &a // ERROR "&a escapes to heap"
+ FooI(a, b, c) // ERROR "a escapes to heap" "b escapes to heap" "c escapes to heap" "TFooI ... argument does not escape"
+}
+
+func FooJ(args ...interface{}) *int32 { // ERROR "leaking param: args to result ~r1 level=1"
+ for i := 0; i < len(args); i++ {
+ switch x := args[i].(type) {
+ case nil:
+ println("is nil")
+ case int32:
+ println("is int32")
+ case *int32:
+ println("is *int32")
+ return x
+ case string:
+ println("is string")
+ }
+ }
+ return nil
+}
+
+func TFooJ1() {
+ a := int32(1)
+ b := "cat"
+ c := &a // ERROR "TFooJ1 &a does not escape"
+ FooJ(a, b, c) // ERROR "TFooJ1 a does not escape" "TFooJ1 b does not escape" "TFooJ1 c does not escape" "TFooJ1 ... argument does not escape"
+}
+
+func TFooJ2() {
+ a := int32(1) // ERROR "moved to heap: a"
+ b := "cat"
+ c := &a // ERROR "&a escapes to heap"
+ isink = FooJ(a, b, c) // ERROR "a escapes to heap" "b escapes to heap" "c escapes to heap" "TFooJ2 ... argument does not escape"
+}
+
+type fakeSlice struct {
+ l int
+ a *[4]interface{}
+}
+
+func FooK(args fakeSlice) *int32 { // ERROR "leaking param: args to result ~r1 level=1"
+ for i := 0; i < args.l; i++ {
+ switch x := (*args.a)[i].(type) {
+ case nil:
+ println("is nil")
+ case int32:
+ println("is int32")
+ case *int32:
+ println("is *int32")
+ return x
+ case string:
+ println("is string")
+ }
+ }
+ return nil
+}
+
+func TFooK2() {
+ a := int32(1) // ERROR "moved to heap: a"
+ b := "cat"
+ c := &a // ERROR "&a escapes to heap"
+ fs := fakeSlice{3, &[4]interface{}{a, b, c, nil}} // ERROR "a escapes to heap" "b escapes to heap" "c escapes to heap" "TFooK2 &\[4\]interface {} literal does not escape"
+ isink = FooK(fs)
+}
+
+func FooL(args []interface{}) *int32 { // ERROR "leaking param: args to result ~r1 level=1"
+ for i := 0; i < len(args); i++ {
+ switch x := args[i].(type) {
+ case nil:
+ println("is nil")
+ case int32:
+ println("is int32")
+ case *int32:
+ println("is *int32")
+ return x
+ case string:
+ println("is string")
+ }
+ }
+ return nil
+}
+
+func TFooL2() {
+ a := int32(1) // ERROR "moved to heap: a"
+ b := "cat"
+ c := &a // ERROR "&a escapes to heap"
+ s := []interface{}{a, b, c} // ERROR "a escapes to heap" "b escapes to heap" "c escapes to heap" "TFooL2 \[\]interface {} literal does not escape"
+ isink = FooL(s)
+}
diff --git a/test/fixedbugs/issue12108.go b/test/fixedbugs/issue12108.go
new file mode 100644
index 0000000..c7a7425
--- /dev/null
+++ b/test/fixedbugs/issue12108.go
@@ -0,0 +1,37 @@
+// run
+
+// Copyright 2015 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.
+
+// A generated method with a return value large enough to be
+// initialized by duffzero is not a leaf method, which violated
+// assumptions made by cmd/internal/obj/ppc64.
+
+package main
+
+const N = 9 // values > 8 cause (Super).Method to use duffzero
+
+type Base struct {
+}
+
+func (b *Base) Method() (x [N]uintptr) {
+ return
+}
+
+type Super struct {
+ Base
+}
+
+type T interface {
+ Method() [N]uintptr
+}
+
+func f(q T) {
+ q.Method()
+}
+
+func main() {
+ var s Super
+ f(&s)
+}
diff --git a/test/fixedbugs/issue12133.go b/test/fixedbugs/issue12133.go
index 0b66c56..bbf9fb0 100644
--- a/test/fixedbugs/issue12133.go
+++ b/test/fixedbugs/issue12133.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
@@ -19,8 +19,8 @@
panic("bad")
}
}
+
+//go:noinline
func f1(v1 uint) uint {
- switch {
- } // prevent inlining
return v1 >> ((1 >> v1) + (1 >> v1))
}
diff --git a/test/fixedbugs/issue12347.go b/test/fixedbugs/issue12347.go
new file mode 100644
index 0000000..fc5678e
--- /dev/null
+++ b/test/fixedbugs/issue12347.go
@@ -0,0 +1,16 @@
+// compile
+
+// Copyright 2015 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 p
+
+func f_ssa(x int, p *int) {
+ if false {
+ y := x + 5
+ for {
+ *p = y
+ }
+ }
+}
diff --git a/test/fixedbugs/issue12411.go b/test/fixedbugs/issue12411.go
new file mode 100644
index 0000000..ff49314
--- /dev/null
+++ b/test/fixedbugs/issue12411.go
@@ -0,0 +1,24 @@
+// +build !386
+// run
+
+// Copyright 2015 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.
+
+// Issue 12411. Loss of AX during %.
+
+package main
+
+func main() {
+ x := f(4)
+ if x != 0 {
+ println("BUG: x=", x)
+ }
+}
+
+//go:noinline
+func f(x int) int {
+ // AX was live on entry to one of the % code generations,
+ // and the % code generation smashed it.
+ return ((2 * x) % 3) % (2 % ((x << 2) ^ (x % 3)))
+}
diff --git a/test/fixedbugs/issue12413.go b/test/fixedbugs/issue12413.go
new file mode 100644
index 0000000..a054765
--- /dev/null
+++ b/test/fixedbugs/issue12413.go
@@ -0,0 +1,19 @@
+// compile
+
+// Copyright 2015 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.
+
+// issue 12413: invalid variable name x in type switch: code would fail
+// to compile if the variable used in the short variable declaration was
+// previously declared as a constant.
+
+package main
+
+func main() {
+ const x = 42
+ switch x := interface{}(nil).(type) {
+ default:
+ _ = x
+ }
+}
diff --git a/test/fixedbugs/issue12525.go b/test/fixedbugs/issue12525.go
new file mode 100644
index 0000000..4a54eab
--- /dev/null
+++ b/test/fixedbugs/issue12525.go
@@ -0,0 +1,26 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Issue 12525: confusing error trying to increment boolean value
+
+package main
+
+func main() {
+ var i int
+ i++
+
+ var f float64
+ f++
+
+ var c complex128
+ c++
+
+ var b bool
+ b++ // ERROR "invalid operation: b\+\+ \(non-numeric type bool\)"
+
+ var s string
+ s-- // ERROR "invalid operation: s-- \(non-numeric type string\)"
+}
diff --git a/test/fixedbugs/issue12577.go b/test/fixedbugs/issue12577.go
new file mode 100644
index 0000000..249b4f2
--- /dev/null
+++ b/test/fixedbugs/issue12577.go
@@ -0,0 +1,66 @@
+// run
+
+// Copyright 2015 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.
+
+// Issue 12577: Test that there are no -0 floating-point constants.
+
+package main
+
+import "math"
+
+const (
+ z0 = 0.0
+ z1 = -0.0
+ z2 = -z0
+ z3 = -z2
+)
+
+var (
+ x0 float32 = z0
+ x1 float32 = z1
+ x2 float32 = z2
+ x3 float32 = z3
+
+ y0 float64 = z0
+ y1 float64 = z1
+ y2 float64 = z2
+ y3 float64 = z3
+)
+
+func test32(f float32) {
+ if f != 0 || math.Signbit(float64(f)) {
+ println("BUG: got", f, "want 0.0")
+ return
+ }
+}
+
+func test64(f float64) {
+ if f != 0 || math.Signbit(f) {
+ println("BUG: got", f, "want 0.0")
+ return
+ }
+}
+
+func main() {
+ if f := -x0; f != 0 || !math.Signbit(float64(f)) {
+ println("BUG: got", f, "want -0.0")
+ }
+
+ test32(-0.0)
+ test32(x0)
+ test32(x1)
+ test32(x2)
+ test32(x3)
+
+ if f := -y0; f != 0 || !math.Signbit(f) {
+ println("BUG: got", f, "want -0.0")
+ }
+
+ test64(-0.0)
+ test64(y0)
+ test64(y1)
+ test64(y2)
+ test64(y3)
+}
diff --git a/test/fixedbugs/issue12588.go b/test/fixedbugs/issue12588.go
new file mode 100644
index 0000000..87f1d47
--- /dev/null
+++ b/test/fixedbugs/issue12588.go
@@ -0,0 +1,88 @@
+// errorcheck -0 -m -l
+
+// Copyright 2015 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.
+
+// Tests escape analysis for range of arrays.
+// Compiles but need not run. Inlining is disabled.
+
+package main
+
+type A struct {
+ b [3]uint64
+}
+
+type B struct {
+ b [3]*uint64
+}
+
+func f(a A) int {
+ for i, x := range &a.b { // ERROR "f &a.b does not escape"
+ if x != 0 {
+ return 64*i + int(x)
+ }
+ }
+ return 0
+}
+
+func g(a *A) int { // ERROR "g a does not escape"
+ for i, x := range &a.b { // ERROR "g &a.b does not escape"
+ if x != 0 {
+ return 64*i + int(x)
+ }
+ }
+ return 0
+}
+
+func h(a *B) *uint64 { // ERROR "leaking param: a to result ~r1 level=1"
+ for i, x := range &a.b { // ERROR "h &a.b does not escape"
+ if i == 0 {
+ return x
+ }
+ }
+ return nil
+}
+
+func h2(a *B) *uint64 { // ERROR "leaking param: a to result ~r1 level=1"
+ p := &a.b // ERROR "h2 &a.b does not escape"
+ for i, x := range p {
+ if i == 0 {
+ return x
+ }
+ }
+ return nil
+}
+
+// Seems like below should be level=1, not 0.
+func k(a B) *uint64 { // ERROR "leaking param: a to result ~r1 level=0"
+ for i, x := range &a.b { // ERROR "k &a.b does not escape"
+ if i == 0 {
+ return x
+ }
+ }
+ return nil
+}
+
+var sink *uint64
+
+func main() {
+ var a1, a2 A
+ var b1, b2, b3, b4 B
+ var x1, x2, x3, x4 uint64 // ERROR "moved to heap: x1" "moved to heap: x3"
+ b1.b[0] = &x1 // ERROR "&x1 escapes to heap"
+ b2.b[0] = &x2 // ERROR "main &x2 does not escape"
+ b3.b[0] = &x3 // ERROR "&x3 escapes to heap"
+ b4.b[0] = &x4 // ERROR "main &x4 does not escape"
+ f(a1)
+ g(&a2) // ERROR "main &a2 does not escape"
+ sink = h(&b1) // ERROR "main &b1 does not escape"
+ h(&b2) // ERROR "main &b2 does not escape"
+ sink = h2(&b1) // ERROR "main &b1 does not escape"
+ h2(&b4) // ERROR "main &b4 does not escape"
+ x1 = 17
+ println("*sink=", *sink) // Verify that sink addresses x1
+ x3 = 42
+ sink = k(b3)
+ println("*sink=", *sink) // Verify that sink addresses x3
+}
diff --git a/test/fixedbugs/issue12677.dir/p.go b/test/fixedbugs/issue12677.dir/p.go
new file mode 100644
index 0000000..e395071
--- /dev/null
+++ b/test/fixedbugs/issue12677.dir/p.go
@@ -0,0 +1,8 @@
+// Copyright 2015 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 p
+func Baz(f int) float64 {
+ return 1 / float64(int(1)<<(uint(f)))
+}
diff --git a/test/fixedbugs/issue12677.dir/q.go b/test/fixedbugs/issue12677.dir/q.go
new file mode 100644
index 0000000..fd39c8a
--- /dev/null
+++ b/test/fixedbugs/issue12677.dir/q.go
@@ -0,0 +1,7 @@
+// Copyright 2015 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 q
+import "./p"
+func f() { println(p.Baz(2)) }
diff --git a/test/fixedbugs/issue12677.go b/test/fixedbugs/issue12677.go
new file mode 100644
index 0000000..6ad7161
--- /dev/null
+++ b/test/fixedbugs/issue12677.go
@@ -0,0 +1,9 @@
+// compiledir
+
+// Copyright 2015 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.
+
+// Issue 12677: Type loss during export/import of inlined function body.
+
+package ignored
diff --git a/test/fixedbugs/issue12686.go b/test/fixedbugs/issue12686.go
new file mode 100644
index 0000000..bde4255
--- /dev/null
+++ b/test/fixedbugs/issue12686.go
@@ -0,0 +1,16 @@
+// compile
+
+// Copyright 2015 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.
+
+// golang.org/issue/12686.
+// interesting because it's a non-constant but ideal value
+// and we used to incorrectly attach a constant Val to the Node.
+
+package p
+
+func f(i uint) uint {
+ x := []uint{1 << i}
+ return x[0]
+}
diff --git a/test/fixedbugs/issue12944.go b/test/fixedbugs/issue12944.go
new file mode 100644
index 0000000..59379f1
--- /dev/null
+++ b/test/fixedbugs/issue12944.go
@@ -0,0 +1,13 @@
+// errorcheck
+
+// Copyright 2015 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
+
+import "unsafe"
+
+const (
+ _ = unsafe.Sizeof([0]byte{}[0]) // ERROR "out of bounds"
+)
diff --git a/test/fixedbugs/issue1304.go b/test/fixedbugs/issue1304.go
index 1206e18..9e0ca5a 100644
--- a/test/fixedbugs/issue1304.go
+++ b/test/fixedbugs/issue1304.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue13160.go b/test/fixedbugs/issue13160.go
new file mode 100644
index 0000000..c21ecf6
--- /dev/null
+++ b/test/fixedbugs/issue13160.go
@@ -0,0 +1,70 @@
+// run
+
+// Copyright 2015 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
+
+import (
+ "fmt"
+ "runtime"
+)
+
+const N = 100000
+
+func main() {
+ // Allocate more Ps than processors. This raises
+ // the chance that we get interrupted by the OS
+ // in exactly the right (wrong!) place.
+ p := runtime.NumCPU()
+ runtime.GOMAXPROCS(2 * p)
+
+ // Allocate some pointers.
+ ptrs := make([]*int, p)
+ for i := 0; i < p; i++ {
+ ptrs[i] = new(int)
+ }
+
+ // Arena where we read and write pointers like crazy.
+ collider := make([]*int, p)
+
+ done := make(chan struct{}, 2*p)
+
+ // Start writers. They alternately write a pointer
+ // and nil to a slot in the collider.
+ for i := 0; i < p; i++ {
+ i := i
+ go func() {
+ for j := 0; j < N; j++ {
+ // Write a pointer using memmove.
+ copy(collider[i:i+1], ptrs[i:i+1])
+ // Write nil using memclr.
+ // (This is a magic loop that gets lowered to memclr.)
+ r := collider[i : i+1]
+ for k := range r {
+ r[k] = nil
+ }
+ }
+ done <- struct{}{}
+ }()
+ }
+ // Start readers. They read pointers from slots
+ // and make sure they are valid.
+ for i := 0; i < p; i++ {
+ i := i
+ go func() {
+ for j := 0; j < N; j++ {
+ var ptr [1]*int
+ copy(ptr[:], collider[i:i+1])
+ if ptr[0] != nil && ptr[0] != ptrs[i] {
+ panic(fmt.Sprintf("bad pointer read %p!", ptr[0]))
+ }
+ }
+ done <- struct{}{}
+ }()
+ }
+ for i := 0; i < 2*p; i++ {
+ <-done
+ }
+}
diff --git a/test/fixedbugs/issue13169.go b/test/fixedbugs/issue13169.go
new file mode 100644
index 0000000..03c52e2
--- /dev/null
+++ b/test/fixedbugs/issue13169.go
@@ -0,0 +1,49 @@
+// run
+
+// Copyright 2015 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
+
+type T struct {
+ a, b, c int
+}
+
+func usestack() {
+ usestack1(32)
+}
+func usestack1(d int) byte {
+ if d == 0 {
+ return 0
+ }
+ var b [1024]byte
+ usestack1(d - 1)
+ return b[3]
+}
+
+const n = 100000
+
+func main() {
+ c := make(chan interface{})
+ done := make(chan bool)
+
+ for i := 0; i < 10; i++ {
+ go func() {
+ for j := 0; j < n; j++ {
+ c <- new(T)
+ }
+ done <- true
+ }()
+ go func() {
+ for j := 0; j < n; j++ {
+ _ = (<-c).(*T)
+ usestack()
+ }
+ done <- true
+ }()
+ }
+ for i := 0; i < 20; i++ {
+ <-done
+ }
+}
diff --git a/test/fixedbugs/issue13171.go b/test/fixedbugs/issue13171.go
new file mode 100644
index 0000000..5d127a5
--- /dev/null
+++ b/test/fixedbugs/issue13171.go
@@ -0,0 +1,34 @@
+// run
+
+// Copyright 2015 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
+
+// Make sure the compiler knows that DUFFCOPY clobbers X0
+
+import "fmt"
+
+//go:noinline
+func f(x float64) float64 {
+ // y is allocated to X0
+ y := x + 5
+ // marshals z before y. Marshalling z
+ // calls DUFFCOPY.
+ return g(z, y)
+}
+
+//go:noinline
+func g(b [64]byte, y float64) float64 {
+ return y
+}
+
+var z [64]byte
+
+func main() {
+ got := f(5)
+ if got != 10 {
+ panic(fmt.Sprintf("want 10, got %f", got))
+ }
+}
diff --git a/test/fixedbugs/issue13248.go b/test/fixedbugs/issue13248.go
new file mode 100644
index 0000000..5246281
--- /dev/null
+++ b/test/fixedbugs/issue13248.go
@@ -0,0 +1,13 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// This program caused an infinite loop with the recursive-descent parser.
+
+package main
+
+func main() {
+ foo(
+} // ERROR "unexpected }"
diff --git a/test/fixedbugs/issue13261.go b/test/fixedbugs/issue13261.go
new file mode 100644
index 0000000..a944f3a
--- /dev/null
+++ b/test/fixedbugs/issue13261.go
@@ -0,0 +1,29 @@
+// compile
+
+// Copyright 2015 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.
+
+// Taking the address of a parenthesized composite literal is permitted.
+
+package main
+
+type T struct{}
+
+func main() {
+ _ = &T{}
+ _ = &(T{})
+ _ = &((T{}))
+
+ _ = &struct{}{}
+ _ = &(struct{}{})
+ _ = &((struct{}{}))
+
+ switch (&T{}) {}
+ switch &(T{}) {}
+ switch &((T{})) {}
+
+ switch &struct{}{} {}
+ switch &(struct{}{}) {}
+ switch &((struct{}{})) {}
+}
diff --git a/test/fixedbugs/issue13266.go b/test/fixedbugs/issue13266.go
new file mode 100644
index 0000000..37c5594
--- /dev/null
+++ b/test/fixedbugs/issue13266.go
@@ -0,0 +1,10 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Offending character % must not be interpreted as
+// start of format verb when emitting error message.
+
+package% // ERROR "unexpected %"
diff --git a/test/fixedbugs/issue13268.go b/test/fixedbugs/issue13268.go
new file mode 100644
index 0000000..2a063fa
--- /dev/null
+++ b/test/fixedbugs/issue13268.go
@@ -0,0 +1,48 @@
+// run
+
+// Copyright 2015 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 error message when EOF is encountered in the
+// middle of a BOM.
+//
+// Since the error requires an EOF, we cannot use the
+// errorcheckoutput mechanism.
+
+package main
+
+import (
+ "io/ioutil"
+ "log"
+ "os"
+ "os/exec"
+ "runtime"
+ "strings"
+)
+
+func main() {
+ // cannot use temp file on nacl via child process
+ if runtime.GOOS == "nacl" {
+ return
+ }
+
+ // create source
+ f, err := ioutil.TempFile("", "issue13268-")
+ if err != nil {
+ log.Fatalf("could not create source file: %v", err)
+ }
+ f.Write([]byte("package p\n\nfunc \xef\xef")) // if this fails, we will die later
+ f.Close()
+ defer os.Remove(f.Name())
+
+ // compile and test output
+ cmd := exec.Command("go", "tool", "compile", f.Name())
+ out, err := cmd.CombinedOutput()
+ if err == nil {
+ log.Fatalf("expected cmd/compile to fail")
+ }
+ if strings.HasPrefix(string(out), "illegal UTF-8 sequence") {
+ log.Fatalf("error %q not found", out)
+ }
+}
diff --git a/test/fixedbugs/issue13273.go b/test/fixedbugs/issue13273.go
new file mode 100644
index 0000000..f8f679d
--- /dev/null
+++ b/test/fixedbugs/issue13273.go
@@ -0,0 +1,55 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Check that we correctly construct (and report errors)
+// for unary expressions of the form <-x where we only
+// know after parsing x whether <-x is a receive operation
+// or a channel type.
+
+package n
+
+func f() {
+ // test case from issue 13273
+ <-chan int((chan int)(nil))
+
+ <-chan int(nil)
+ <-chan chan int(nil)
+ <-chan chan chan int(nil)
+ <-chan chan chan chan int(nil)
+ <-chan chan chan chan chan int(nil)
+
+ <-chan<-chan int(nil)
+ <-chan<-chan<-chan int(nil)
+ <-chan<-chan<-chan<-chan int(nil)
+ <-chan<-chan<-chan<-chan<-chan int(nil)
+
+ <-chan (<-chan int)(nil)
+ <-chan (<-chan (<-chan int))(nil)
+ <-chan (<-chan (<-chan (<-chan int)))(nil)
+ <-chan (<-chan (<-chan (<-chan (<-chan int))))(nil)
+
+ <-(<-chan int)(nil)
+ <-(<-chan chan int)(nil)
+ <-(<-chan chan chan int)(nil)
+ <-(<-chan chan chan chan int)(nil)
+ <-(<-chan chan chan chan chan int)(nil)
+
+ <-(<-chan<-chan int)(nil)
+ <-(<-chan<-chan<-chan int)(nil)
+ <-(<-chan<-chan<-chan<-chan int)(nil)
+ <-(<-chan<-chan<-chan<-chan<-chan int)(nil)
+
+ <-(<-chan (<-chan int))(nil)
+ <-(<-chan (<-chan (<-chan int)))(nil)
+ <-(<-chan (<-chan (<-chan (<-chan int))))(nil)
+ <-(<-chan (<-chan (<-chan (<-chan (<-chan int)))))(nil)
+
+ type _ <-<-chan int // ERROR "unexpected <-, expecting chan"
+ <-<-chan int // ERROR "unexpected <-, expecting chan|expecting {" (new parser: same error as for type decl)
+
+ type _ <-chan<-int // ERROR "unexpected int, expecting chan|expecting chan"
+ <-chan<-int // ERROR "unexpected int, expecting chan|expecting {" (new parser: same error as for type decl)
+}
diff --git a/test/fixedbugs/issue13274.go b/test/fixedbugs/issue13274.go
new file mode 100644
index 0000000..480f5bc
--- /dev/null
+++ b/test/fixedbugs/issue13274.go
@@ -0,0 +1,11 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Check that we don't ignore EOF.
+
+package p
+
+var f = func() { // ERROR "unexpected EOF"
\ No newline at end of file
diff --git a/test/fixedbugs/issue13319.go b/test/fixedbugs/issue13319.go
new file mode 100644
index 0000000..c9b4896
--- /dev/null
+++ b/test/fixedbugs/issue13319.go
@@ -0,0 +1,18 @@
+// errorcheck
+
+// Copyright 2015 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
+
+func f(int, int) {
+ switch x {
+ case 1:
+ f(1, g() // ERROR "expecting \)|expecting comma or \)"
+ case 2:
+ f()
+ case 3:
+ f(1, g() // ERROR "expecting \)|expecting comma or \)"
+ }
+}
diff --git a/test/fixedbugs/issue13337.go b/test/fixedbugs/issue13337.go
new file mode 100644
index 0000000..81f984b
--- /dev/null
+++ b/test/fixedbugs/issue13337.go
@@ -0,0 +1,30 @@
+// compile
+
+// Copyright 2016 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.
+
+// Issue 13337: The Go compiler limited how deeply embedded types
+// were searched for promoted fields and methods.
+
+package s
+
+type S0 struct{ f int }
+func (S0) m() {}
+
+type S1 struct{ S0 }
+type S2 struct{ S1 }
+type S3 struct{ S2 }
+type S4 struct{ S3 }
+type S5 struct{ S4 }
+type S6 struct{ S5 }
+type S7 struct{ S6 }
+type S8 struct{ S7 }
+type S9 struct{ S8 }
+type S10 struct{ S9 }
+type S11 struct{ S10 }
+type S12 struct{ S11 }
+type S13 struct{ S12 }
+
+var _ = S13{}.f
+var _ = S13.m
diff --git a/test/fixedbugs/issue13365.go b/test/fixedbugs/issue13365.go
new file mode 100644
index 0000000..379f9b6
--- /dev/null
+++ b/test/fixedbugs/issue13365.go
@@ -0,0 +1,25 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// issue 13365: confusing error message (array vs slice)
+
+package main
+
+var t struct{}
+
+func main() {
+ _ = []int{-1: 0} // ERROR "index must be non\-negative integer constant"
+ _ = [10]int{-1: 0} // ERROR "index must be non\-negative integer constant"
+ _ = [...]int{-1: 0} // ERROR "index must be non\-negative integer constant"
+
+ _ = []int{100: 0}
+ _ = [10]int{100: 0} // ERROR "array index 100 out of bounds"
+ _ = [...]int{100: 0}
+
+ _ = []int{t} // ERROR "cannot use .* as type int in array or slice literal"
+ _ = [10]int{t} // ERROR "cannot use .* as type int in array or slice literal"
+ _ = [...]int{t} // ERROR "cannot use .* as type int in array or slice literal"
+}
diff --git a/test/fixedbugs/issue13415.go b/test/fixedbugs/issue13415.go
new file mode 100644
index 0000000..989a1ed
--- /dev/null
+++ b/test/fixedbugs/issue13415.go
@@ -0,0 +1,19 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Verify that error message regarding := appears on
+// correct line (and not on the line of the 2nd :=).
+
+package p
+
+func f() {
+ select {
+ case x, x := <-func() chan int { // ERROR "x repeated on left side of :="
+ c := make(chan int)
+ return c
+ }():
+ }
+}
diff --git a/test/fixedbugs/issue13471.go b/test/fixedbugs/issue13471.go
new file mode 100644
index 0000000..81f034b
--- /dev/null
+++ b/test/fixedbugs/issue13471.go
@@ -0,0 +1,25 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Tests for golang.org/issue/13471
+
+package main
+
+func main() {
+ const _ int64 = 1e646456992 // ERROR "1e\+646456992 overflows integer"
+ const _ int32 = 1e64645699 // ERROR "1e\+64645699 overflows integer"
+ const _ int16 = 1e6464569 // ERROR "1e\+6464569 overflows integer"
+ const _ int8 = 1e646456 // ERROR "1e\+646456 overflows integer"
+ const _ int = 1e64645 // ERROR "1e\+64645 overflows integer"
+
+ const _ uint64 = 1e646456992 // ERROR "1e\+646456992 overflows integer"
+ const _ uint32 = 1e64645699 // ERROR "1e\+64645699 overflows integer"
+ const _ uint16 = 1e6464569 // ERROR "1e\+6464569 overflows integer"
+ const _ uint8 = 1e646456 // ERROR "1e\+646456 overflows integer"
+ const _ uint = 1e64645 // ERROR "1e\+64645 overflows integer"
+
+ const _ rune = 1e64645 // ERROR "1e\+64645 overflows integer"
+}
diff --git a/test/fixedbugs/issue13480.go b/test/fixedbugs/issue13480.go
new file mode 100644
index 0000000..cd2f05d
--- /dev/null
+++ b/test/fixedbugs/issue13480.go
@@ -0,0 +1,38 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Verify that comparisons of slice/map/func values against converted nil
+// values are properly rejected.
+
+package p
+
+func bug() {
+ type S []byte
+ type M map[int]int
+ type F func()
+
+ var s S
+ var m M
+ var f F
+
+ _ = s == S(nil) // ERROR "compare.*to nil"
+ _ = S(nil) == s // ERROR "compare.*to nil"
+ switch s {
+ case S(nil): // ERROR "compare.*to nil"
+ }
+
+ _ = m == M(nil) // ERROR "compare.*to nil"
+ _ = M(nil) == m // ERROR "compare.*to nil"
+ switch m {
+ case M(nil): // ERROR "compare.*to nil"
+ }
+
+ _ = f == F(nil) // ERROR "compare.*to nil"
+ _ = F(nil) == f // ERROR "compare.*to nil"
+ switch f {
+ case F(nil): // ERROR "compare.*to nil"
+ }
+}
diff --git a/test/fixedbugs/issue13539.go b/test/fixedbugs/issue13539.go
new file mode 100644
index 0000000..72c3ab0
--- /dev/null
+++ b/test/fixedbugs/issue13539.go
@@ -0,0 +1,20 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Verify that a label named like a package is recognized
+// as a label rather than a package and that the package
+// remains unused.
+
+package main
+
+import "math" // ERROR "imported and not used"
+
+func main() {
+math:
+ for {
+ break math
+ }
+}
diff --git a/test/fixedbugs/issue13559.go b/test/fixedbugs/issue13559.go
new file mode 100644
index 0000000..4783c62
--- /dev/null
+++ b/test/fixedbugs/issue13559.go
@@ -0,0 +1,89 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Verify that error messages print meaningful values
+// for various extreme floating-point constants.
+
+package p
+
+// failure case in issue
+const _ int64 = 1e-10000 // ERROR "1e\-10000 truncated"
+
+const (
+ _ int64 = 1e10000000 // ERROR "1e\+10000000 overflows"
+ _ int64 = 1e1000000 // ERROR "1e\+1000000 overflows"
+ _ int64 = 1e100000 // ERROR "1e\+100000 overflows"
+ _ int64 = 1e10000 // ERROR "1e\+10000 overflows"
+ _ int64 = 1e1000 // ERROR "1e\+1000 overflows"
+ _ int64 = 1e100 // ERROR "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 overflows"
+ _ int64 = 1e10
+ _ int64 = 1e1
+ _ int64 = 1e0
+ _ int64 = 1e-1 // ERROR "0\.1 truncated"
+ _ int64 = 1e-10 // ERROR "1e\-10 truncated"
+ _ int64 = 1e-100 // ERROR "1e\-100 truncated"
+ _ int64 = 1e-1000 // ERROR "1e\-1000 truncated"
+ _ int64 = 1e-10000 // ERROR "1e\-10000 truncated"
+ _ int64 = 1e-100000 // ERROR "1e\-100000 truncated"
+ _ int64 = 1e-1000000 // ERROR "1e\-1000000 truncated"
+)
+
+const (
+ _ int64 = -1e10000000 // ERROR "\-1e\+10000000 overflows"
+ _ int64 = -1e1000000 // ERROR "\-1e\+1000000 overflows"
+ _ int64 = -1e100000 // ERROR "\-1e\+100000 overflows"
+ _ int64 = -1e10000 // ERROR "\-1e\+10000 overflows"
+ _ int64 = -1e1000 // ERROR "\-1e\+1000 overflows"
+ _ int64 = -1e100 // ERROR "\-10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 overflows"
+ _ int64 = -1e10
+ _ int64 = -1e1
+ _ int64 = -1e0
+ _ int64 = -1e-1 // ERROR "\-0\.1 truncated"
+ _ int64 = -1e-10 // ERROR "\-1e\-10 truncated"
+ _ int64 = -1e-100 // ERROR "\-1e\-100 truncated"
+ _ int64 = -1e-1000 // ERROR "\-1e\-1000 truncated"
+ _ int64 = -1e-10000 // ERROR "\-1e\-10000 truncated"
+ _ int64 = -1e-100000 // ERROR "\-1e\-100000 truncated"
+ _ int64 = -1e-1000000 // ERROR "\-1e\-1000000 truncated"
+)
+
+const (
+ _ int64 = 1.23456789e10000000 // ERROR "1\.23457e\+10000000 overflows"
+ _ int64 = 1.23456789e1000000 // ERROR "1\.23457e\+1000000 overflows"
+ _ int64 = 1.23456789e100000 // ERROR "1\.23457e\+100000 overflows"
+ _ int64 = 1.23456789e10000 // ERROR "1\.23457e\+10000 overflows"
+ _ int64 = 1.23456789e1000 // ERROR "1\.23457e\+1000 overflows"
+ _ int64 = 1.23456789e100 // ERROR "12345678900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 overflows"
+ _ int64 = 1.23456789e10
+ _ int64 = 1.23456789e1 // ERROR "12\.3457 truncated"
+ _ int64 = 1.23456789e0 // ERROR "1\.23457 truncated"
+ _ int64 = 1.23456789e-1 // ERROR "0\.123457 truncated"
+ _ int64 = 1.23456789e-10 // ERROR "1\.23457e\-10 truncated"
+ _ int64 = 1.23456789e-100 // ERROR "1\.23457e\-100 truncated"
+ _ int64 = 1.23456789e-1000 // ERROR "1\.23457e\-1000 truncated"
+ _ int64 = 1.23456789e-10000 // ERROR "1\.23457e\-10000 truncated"
+ _ int64 = 1.23456789e-100000 // ERROR "1\.23457e\-100000 truncated"
+ _ int64 = 1.23456789e-1000000 // ERROR "1\.23457e\-1000000 truncated"
+)
+
+const (
+ _ int64 = -1.23456789e10000000 // ERROR "\-1\.23457e\+10000000 overflows"
+ _ int64 = -1.23456789e1000000 // ERROR "\-1\.23457e\+1000000 overflows"
+ _ int64 = -1.23456789e100000 // ERROR "\-1\.23457e\+100000 overflows"
+ _ int64 = -1.23456789e10000 // ERROR "\-1\.23457e\+10000 overflows"
+ _ int64 = -1.23456789e1000 // ERROR "\-1\.23457e\+1000 overflows"
+ _ int64 = -1.23456789e100 // ERROR "\-12345678900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 overflows"
+ _ int64 = -1.23456789e10
+ _ int64 = -1.23456789e1 // ERROR "\-12\.3457 truncated"
+ _ int64 = -1.23456789e0 // ERROR "\-1\.23457 truncated"
+ _ int64 = -1.23456789e-1 // ERROR "\-0\.123457 truncated"
+ _ int64 = -1.23456789e-10 // ERROR "\-1\.23457e\-10 truncated"
+ _ int64 = -1.23456789e-100 // ERROR "\-1\.23457e\-100 truncated"
+ _ int64 = -1.23456789e-1000 // ERROR "\-1\.23457e\-1000 truncated"
+ _ int64 = -1.23456789e-10000 // ERROR "\-1\.23457e\-10000 truncated"
+ _ int64 = -1.23456789e-100000 // ERROR "\-1\.23457e\-100000 truncated"
+ _ int64 = -1.23456789e-1000000 // ERROR "\-1\.23457e\-1000000 truncated"
+)
diff --git a/test/fixedbugs/issue13587.go b/test/fixedbugs/issue13587.go
new file mode 100644
index 0000000..b71bf9d
--- /dev/null
+++ b/test/fixedbugs/issue13587.go
@@ -0,0 +1,19 @@
+// errorcheck -0 -l -d=wb
+
+// Copyright 2015 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 write barrier for implicit assignments to result parameters
+// that have escaped to the heap.
+
+package issue13587
+
+import "errors"
+
+func escape(p *error)
+
+func F() (err error) {
+ escape(&err)
+ return errors.New("error") // ERROR "write barrier"
+}
diff --git a/test/fixedbugs/issue13684.go b/test/fixedbugs/issue13684.go
new file mode 100644
index 0000000..a1d8856
--- /dev/null
+++ b/test/fixedbugs/issue13684.go
@@ -0,0 +1,17 @@
+// run
+
+// Copyright 2015 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.
+
+// Verify that a label name matching a constant name
+// is permitted.
+
+package main
+
+const labelname = 1
+
+func main() {
+ goto labelname
+labelname:
+}
diff --git a/test/fixedbugs/issue13777.dir/burnin.go b/test/fixedbugs/issue13777.dir/burnin.go
new file mode 100644
index 0000000..5125639
--- /dev/null
+++ b/test/fixedbugs/issue13777.dir/burnin.go
@@ -0,0 +1,19 @@
+package burnin
+
+type sendCmdFunc func(string)
+
+func sendCommand(c string) {}
+
+func NewSomething() {
+ // This works...
+ // var sendCmd sendCmdFunc
+ // sendCmd = sendCommand
+
+ // So does this...
+ //sendCmd := sendCmdFunc(sendCommand)
+
+ // This fails...
+ sendCmd := sendCommand
+
+ _ = sendCmd
+}
diff --git a/test/fixedbugs/issue13777.dir/main.go b/test/fixedbugs/issue13777.dir/main.go
new file mode 100644
index 0000000..2512b93
--- /dev/null
+++ b/test/fixedbugs/issue13777.dir/main.go
@@ -0,0 +1,11 @@
+// build
+
+package main
+
+import (
+ x "./burnin"
+)
+
+func main() {
+ x.NewSomething()
+}
diff --git a/test/fixedbugs/issue13777.go b/test/fixedbugs/issue13777.go
new file mode 100644
index 0000000..8f83c13
--- /dev/null
+++ b/test/fixedbugs/issue13777.go
@@ -0,0 +1,7 @@
+// rundir
+
+// Copyright 2015 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 ignored
diff --git a/test/fixedbugs/issue13779.go b/test/fixedbugs/issue13779.go
new file mode 100644
index 0000000..b18577c
--- /dev/null
+++ b/test/fixedbugs/issue13779.go
@@ -0,0 +1,15 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Issue 13779: provide better error message when directly assigning to struct field in map
+
+package main
+
+func main() {
+ type person struct{ age, weight, height int }
+ students := map[string]person{"sally": person{12, 50, 32}}
+ students["sally"].age = 3 // ERROR "cannot assign to struct field .* in map"
+}
diff --git a/test/fixedbugs/issue13799.go b/test/fixedbugs/issue13799.go
new file mode 100644
index 0000000..4819b5a
--- /dev/null
+++ b/test/fixedbugs/issue13799.go
@@ -0,0 +1,190 @@
+// errorcheck -0 -m -l
+
+// Copyright 2015 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, using compiler diagnostic flags, that the escape analysis is working.
+// Compiles but does not run. Inlining is disabled.
+// Registerization is disabled too (-N), which should
+// have no effect on escape analysis.
+
+package main
+
+import "fmt"
+
+func main() {
+ // Just run test over and over again. This main func is just for
+ // convenience; if test were the main func, we could also trigger
+ // the panic just by running the program over and over again
+ // (sometimes it takes 1 time, sometimes it takes ~4,000+).
+ for iter := 0; ; iter++ {
+ if iter%50 == 0 {
+ fmt.Println(iter) // ERROR "iter escapes to heap$" "main ... argument does not escape$"
+ }
+ test1(iter)
+ test2(iter)
+ test3(iter)
+ test4(iter)
+ test5(iter)
+ test6(iter)
+ }
+}
+
+func test1(iter int) {
+
+ const maxI = 500
+ m := make(map[int][]int) // ERROR "make\(map\[int\]\[\]int\) escapes to heap$"
+
+ // The panic seems to be triggered when m is modified inside a
+ // closure that is both recursively called and reassigned to in a
+ // loop.
+
+ // Cause of bug -- escape of closure failed to escape (shared) data structures
+ // of map. Assign to fn declared outside of loop triggers escape of closure.
+ // Heap -> stack pointer eventually causes badness when stack reallocation
+ // occurs.
+
+ var fn func() // ERROR "moved to heap: fn$"
+ for i := 0; i < maxI; i++ { // ERROR "moved to heap: i$"
+ // var fn func() // this makes it work, because fn stays off heap
+ j := 0 // ERROR "moved to heap: j$"
+ fn = func() { // ERROR "func literal escapes to heap$"
+ m[i] = append(m[i], 0) // ERROR "&i escapes to heap$"
+ if j < 25 { // ERROR "&j escapes to heap$"
+ j++
+ fn() // ERROR "&fn escapes to heap$"
+ }
+ }
+ fn()
+ }
+
+ if len(m) != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, len(m) = %d", iter, maxI, len(m))) // ERROR "iter escapes to heap$" "len\(m\) escapes to heap$" "maxI escapes to heap$" "test1 ... argument does not escape$"
+ }
+}
+
+func test2(iter int) {
+
+ const maxI = 500
+ m := make(map[int][]int) // ERROR "test2 make\(map\[int\]\[\]int\) does not escape$"
+
+ // var fn func()
+ for i := 0; i < maxI; i++ {
+ var fn func() // this makes it work, because fn stays off heap
+ j := 0
+ fn = func() { // ERROR "test2 func literal does not escape$"
+ m[i] = append(m[i], 0)
+ if j < 25 {
+ j++
+ fn()
+ }
+ }
+ fn()
+ }
+
+ if len(m) != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, len(m) = %d", iter, maxI, len(m))) // ERROR "iter escapes to heap$" "len\(m\) escapes to heap$" "maxI escapes to heap$" "test2 ... argument does not escape$"
+ }
+}
+
+func test3(iter int) {
+
+ const maxI = 500
+ var x int // ERROR "moved to heap: x$"
+ m := &x // ERROR "&x escapes to heap$"
+
+ var fn func() // ERROR "moved to heap: fn$"
+ for i := 0; i < maxI; i++ {
+ // var fn func() // this makes it work, because fn stays off heap
+ j := 0 // ERROR "moved to heap: j$"
+ fn = func() { // ERROR "func literal escapes to heap$"
+ if j < 100 { // ERROR "&j escapes to heap$"
+ j++
+ fn() // ERROR "&fn escapes to heap$"
+ } else {
+ *m = *m + 1
+ }
+ }
+ fn()
+ }
+
+ if *m != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, *m = %d", iter, maxI, *m)) // ERROR "\*m escapes to heap$" "iter escapes to heap$" "maxI escapes to heap$" "test3 ... argument does not escape$"
+ }
+}
+
+func test4(iter int) {
+
+ const maxI = 500
+ var x int
+ m := &x // ERROR "test4 &x does not escape$"
+
+ // var fn func()
+ for i := 0; i < maxI; i++ {
+ var fn func() // this makes it work, because fn stays off heap
+ j := 0
+ fn = func() { // ERROR "test4 func literal does not escape$"
+ if j < 100 {
+ j++
+ fn()
+ } else {
+ *m = *m + 1
+ }
+ }
+ fn()
+ }
+
+ if *m != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, *m = %d", iter, maxI, *m)) // ERROR "\*m escapes to heap$" "iter escapes to heap$" "maxI escapes to heap$" "test4 ... argument does not escape$"
+ }
+}
+
+type str struct {
+ m *int
+}
+
+func recur1(j int, s *str) { // ERROR "recur1 s does not escape"
+ if j < 100 {
+ j++
+ recur1(j, s)
+ } else {
+ *s.m++
+ }
+}
+
+func test5(iter int) {
+
+ const maxI = 500
+ var x int // ERROR "moved to heap: x$"
+ m := &x // ERROR "&x escapes to heap$"
+
+ var fn *str
+ for i := 0; i < maxI; i++ {
+ // var fn *str // this makes it work, because fn stays off heap
+ fn = &str{m} // ERROR "&str literal escapes to heap"
+ recur1(0, fn)
+ }
+
+ if *m != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, *m = %d", iter, maxI, *m)) // ERROR "\*m escapes to heap$" "iter escapes to heap$" "maxI escapes to heap$" "test5 ... argument does not escape$"
+ }
+}
+
+func test6(iter int) {
+
+ const maxI = 500
+ var x int
+ m := &x // ERROR "&x does not escape$"
+
+ // var fn *str
+ for i := 0; i < maxI; i++ {
+ var fn *str // this makes it work, because fn stays off heap
+ fn = &str{m} // ERROR "&str literal does not escape"
+ recur1(0, fn)
+ }
+
+ if *m != maxI {
+ panic(fmt.Sprintf("iter %d: maxI = %d, *m = %d", iter, maxI, *m)) // ERROR "\*m escapes to heap$" "iter escapes to heap$" "maxI escapes to heap$" "test6 ... argument does not escape$"
+ }
+}
diff --git a/test/fixedbugs/issue13821.go b/test/fixedbugs/issue13821.go
new file mode 100644
index 0000000..187e4b4
--- /dev/null
+++ b/test/fixedbugs/issue13821.go
@@ -0,0 +1,15 @@
+// compile
+
+// Copyright 2015 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.
+
+// Issue 13821. Compiler rejected "bool(true)" as not a constant.
+
+package p
+
+const (
+ A = true
+ B = bool(A)
+ C = bool(true)
+)
diff --git a/test/fixedbugs/issue13821b.go b/test/fixedbugs/issue13821b.go
new file mode 100644
index 0000000..be67cea
--- /dev/null
+++ b/test/fixedbugs/issue13821b.go
@@ -0,0 +1,24 @@
+// errorcheck
+
+// Copyright 2015 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.
+
+// Issue 13821. Additional regress tests.
+
+package p
+
+type B bool
+type B2 bool
+
+var b B
+var b2 B2
+var x1 = b && 1 < 2 // x1 has type B, not ideal bool
+var x2 = 1 < 2 && b // x2 has type B, not ideal bool
+var x3 = b && b2 // ERROR "mismatched types B and B2"
+var x4 = x1 && b2 // ERROR "mismatched types B and B2"
+var x5 = x2 && b2 // ERROR "mismatched types B and B2"
+var x6 = b2 && x1 // ERROR "mismatched types B2 and B"
+var x7 = b2 && x2 // ERROR "mismatched types B2 and B"
+
+var x8 = b && !B2(true) // ERROR "mismatched types B and B2"
diff --git a/test/fixedbugs/issue14006.go b/test/fixedbugs/issue14006.go
new file mode 100644
index 0000000..c3c56b1
--- /dev/null
+++ b/test/fixedbugs/issue14006.go
@@ -0,0 +1,64 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Literals that happen to resolve to named constants
+// may be used as label names (see issue 13684). Make
+// sure that other literals don't crash the compiler.
+
+package main
+
+const labelname = 1
+
+func main() {
+ goto labelname
+labelname:
+}
+
+func f() {
+ var x int
+ switch x {
+ case 1:
+ 2: // ERROR "unexpected :"
+ case 2:
+ }
+
+ switch x {
+ case 1:
+ 2: ; // ERROR "unexpected :"
+ case 2:
+ }
+
+ var y string
+ switch y {
+ case "foo":
+ "bar": // ERROR "unexpected :"
+ case "bar":
+ }
+
+ switch y {
+ case "foo":
+ "bar": ; // ERROR "unexpected :"
+ case "bar":
+ }
+
+ var z bool
+ switch {
+ case z:
+ labelname: // ERROR "missing statement after label"
+ case false:
+ }
+
+ switch {
+ case z:
+ labelname:
+ }
+
+ switch {
+ case z:
+ labelname: ;
+ case false:
+ }
+}
\ No newline at end of file
diff --git a/test/fixedbugs/issue14010.go b/test/fixedbugs/issue14010.go
new file mode 100644
index 0000000..f5cab41
--- /dev/null
+++ b/test/fixedbugs/issue14010.go
@@ -0,0 +1,15 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Verify that built-in types don't get printed with
+// (empty) package qualification.
+
+package main
+
+func main() {
+ true = false // ERROR "cannot assign to true"
+ byte = 0 // ERROR "not an expression" "cannot assign to byte"
+}
diff --git a/test/fixedbugs/issue14136.go b/test/fixedbugs/issue14136.go
new file mode 100644
index 0000000..928a60b
--- /dev/null
+++ b/test/fixedbugs/issue14136.go
@@ -0,0 +1,19 @@
+// errorcheck
+
+// Copyright 2016 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 that > 10 non-syntax errors on the same line
+// don't lead to early exit. Specifically, here test
+// that we see the initialization error for variable
+// s.
+
+package main
+
+type T struct{}
+
+func main() {
+ t := T{X: 1, X: 1, X: 1, X: 1, X: 1, X: 1, X: 1, X: 1, X: 1, X: 1} // ERROR "unknown T field"
+ var s string = 1 // ERROR "cannot use 1"
+}
diff --git a/test/fixedbugs/issue14164.dir/a.go b/test/fixedbugs/issue14164.dir/a.go
new file mode 100644
index 0000000..bf03051
--- /dev/null
+++ b/test/fixedbugs/issue14164.dir/a.go
@@ -0,0 +1,47 @@
+// Copyright 2016 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 a
+
+// F is an exported function, small enough to be inlined.
+// It defines a local interface with an unexported method
+// f, which will appear with a package-qualified method
+// name in the export data.
+func F(x interface{}) bool {
+ _, ok := x.(interface {
+ f()
+ })
+ return ok
+}
+
+// Like F but with the unexported interface method f
+// defined via an embedded interface t. The compiler
+// always flattens embedded interfaces so there should
+// be no difference between F and G. Alas, currently
+// G is not inlineable (at least via export data), so
+// the issue is moot, here.
+func G(x interface{}) bool {
+ type t0 interface {
+ f()
+ }
+ _, ok := x.(interface {
+ t0
+ })
+ return ok
+}
+
+// Like G but now the embedded interface is declared
+// at package level. This function is inlineable via
+// export data. The export data representation is like
+// for F.
+func H(x interface{}) bool {
+ _, ok := x.(interface {
+ t1
+ })
+ return ok
+}
+
+type t1 interface {
+ f()
+}
diff --git a/test/fixedbugs/issue14164.dir/main.go b/test/fixedbugs/issue14164.dir/main.go
new file mode 100644
index 0000000..bcc6a63
--- /dev/null
+++ b/test/fixedbugs/issue14164.dir/main.go
@@ -0,0 +1,12 @@
+// Copyright 2016 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
+
+// Verify that we can import package "a" containing an inlineable
+// function F that declares a local interface with a non-exported
+// method f.
+import _ "./a"
+
+func main() {}
diff --git a/test/fixedbugs/issue14164.go b/test/fixedbugs/issue14164.go
new file mode 100644
index 0000000..5247599
--- /dev/null
+++ b/test/fixedbugs/issue14164.go
@@ -0,0 +1,7 @@
+// compiledir
+
+// Copyright 2016 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.
+
+ignored
diff --git a/test/fixedbugs/issue14331.dir/a.go b/test/fixedbugs/issue14331.dir/a.go
new file mode 100644
index 0000000..f1e57ef
--- /dev/null
+++ b/test/fixedbugs/issue14331.dir/a.go
@@ -0,0 +1,14 @@
+// Copyright 2016 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 a
+
+var S struct {
+ Str string `tag`
+}
+
+func F() string {
+ v := S
+ return v.Str
+}
diff --git a/test/fixedbugs/issue14331.dir/b.go b/test/fixedbugs/issue14331.dir/b.go
new file mode 100644
index 0000000..a2280a3
--- /dev/null
+++ b/test/fixedbugs/issue14331.dir/b.go
@@ -0,0 +1,11 @@
+// Copyright 2016 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 b
+
+import "./a"
+
+func G() string {
+ return a.F()
+}
diff --git a/test/fixedbugs/issue14331.go b/test/fixedbugs/issue14331.go
new file mode 100644
index 0000000..b8ee2fb
--- /dev/null
+++ b/test/fixedbugs/issue14331.go
@@ -0,0 +1,9 @@
+// compiledir
+
+// Copyright 2016 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.
+
+// Inline function misses struct tags.
+
+package ignored
diff --git a/test/fixedbugs/issue14405.go b/test/fixedbugs/issue14405.go
new file mode 100644
index 0000000..94592fd
--- /dev/null
+++ b/test/fixedbugs/issue14405.go
@@ -0,0 +1,17 @@
+// compile
+
+// Copyright 2016 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.
+
+// Mention of field with large offset in struct literal causes crash
+package p
+
+type T struct {
+ Slice [1 << 20][]int
+ Ptr *int
+}
+
+func New(p *int) *T {
+ return &T{Ptr: p}
+}
diff --git a/test/fixedbugs/issue14520.go b/test/fixedbugs/issue14520.go
new file mode 100644
index 0000000..1b1f4de
--- /dev/null
+++ b/test/fixedbugs/issue14520.go
@@ -0,0 +1,14 @@
+// errorcheck
+
+// Copyright 2016 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 f
+
+import /* // ERROR "import path" */ `
+bogus`
+
+func f(x int /* // ERROR "unexpected semicolon"
+
+*/)
diff --git a/test/fixedbugs/issue14553.go b/test/fixedbugs/issue14553.go
new file mode 100644
index 0000000..d7ebb12
--- /dev/null
+++ b/test/fixedbugs/issue14553.go
@@ -0,0 +1,45 @@
+// run
+
+// Copyright 2016 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.
+
+// This test checks if the compiler's internal constant
+// arithmetic correctly rounds denormal float32 values.
+
+package main
+
+import (
+ "fmt"
+ "math"
+)
+
+func main() {
+ for _, t := range []struct {
+ value float32
+ bits uint32
+ }{
+ {0e+00, 0x00000000},
+ {1e-46, 0x00000000},
+ {0.5e-45, 0x00000000},
+ {0.8e-45, 0x00000001},
+ {1e-45, 0x00000001},
+ {2e-45, 0x00000001},
+ {3e-45, 0x00000002},
+ {4e-45, 0x00000003},
+ {5e-45, 0x00000004},
+ {6e-45, 0x00000004},
+ {7e-45, 0x00000005},
+ {8e-45, 0x00000006},
+ {9e-45, 0x00000006},
+ {1.0e-44, 0x00000007},
+ {1.1e-44, 0x00000008},
+ {1.2e-44, 0x00000009},
+ } {
+ got := math.Float32bits(t.value)
+ want := t.bits
+ if got != want {
+ panic(fmt.Sprintf("bits(%g) = 0x%08x; want 0x%08x", t.value, got, want))
+ }
+ }
+}
diff --git a/test/fixedbugs/issue14591.go b/test/fixedbugs/issue14591.go
new file mode 100644
index 0000000..626fbbc
--- /dev/null
+++ b/test/fixedbugs/issue14591.go
@@ -0,0 +1,38 @@
+// run
+
+// Copyright 2016 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 to make sure we don't think values are dead
+// when they are assigned to a PPARAMOUT slot before
+// the last GC safepoint.
+
+package main
+
+import (
+ "fmt"
+ "runtime"
+)
+
+// When a T is deallocated, T[1] is certain to
+// get clobbered (the runtime writes 0xdeaddeaddeaddead there).
+type T [4]int
+
+func f() (r, s *T) {
+ r = &T{0x30, 0x31, 0x32, 0x33}
+ runtime.GC()
+ s = &T{0x40, 0x41, 0x42, 0x43}
+ runtime.GC()
+ return
+}
+
+func main() {
+ r, s := f()
+ if r[1] != 0x31 {
+ fmt.Printf("bad r[1], want 0x31 got %x\n", r[1])
+ }
+ if s[1] != 0x41 {
+ fmt.Printf("bad s[1], want 0x41 got %x\n", s[1])
+ }
+}
diff --git a/test/fixedbugs/issue14636.go b/test/fixedbugs/issue14636.go
new file mode 100644
index 0000000..7d1b606
--- /dev/null
+++ b/test/fixedbugs/issue14636.go
@@ -0,0 +1,43 @@
+// +build !nacl,!android,!darwin darwin,!arm
+// run
+
+// Copyright 2016 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
+
+import (
+ "bytes"
+ "log"
+ "os/exec"
+ "strings"
+)
+
+func main() {
+ checkLinkOutput("", "-B argument must start with 0x")
+ checkLinkOutput("0", "-B argument must start with 0x")
+ checkLinkOutput("0x", "usage")
+ checkLinkOutput("0x0", "-B argument must have even number of digits")
+ checkLinkOutput("0x00", "usage")
+ checkLinkOutput("0xYZ", "-B argument contains invalid hex digit")
+ checkLinkOutput("0x"+strings.Repeat("00", 32), "usage")
+ checkLinkOutput("0x"+strings.Repeat("00", 33), "-B option too long (max 32 digits)")
+}
+
+func checkLinkOutput(buildid string, message string) {
+ cmd := exec.Command("go", "tool", "link", "-B", buildid)
+ out, err := cmd.CombinedOutput()
+ if err == nil {
+ log.Fatalf("expected cmd/link to fail")
+ }
+
+ firstLine := string(bytes.SplitN(out, []byte("\n"), 2)[0])
+ if strings.HasPrefix(firstLine, "panic") {
+ log.Fatalf("cmd/link panicked:\n%s", out)
+ }
+
+ if !strings.Contains(firstLine, message) {
+ log.Fatalf("cmd/link output did not include expected message %q: %s", message, firstLine)
+ }
+}
diff --git a/test/fixedbugs/issue14646.go b/test/fixedbugs/issue14646.go
new file mode 100644
index 0000000..96a6854
--- /dev/null
+++ b/test/fixedbugs/issue14646.go
@@ -0,0 +1,23 @@
+// run
+
+// Copyright 2016 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
+
+import "runtime"
+
+func main() {
+ var file string
+ var line int
+ func() {
+ defer func() {
+ _, file, line, _ = runtime.Caller(1)
+ }()
+ }() // this is the expected line
+ const EXPECTED = 18
+ if line != EXPECTED {
+ println("Expected line =", EXPECTED, "but got line =", line, "and file =", file)
+ }
+}
diff --git a/test/fixedbugs/issue14651.go b/test/fixedbugs/issue14651.go
new file mode 100644
index 0000000..4c756e5
--- /dev/null
+++ b/test/fixedbugs/issue14651.go
@@ -0,0 +1,71 @@
+// run
+
+// Copyright 2016 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.
+
+// This test checks if the compiler's internal constant
+// arithmetic correctly rounds up floating-point values
+// that become the smallest denormal value.
+//
+// See also related issue 14553 and test issue14553.go.
+
+package main
+
+import (
+ "fmt"
+ "math"
+)
+
+const (
+ p149 = 1.0 / (1 << 149) // 1p-149
+ p500 = 1.0 / (1 << 500) // 1p-500
+ p1074 = p500 * p500 / (1<<74) // 1p-1074
+)
+
+const (
+ m0000p149 = 0x0 / 16.0 * p149 // = 0.0000p-149
+ m1000p149 = 0x8 / 16.0 * p149 // = 0.1000p-149
+ m1001p149 = 0x9 / 16.0 * p149 // = 0.1001p-149
+ m1011p149 = 0xb / 16.0 * p149 // = 0.1011p-149
+ m1100p149 = 0xc / 16.0 * p149 // = 0.1100p-149
+
+ m0000p1074 = 0x0 / 16.0 * p1074 // = 0.0000p-1074
+ m1000p1074 = 0x8 / 16.0 * p1074 // = 0.1000p-1074
+ m1001p1074 = 0x9 / 16.0 * p1074 // = 0.1001p-1074
+ m1011p1074 = 0xb / 16.0 * p1074 // = 0.1011p-1074
+ m1100p1074 = 0xc / 16.0 * p1074 // = 0.1100p-1074
+)
+
+func main() {
+ test32(float32(m0000p149), f32(m0000p149))
+ test32(float32(m1000p149), f32(m1000p149))
+ test32(float32(m1001p149), f32(m1001p149))
+ test32(float32(m1011p149), f32(m1011p149))
+ test32(float32(m1100p149), f32(m1100p149))
+
+ test64(float64(m0000p1074), f64(m0000p1074))
+ test64(float64(m1000p1074), f64(m1000p1074))
+ test64(float64(m1001p1074), f64(m1001p1074))
+ test64(float64(m1011p1074), f64(m1011p1074))
+ test64(float64(m1100p1074), f64(m1100p1074))
+}
+
+func f32(x float64) float32 { return float32(x) }
+func f64(x float64) float64 { return float64(x) }
+
+func test32(a, b float32) {
+ abits := math.Float32bits(a)
+ bbits := math.Float32bits(b)
+ if abits != bbits {
+ panic(fmt.Sprintf("%08x != %08x\n", abits, bbits))
+ }
+}
+
+func test64(a, b float64) {
+ abits := math.Float64bits(a)
+ bbits := math.Float64bits(b)
+ if abits != bbits {
+ panic(fmt.Sprintf("%016x != %016x\n", abits, bbits))
+ }
+}
diff --git a/test/fixedbugs/issue14652.go b/test/fixedbugs/issue14652.go
new file mode 100644
index 0000000..b030aee
--- /dev/null
+++ b/test/fixedbugs/issue14652.go
@@ -0,0 +1,9 @@
+// errorcheck
+
+// Copyright 2016 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 p
+
+var x any // ERROR "undefined: any"
diff --git a/test/fixedbugs/issue14725.go b/test/fixedbugs/issue14725.go
new file mode 100644
index 0000000..49f3fbc
--- /dev/null
+++ b/test/fixedbugs/issue14725.go
@@ -0,0 +1,57 @@
+// run
+
+// Copyright 2016 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
+
+import "fmt"
+
+func f1() (x int) {
+ for {
+ defer func() {
+ recover()
+ x = 1
+ }()
+ panic(nil)
+ }
+}
+
+var sink *int
+
+func f2() (x int) {
+ sink = &x
+ defer func() {
+ recover()
+ x = 1
+ }()
+ panic(nil)
+}
+
+func f3(b bool) (x int) {
+ sink = &x
+ defer func() {
+ recover()
+ x = 1
+ }()
+ if b {
+ panic(nil)
+ }
+ return
+}
+
+func main() {
+ if x := f1(); x != 1 {
+ panic(fmt.Sprintf("f1 returned %d, wanted 1", x))
+ }
+ if x := f2(); x != 1 {
+ panic(fmt.Sprintf("f2 returned %d, wanted 1", x))
+ }
+ if x := f3(true); x != 1 {
+ panic(fmt.Sprintf("f3(true) returned %d, wanted 1", x))
+ }
+ if x := f3(false); x != 1 {
+ panic(fmt.Sprintf("f3(false) returned %d, wanted 1", x))
+ }
+}
diff --git a/test/fixedbugs/issue14729.go b/test/fixedbugs/issue14729.go
new file mode 100644
index 0000000..88e01f9
--- /dev/null
+++ b/test/fixedbugs/issue14729.go
@@ -0,0 +1,14 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Issue 14729: structs cannot embed unsafe.Pointer per the spec.
+
+package main
+
+import "unsafe"
+
+type s struct { unsafe.Pointer } // ERROR "embedded type cannot be a pointer"
+type s1 struct { p unsafe.Pointer }
diff --git a/test/fixedbugs/issue14988.go b/test/fixedbugs/issue14988.go
new file mode 100644
index 0000000..4ddc7e7
--- /dev/null
+++ b/test/fixedbugs/issue14988.go
@@ -0,0 +1,13 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// Issue 14988: defining a map with an invalid forward declaration array
+// key doesn't cause a fatal.
+
+package main
+
+type m map[k]int // ERROR "invalid map key type"
+type k [1]m
diff --git a/test/fixedbugs/issue14999.go b/test/fixedbugs/issue14999.go
new file mode 100644
index 0000000..6ce768e
--- /dev/null
+++ b/test/fixedbugs/issue14999.go
@@ -0,0 +1,18 @@
+// errorcheck -+
+
+// Copyright 2016 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 p
+
+func f(x int) func(int) int {
+ return func(y int) int { return x + y } // ERROR "heap-allocated closure, not allowed in runtime."
+}
+
+func g(x int) func(int) int { // ERROR "x escapes to heap, not allowed in runtime."
+ return func(y int) int { // ERROR "heap-allocated closure, not allowed in runtime."
+ x += y
+ return x + y
+ }
+}
diff --git a/test/fixedbugs/issue15002.go b/test/fixedbugs/issue15002.go
new file mode 100644
index 0000000..a27fd92
--- /dev/null
+++ b/test/fixedbugs/issue15002.go
@@ -0,0 +1,132 @@
+// run
+// +build amd64
+// +build linux darwin
+
+// Copyright 2016 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
+
+import (
+ "fmt"
+ "syscall"
+)
+
+// Use global variables so the compiler
+// doesn't know that they are constants.
+var p = syscall.Getpagesize()
+var zero = 0
+var one = 1
+
+func main() {
+ // Allocate 2 pages of memory.
+ b, err := syscall.Mmap(-1, 0, 2*p, syscall.PROT_READ|syscall.PROT_WRITE, syscall.MAP_ANON|syscall.MAP_PRIVATE)
+ if err != nil {
+ panic(err)
+ }
+ // Mark the second page as faulting.
+ err = syscall.Mprotect(b[p:], syscall.PROT_NONE)
+ if err != nil {
+ panic(err)
+ }
+ // Get a slice pointing to the last byte of the good page.
+ x := b[p-one : p]
+
+ test16(x)
+ test16i(x, 0)
+ test32(x)
+ test32i(x, 0)
+ test64(x)
+ test64i(x, 0)
+}
+
+func test16(x []byte) uint16 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ // Try to read 2 bytes from x.
+ return uint16(x[0]) | uint16(x[1])<<8
+
+ // We expect to get an "index out of range" error from x[1].
+ // If we promote the first load to a 2-byte load, it will segfault, which we don't want.
+}
+
+func test16i(x []byte, i int) uint16 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ return uint16(x[i]) | uint16(x[i+1])<<8
+}
+
+func test32(x []byte) uint32 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ return uint32(x[0]) | uint32(x[1])<<8 | uint32(x[2])<<16 | uint32(x[3])<<24
+}
+
+func test32i(x []byte, i int) uint32 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ return uint32(x[i]) | uint32(x[i+1])<<8 | uint32(x[i+2])<<16 | uint32(x[i+3])<<24
+}
+
+func test64(x []byte) uint64 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ return uint64(x[0]) | uint64(x[1])<<8 | uint64(x[2])<<16 | uint64(x[3])<<24 |
+ uint64(x[4])<<32 | uint64(x[5])<<40 | uint64(x[6])<<48 | uint64(x[7])<<56
+}
+
+func test64i(x []byte, i int) uint64 {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("no fault or bounds check failure happened")
+ }
+ s := fmt.Sprintf("%s", r)
+ if s != "runtime error: index out of range" {
+ panic("bad panic: " + s)
+ }
+ }()
+ return uint64(x[i+0]) | uint64(x[i+1])<<8 | uint64(x[i+2])<<16 | uint64(x[i+3])<<24 |
+ uint64(x[i+4])<<32 | uint64(x[i+5])<<40 | uint64(x[i+6])<<48 | uint64(x[i+7])<<56
+}
diff --git a/test/fixedbugs/issue15013.go b/test/fixedbugs/issue15013.go
new file mode 100644
index 0000000..9e218e6
--- /dev/null
+++ b/test/fixedbugs/issue15013.go
@@ -0,0 +1,24 @@
+// compile
+
+// Copyright 2016 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.
+
+// CL 21202 introduced a compiler crash in the handling of a varargs
+// function in the same recursive group as a function that calls it.
+// Nothing in the standard library caught the problem, so adding a test.
+
+package p
+
+func F1(p *int, a ...*int) (int, *int) {
+ if p == nil {
+ return F2(), a[0]
+ }
+ return 0, a[0]
+}
+
+func F2() int {
+ var i0, i1 int
+ a, _ := F1(&i0, &i1)
+ return a
+}
diff --git a/test/fixedbugs/issue15039.go b/test/fixedbugs/issue15039.go
new file mode 100644
index 0000000..85d9e83
--- /dev/null
+++ b/test/fixedbugs/issue15039.go
@@ -0,0 +1,25 @@
+// run
+
+// Copyright 2016 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
+
+func main() {
+ const fffd = "\uFFFD"
+
+ // runtime.intstring used to convert int64 to rune without checking
+ // for truncation.
+ u := uint64(0x10001f4a9)
+ big := string(u)
+ if big != fffd {
+ panic("big != bad")
+ }
+
+ // cmd/compile used to require integer constants to fit into an "int".
+ const huge = string(1<<100)
+ if huge != fffd {
+ panic("huge != bad")
+ }
+}
diff --git a/test/fixedbugs/issue15042.go b/test/fixedbugs/issue15042.go
new file mode 100644
index 0000000..85d5d6c
--- /dev/null
+++ b/test/fixedbugs/issue15042.go
@@ -0,0 +1,27 @@
+// run
+
+// Copyright 2016 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.
+
+// Exchanging two struct fields was compiled incorrectly.
+
+package main
+
+type S struct {
+ i int
+}
+
+func F(c bool, s1, s2 S) (int, int) {
+ if c {
+ s1.i, s2.i = s2.i, s1.i
+ }
+ return s1.i, s2.i
+}
+
+func main() {
+ i, j := F(true, S{1}, S{20})
+ if i != 20 || j != 1 {
+ panic(i+j)
+ }
+}
diff --git a/test/fixedbugs/issue15071.dir/exp/exp.go b/test/fixedbugs/issue15071.dir/exp/exp.go
new file mode 100644
index 0000000..e6041e6
--- /dev/null
+++ b/test/fixedbugs/issue15071.dir/exp/exp.go
@@ -0,0 +1,24 @@
+// Copyright 2016 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 exp
+
+func Exported(x int) int {
+ return inlined(x)
+}
+
+func inlined(x int) int {
+ y := 0
+ switch {
+ case x > 0:
+ y += 5
+ return 0 + y
+ case x < 1:
+ y += 6
+ fallthrough
+ default:
+ y += 7
+ return 2 + y
+ }
+}
diff --git a/test/fixedbugs/issue15071.dir/main.go b/test/fixedbugs/issue15071.dir/main.go
new file mode 100644
index 0000000..96790da
--- /dev/null
+++ b/test/fixedbugs/issue15071.dir/main.go
@@ -0,0 +1,14 @@
+// run
+
+// Copyright 2016 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
+
+import "os"
+import "./exp"
+
+func main() {
+ _ = exp.Exported(len(os.Args))
+}
diff --git a/test/fixedbugs/issue15084.go b/test/fixedbugs/issue15084.go
new file mode 100644
index 0000000..7eb294e
--- /dev/null
+++ b/test/fixedbugs/issue15084.go
@@ -0,0 +1,30 @@
+// compile
+
+// Copyright 2016 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 x
+
+type T struct {
+ i int
+ e interface{}
+}
+
+func (t *T) F() bool {
+ if t.i != 0 {
+ return false
+ }
+ _, ok := t.e.(string)
+ return ok
+}
+
+var x int
+
+func g(t *T) {
+ if t.F() || true {
+ if t.F() {
+ x = 0
+ }
+ }
+}
diff --git a/test/fixedbugs/issue15091.go b/test/fixedbugs/issue15091.go
new file mode 100644
index 0000000..00fb473
--- /dev/null
+++ b/test/fixedbugs/issue15091.go
@@ -0,0 +1,25 @@
+// errorcheck -0 -race
+
+// Copyright 2016 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 sample
+
+type Html struct {
+ headerIDs map[string]int
+}
+
+// We don't want to see:
+// internal error: (*Html).xyzzy autotmp_3 (type *int) recorded as live on entry, p.Pc=0
+// or (now, with the error caught earlier)
+// Treating auto as if it were arg, func (*Html).xyzzy, node ...
+// caused by racewalker inserting instrumentation before an OAS where the Ninit
+// of the OAS defines part of its right-hand-side. (I.e., the race instrumentation
+// references a variable before it is defined.)
+func (options *Html) xyzzy(id string) string {
+ for count, found := options.headerIDs[id]; found; count, found = options.headerIDs[id] {
+ _ = count
+ }
+ return ""
+}
diff --git a/test/fixedbugs/issue15175.go b/test/fixedbugs/issue15175.go
new file mode 100644
index 0000000..55a8f7d
--- /dev/null
+++ b/test/fixedbugs/issue15175.go
@@ -0,0 +1,66 @@
+// run
+
+// Copyright 2016 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.
+
+// Make sure unsigned shift results get sign-extended correctly.
+package main
+
+import "fmt"
+
+func main() {
+ failed := false
+ a6 := uint8(253)
+ if got := a6 >> 0; got != 253 {
+ fmt.Printf("uint8(253)>>0 = %v, wanted 253\n", got)
+ failed = true
+ }
+ if got := f1(0, 2, 1, 0, 0, 1, true); got != 255 {
+ fmt.Printf("f1(...) = %v, wanted 255\n", got)
+ failed = true
+ }
+ if got := f2(1); got != 242 {
+ fmt.Printf("f2(...) = %v, wanted 242\n", got)
+ failed = true
+ }
+ if got := f3(false, 0, 0); got != 254 {
+ fmt.Printf("f3(...) = %v, wanted 254\n", got)
+ failed = true
+ }
+ if failed {
+ panic("bad")
+ }
+}
+
+func f1(a1 uint, a2 int8, a3 int8, a4 int8, a5 uint8, a6 int, a7 bool) uint8 {
+ a5--
+ a4 += (a2 << a1 << 2) | (a4 ^ a4<<(a1&a1)) - a3 // int8
+ a6 -= a6 >> (2 + uint32(a2)>>3) // int
+ a1 += a1 // uint
+ a3 *= a4 << (a1 | a1) << (uint16(3) >> 2 & (1 - 0) & (uint16(1) << a5 << 3)) // int8
+ a7 = a7 || ((a2 == a4) || (a7 && a7) || ((a5 == a5) || (a7 || a7))) // bool
+ return a5 >> a1
+}
+
+func f2(a1 uint8) uint8 {
+ a1--
+ a1--
+ a1 -= a1 + (a1 << 1) - (a1*a1*a1)<<(2-0+(3|3)-1) // uint8
+ v1 := 0 * ((2 * 1) ^ 1) & ((uint(0) >> a1) + (2+0)*(uint(2)+0)) // uint
+ _ = v1
+ return a1 >> (((2 ^ 2) >> (v1 | 2)) + 0)
+}
+
+func f3(a1 bool, a2 uint, a3 int64) uint8 {
+ a3--
+ v1 := 1 & (2 & 1 * (1 ^ 2) & (uint8(3*1) >> 0)) // uint8
+ _ = v1
+ v1 += v1 - (v1 >> a2) + (v1 << (a2 ^ a2) & v1) // uint8
+ v1 *= v1 // uint8
+ a3--
+ v1 += v1 & v1 // uint8
+ v1--
+ v1 = ((v1 << 0) | v1>>0) + v1 // uint8
+ return v1 >> 0
+}
diff --git a/test/fixedbugs/issue15252.go b/test/fixedbugs/issue15252.go
new file mode 100644
index 0000000..370a885
--- /dev/null
+++ b/test/fixedbugs/issue15252.go
@@ -0,0 +1,32 @@
+// run
+
+// Copyright 2016 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.
+
+// This test makes sure that we use all 64 bits of an
+// index, even on 32 bit machines. It also tests that nacl
+// can compile 64 bit indexes loaded from ODOTPTR properly.
+
+package main
+
+type T struct {
+ i int64
+}
+
+func f(t *T) byte {
+ b := [2]byte{3, 4}
+ return b[t.i]
+}
+
+func main() {
+ t := &T{0x100000001}
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("panic wasn't recoverable")
+ }
+ }()
+ f(t)
+ panic("index didn't panic")
+}
diff --git a/test/fixedbugs/issue15277.go b/test/fixedbugs/issue15277.go
new file mode 100644
index 0000000..719c9a4
--- /dev/null
+++ b/test/fixedbugs/issue15277.go
@@ -0,0 +1,38 @@
+// run
+
+// Copyright 2016 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.
+// +build amd64
+
+package main
+
+import "runtime"
+
+type big [10 << 20]byte
+
+func f(x *big, start int64) {
+ if delta := inuse() - start; delta < 9<<20 {
+ println("after alloc: expected delta at least 9MB, got: ", delta)
+ }
+ x = nil
+ if delta := inuse() - start; delta > 1<<20 {
+ println("after drop: expected delta below 1MB, got: ", delta)
+ }
+ x = new(big)
+ if delta := inuse() - start; delta < 9<<20 {
+ println("second alloc: expected delta at least 9MB, got: ", delta)
+ }
+}
+
+func main() {
+ x := inuse()
+ f(new(big), x)
+}
+
+func inuse() int64 {
+ runtime.GC()
+ var st runtime.MemStats
+ runtime.ReadMemStats(&st)
+ return int64(st.Alloc)
+}
diff --git a/test/fixedbugs/issue15281.go b/test/fixedbugs/issue15281.go
new file mode 100644
index 0000000..187c96f
--- /dev/null
+++ b/test/fixedbugs/issue15281.go
@@ -0,0 +1,64 @@
+// run
+
+// Copyright 2016 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
+
+import "runtime"
+
+func main() {
+ {
+ x := inuse()
+ c := make(chan []byte, 10)
+ c <- make([]byte, 10<<20)
+ close(c)
+ f1(c, x)
+ }
+ {
+ x := inuse()
+ c := make(chan []byte, 10)
+ c <- make([]byte, 10<<20)
+ close(c)
+ f2(c, x)
+ }
+}
+
+func f1(c chan []byte, start int64) {
+ for x := range c {
+ if delta := inuse() - start; delta < 9<<20 {
+ println("BUG: f1: after alloc: expected delta at least 9MB, got: ", delta)
+ println(x)
+ }
+ x = nil
+ if delta := inuse() - start; delta > 1<<20 {
+ println("BUG: f1: after alloc: expected delta below 1MB, got: ", delta)
+ println(x)
+ }
+ }
+}
+
+func f2(c chan []byte, start int64) {
+ for {
+ x, ok := <-c
+ if !ok {
+ break
+ }
+ if delta := inuse() - start; delta < 9<<20 {
+ println("BUG: f2: after alloc: expected delta at least 9MB, got: ", delta)
+ println(x)
+ }
+ x = nil
+ if delta := inuse() - start; delta > 1<<20 {
+ println("BUG: f2: after alloc: expected delta below 1MB, got: ", delta)
+ println(x)
+ }
+ }
+}
+
+func inuse() int64 {
+ runtime.GC()
+ var st runtime.MemStats
+ runtime.ReadMemStats(&st)
+ return int64(st.Alloc)
+}
diff --git a/test/fixedbugs/issue15311.go b/test/fixedbugs/issue15311.go
new file mode 100644
index 0000000..81fa541
--- /dev/null
+++ b/test/fixedbugs/issue15311.go
@@ -0,0 +1,20 @@
+// errorcheck
+
+// Copyright 2016 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.
+
+// The compiler was failing to correctly report an error when a dot
+// expression was used a struct literal key.
+
+package p
+
+type T struct {
+ toInt map[string]int
+ toString map[int]string
+}
+
+var t = T{
+ foo.toInt: make(map[string]int), // ERROR "field name"
+ bar.toString: make(map[int]string), // ERROR "field name"
+}
diff --git a/test/fixedbugs/issue15329.go b/test/fixedbugs/issue15329.go
new file mode 100644
index 0000000..30fbf13
--- /dev/null
+++ b/test/fixedbugs/issue15329.go
@@ -0,0 +1,79 @@
+// run
+
+// Copyright 2016 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.
+
+// Previously, cmd/compile would rewrite
+//
+// check(unsafe.Pointer(testMeth(1).Pointer()), unsafe.Pointer(testMeth(2).Pointer()))
+//
+// to
+//
+// var autotmp_1 uintptr = testMeth(1).Pointer()
+// var autotmp_2 uintptr = testMeth(2).Pointer()
+// check(unsafe.Pointer(autotmp_1), unsafe.Pointer(autotmp_2))
+//
+// However, that means autotmp_1 is the only reference to the int
+// variable containing the value "1", but it's not a pointer type,
+// so it was at risk of being garbage collected by the evaluation of
+// testMeth(2).Pointer(), even though package unsafe's documentation
+// says the original code was allowed.
+//
+// Now cmd/compile rewrites it to
+//
+// var autotmp_1 unsafe.Pointer = unsafe.Pointer(testMeth(1).Pointer())
+// var autotmp_2 unsafe.Pointer = unsafe.Pointer(testMeth(2).Pointer())
+// check(autotmp_1, autotmp_2)
+//
+// to ensure the pointed-to variables are visible to the GC.
+
+package main
+
+import (
+ "fmt"
+ "reflect"
+ "runtime"
+ "unsafe"
+)
+
+func main() {
+ // Test all the different ways we can invoke reflect.Value.Pointer.
+
+ // Direct method invocation.
+ check(unsafe.Pointer(testMeth(1).Pointer()), unsafe.Pointer(testMeth(2).Pointer()))
+
+ // Invocation via method expression.
+ check(unsafe.Pointer(reflect.Value.Pointer(testMeth(1))), unsafe.Pointer(reflect.Value.Pointer(testMeth(2))))
+
+ // Invocation via interface.
+ check(unsafe.Pointer(testInter(1).Pointer()), unsafe.Pointer(testInter(2).Pointer()))
+
+ // Invocation via method value.
+ check(unsafe.Pointer(testFunc(1)()), unsafe.Pointer(testFunc(2)()))
+}
+
+func check(p, q unsafe.Pointer) {
+ a, b := *(*int)(p), *(*int)(q)
+ if a != 1 || b != 2 {
+ fmt.Printf("got %v, %v; expected 1, 2\n", a, b)
+ }
+}
+
+func testMeth(x int) reflect.Value {
+ // Force GC to run.
+ runtime.GC()
+ return reflect.ValueOf(&x)
+}
+
+type Pointerer interface {
+ Pointer() uintptr
+}
+
+func testInter(x int) Pointerer {
+ return testMeth(x)
+}
+
+func testFunc(x int) func() uintptr {
+ return testMeth(x).Pointer
+}
diff --git a/test/fixedbugs/issue15439.go b/test/fixedbugs/issue15439.go
new file mode 100644
index 0000000..840a3c0
--- /dev/null
+++ b/test/fixedbugs/issue15439.go
@@ -0,0 +1,25 @@
+// run
+
+// Copyright 2016 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
+
+import "reflect"
+
+func main() {
+ a := &struct{ x int }{}
+ b := &struct{ x int "" }{}
+
+ ta := reflect.TypeOf(a)
+ tb := reflect.TypeOf(b)
+
+ // Ensure cmd/compile treats absent and empty tags as equivalent.
+ a = b
+
+ // Ensure package reflect treats absent and empty tags as equivalent.
+ if !tb.AssignableTo(ta) {
+ panic("fail")
+ }
+}
diff --git a/test/fixedbugs/issue15470.dir/a.go b/test/fixedbugs/issue15470.dir/a.go
new file mode 100644
index 0000000..1fcf3ea
--- /dev/null
+++ b/test/fixedbugs/issue15470.dir/a.go
@@ -0,0 +1,24 @@
+package a
+
+import "io"
+
+type T interface {
+ M0(_ int)
+ M1(x, _ int) // _ (blank) caused crash
+ M2() (x, _ int)
+}
+
+type S struct{}
+
+func (S) M0(_ int) {}
+func (S) M1(x, _ int) {}
+func (S) M2() (x, _ int) { return }
+func (_ S) M3() {}
+
+// Snippet from x/tools/godoc/analysis/analysis.go.
+// Offending code from #5470.
+type Link interface {
+ Start() int
+ End() int
+ Write(w io.Writer, _ int, start bool) // _ (blank) caused crash
+}
diff --git a/test/fixedbugs/issue15470.dir/b.go b/test/fixedbugs/issue15470.dir/b.go
new file mode 100644
index 0000000..863ee9f
--- /dev/null
+++ b/test/fixedbugs/issue15470.dir/b.go
@@ -0,0 +1,3 @@
+package b
+
+import _ "./a" // must not fail
diff --git a/test/fixedbugs/issue15470.go b/test/fixedbugs/issue15470.go
new file mode 100644
index 0000000..22b48fe
--- /dev/null
+++ b/test/fixedbugs/issue15470.go
@@ -0,0 +1,10 @@
+// compiledir
+
+// Copyright 2016 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.
+
+// Issue 15470: Make sure special-case signatures can
+// be exported and imported w/o problems.
+
+package ignored
diff --git a/test/fixedbugs/issue15548.dir/a.go b/test/fixedbugs/issue15548.dir/a.go
new file mode 100644
index 0000000..3c593fc
--- /dev/null
+++ b/test/fixedbugs/issue15548.dir/a.go
@@ -0,0 +1,17 @@
+// Copyright 2016 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 a
+
+type I0 interface {
+ I1
+}
+
+type T struct {
+ I1
+}
+
+type I1 interface {
+ M(*T) // removing * makes crash go away
+}
diff --git a/test/fixedbugs/issue15548.dir/b.go b/test/fixedbugs/issue15548.dir/b.go
new file mode 100644
index 0000000..b46f5ad
--- /dev/null
+++ b/test/fixedbugs/issue15548.dir/b.go
@@ -0,0 +1,9 @@
+// Copyright 2016 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 b
+
+import "./a"
+
+var X a.T
diff --git a/test/fixedbugs/issue15548.dir/c.go b/test/fixedbugs/issue15548.dir/c.go
new file mode 100644
index 0000000..6d3f3be
--- /dev/null
+++ b/test/fixedbugs/issue15548.dir/c.go
@@ -0,0 +1,10 @@
+// Copyright 2016 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 c
+
+import (
+ _ "./b"
+ _ "./a"
+)
diff --git a/test/fixedbugs/issue15548.go b/test/fixedbugs/issue15548.go
new file mode 100644
index 0000000..4d2844d
--- /dev/null
+++ b/test/fixedbugs/issue15548.go
@@ -0,0 +1,7 @@
+// compiledir
+
+// Copyright 2016 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 ignored
diff --git a/test/fixedbugs/issue15572.dir/a.go b/test/fixedbugs/issue15572.dir/a.go
new file mode 100644
index 0000000..1356601
--- /dev/null
+++ b/test/fixedbugs/issue15572.dir/a.go
@@ -0,0 +1,40 @@
+// Copyright 2016 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 a
+
+type T struct {
+}
+
+func F() []T {
+ return []T{T{}}
+}
+
+func Fi() []T {
+ return []T{{}} // element with implicit composite literal type
+}
+
+func Fp() []*T {
+ return []*T{&T{}}
+}
+
+func Fip() []*T {
+ return []*T{{}} // element with implicit composite literal type
+}
+
+func Gp() map[int]*T {
+ return map[int]*T{0: &T{}}
+}
+
+func Gip() map[int]*T {
+ return map[int]*T{0: {}} // element with implicit composite literal type
+}
+
+func Hp() map[*T]int {
+ return map[*T]int{&T{}: 0}
+}
+
+func Hip() map[*T]int {
+ return map[*T]int{{}: 0} // key with implicit composite literal type
+}
diff --git a/test/fixedbugs/issue15572.dir/b.go b/test/fixedbugs/issue15572.dir/b.go
new file mode 100644
index 0000000..355accc
--- /dev/null
+++ b/test/fixedbugs/issue15572.dir/b.go
@@ -0,0 +1,27 @@
+// Copyright 2016 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 b
+
+import "./a"
+
+func F() {
+ a.F()
+ a.Fi()
+}
+
+func Fp() {
+ a.Fp()
+ a.Fip()
+}
+
+func Gp() {
+ a.Gp()
+ a.Gip()
+}
+
+func Hp() {
+ a.Hp()
+ a.Hip()
+}
diff --git a/test/fixedbugs/issue15572.go b/test/fixedbugs/issue15572.go
new file mode 100644
index 0000000..cf77778
--- /dev/null
+++ b/test/fixedbugs/issue15572.go
@@ -0,0 +1,11 @@
+// compiledir
+
+// Copyright 2016 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 that exporting composite literals with implicit
+// types doesn't crash the typechecker when running over
+// inlined function bodies containing such literals.
+
+package ignored
diff --git a/test/fixedbugs/issue15585.go b/test/fixedbugs/issue15585.go
new file mode 100644
index 0000000..79eb13f
--- /dev/null
+++ b/test/fixedbugs/issue15585.go
@@ -0,0 +1,45 @@
+// compile
+
+// Copyright 2016 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 bug
+
+func example(n int) (rc int) {
+ var cc, ll, pp, rr [27]int
+ for q0 := 0; q0 < n-2; q0++ {
+ for q1 := q0 + 2; q1 < n; q1++ {
+ var c, d, l, p, r int
+ b0 := 1 << uint(q0)
+ b1 := 1 << uint(q1)
+ l = ((b0 << 1) | b1) << 1
+ c = b0 | b1 | (-1 << uint(n))
+ r = ((b0 >> 1) | b1) >> 1
+ E:
+ if c != -1 {
+ p = ^(l | c | r)
+ } else {
+ rc++
+ goto R
+ }
+ L:
+ if p != 0 {
+ lsb := p & -p
+ p &^= lsb
+ ll[d], cc[d], rr[d], pp[d] = l, c, r, p
+ l, c, r = (l|lsb)<<1, c|lsb, (r|lsb)>>1
+ d++
+ goto E
+ }
+ R:
+ d--
+ if d >= 0 {
+ l, c, r, p = ll[d], cc[d], rr[d], pp[d]
+ goto L
+ }
+ }
+ }
+ rc <<= 1
+ return
+}
diff --git a/test/fixedbugs/issue15602.go b/test/fixedbugs/issue15602.go
new file mode 100644
index 0000000..badf813
--- /dev/null
+++ b/test/fixedbugs/issue15602.go
@@ -0,0 +1,11 @@
+// compile
+
+// Copyright 2016 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 p
+
+func f(i interface{}) {
+ i, _ = i.(error)
+}
diff --git a/test/fixedbugs/issue15604.go b/test/fixedbugs/issue15604.go
new file mode 100644
index 0000000..4dc0b0b
--- /dev/null
+++ b/test/fixedbugs/issue15604.go
@@ -0,0 +1,17 @@
+// compile
+
+// Copyright 2016 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 bug
+
+import "os"
+
+func f(err error) {
+ var ok bool
+ if err, ok = err.(*os.PathError); ok {
+ if err == os.ErrNotExist {
+ }
+ }
+}
diff --git a/test/fixedbugs/issue15646.dir/a.go b/test/fixedbugs/issue15646.dir/a.go
new file mode 100644
index 0000000..842f196
--- /dev/null
+++ b/test/fixedbugs/issue15646.dir/a.go
@@ -0,0 +1,23 @@
+// Copyright 2016 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 a
+
+type T struct{}
+
+func (T) m() string {
+ return "m"
+}
+
+func (*T) mp() string {
+ return "mp"
+}
+
+func F() func(T) string {
+ return T.m // method expression
+}
+
+func Fp() func(*T) string {
+ return (*T).mp // method expression
+}
diff --git a/test/fixedbugs/issue15646.dir/b.go b/test/fixedbugs/issue15646.dir/b.go
new file mode 100644
index 0000000..3d011ba
--- /dev/null
+++ b/test/fixedbugs/issue15646.dir/b.go
@@ -0,0 +1,16 @@
+// Copyright 2016 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
+
+import "./a" // import must succeed
+
+func main() {
+ if a.F()(a.T{}) != "m" {
+ panic(0)
+ }
+ if a.Fp()(nil) != "mp" {
+ panic(1)
+ }
+}
diff --git a/test/fixedbugs/issue15646.go b/test/fixedbugs/issue15646.go
new file mode 100644
index 0000000..cd4ba9d
--- /dev/null
+++ b/test/fixedbugs/issue15646.go
@@ -0,0 +1,9 @@
+// rundir
+
+// Copyright 2016 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 that method expressions are correctly encoded
+// in binary export data and can be imported again.
+package ignore
\ No newline at end of file
diff --git a/test/fixedbugs/issue15733.go b/test/fixedbugs/issue15733.go
new file mode 100644
index 0000000..8f609e6
--- /dev/null
+++ b/test/fixedbugs/issue15733.go
@@ -0,0 +1,23 @@
+// compile
+
+// Copyright 2016 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
+
+type S struct {
+ a [1 << 16]byte
+}
+
+func f1() {
+ p := &S{}
+ _ = p
+}
+
+type T [1 << 16]byte
+
+func f2() {
+ p := &T{}
+ _ = p
+}
diff --git a/test/fixedbugs/issue15747.go b/test/fixedbugs/issue15747.go
new file mode 100644
index 0000000..34ec719
--- /dev/null
+++ b/test/fixedbugs/issue15747.go
@@ -0,0 +1,41 @@
+// errorcheck -0 -live
+
+// Copyright 2016 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.
+
+// Issue 15747: liveness analysis was marking heap-escaped params live too much,
+// and worse was using the wrong bitmap bits to do so.
+
+package p
+
+var global *[]byte
+
+type Q struct{}
+
+type T struct{ M string }
+
+var b bool
+
+func f1(q *Q, xx []byte) interface{} { // ERROR "live at entry to f1: q xx" "live at call to newobject: q xx" "live at call to writebarrierptr: q &xx"
+ // xx was copied from the stack to the heap on the previous line:
+ // xx was live for the first two prints but then it switched to &xx
+ // being live. We should not see plain xx again.
+ if b {
+ global = &xx // ERROR "live at call to writebarrierptr: q &xx$"
+ }
+ xx, _, err := f2(xx, 5) // ERROR "live at call to newobject: q( d)? &xx( odata.ptr)?" "live at call to writebarrierptr: q (e|err.data err.type)$"
+ if err != nil {
+ return err
+ }
+ return nil
+}
+
+func f2(d []byte, n int) (odata, res []byte, e interface{}) { // ERROR "live at entry to f2: d"
+ if n > len(d) {
+ return d, nil, &T{M: "hello"} // ERROR "live at call to newobject: d"
+ }
+ res = d[:n]
+ odata = d[n:]
+ return
+}
diff --git a/test/fixedbugs/issue15747b.go b/test/fixedbugs/issue15747b.go
new file mode 100644
index 0000000..9620d3d
--- /dev/null
+++ b/test/fixedbugs/issue15747b.go
@@ -0,0 +1,19 @@
+// compile
+
+// Copyright 2016 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.
+
+// Issue 15747: If a ODCL is dropped, for example when inlining,
+// then it's easy to end up not initializing the '&x' pseudo-variable
+// to point to an actual allocation. The liveness analysis will detect
+// this and abort the computation, so this test just checks that the
+// compilation succeeds.
+
+package p
+
+type R [100]byte
+
+func (x R) New() *R {
+ return &x
+}
diff --git a/test/fixedbugs/issue15838.dir/a.go b/test/fixedbugs/issue15838.dir/a.go
new file mode 100644
index 0000000..15b7f1d
--- /dev/null
+++ b/test/fixedbugs/issue15838.dir/a.go
@@ -0,0 +1,61 @@
+// Copyright 2016 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 a
+
+func F1() {
+L:
+ goto L
+}
+
+func F2() {
+L:
+ for {
+ break L
+ }
+}
+
+func F3() {
+L:
+ for {
+ continue L
+ }
+}
+
+func F4() {
+ switch {
+ case true:
+ fallthrough
+ default:
+ }
+}
+
+type T struct{}
+
+func (T) M1() {
+L:
+ goto L
+}
+
+func (T) M2() {
+L:
+ for {
+ break L
+ }
+}
+
+func (T) M3() {
+L:
+ for {
+ continue L
+ }
+}
+
+func (T) M4() {
+ switch {
+ case true:
+ fallthrough
+ default:
+ }
+}
diff --git a/test/fixedbugs/issue15838.dir/b.go b/test/fixedbugs/issue15838.dir/b.go
new file mode 100644
index 0000000..9fd6efc
--- /dev/null
+++ b/test/fixedbugs/issue15838.dir/b.go
@@ -0,0 +1,9 @@
+// Copyright 2016 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 b
+
+import "./a"
+
+type T struct{ a.T }
diff --git a/test/fixedbugs/issue15838.go b/test/fixedbugs/issue15838.go
new file mode 100644
index 0000000..fb1c64d
--- /dev/null
+++ b/test/fixedbugs/issue15838.go
@@ -0,0 +1,12 @@
+// compiledir
+
+// Copyright 2016 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 cases for issue #15838, and related failures.
+// Make sure the importer correctly sets up nodes for
+// label decls, goto, continue, break, and fallthrough
+// statements.
+
+package ignored
diff --git a/test/fixedbugs/issue15898.go b/test/fixedbugs/issue15898.go
new file mode 100644
index 0000000..7b66ea2
--- /dev/null
+++ b/test/fixedbugs/issue15898.go
@@ -0,0 +1,18 @@
+// errorcheck
+
+// Copyright 2016 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 p
+
+func f(e interface{}) {
+ switch e.(type) {
+ case nil, nil: // ERROR "multiple nil cases in type switch"
+ }
+
+ switch e.(type) {
+ case nil:
+ case nil: // ERROR "multiple nil cases in type switch"
+ }
+}
diff --git a/test/fixedbugs/issue15902.go b/test/fixedbugs/issue15902.go
new file mode 100644
index 0000000..9511a22
--- /dev/null
+++ b/test/fixedbugs/issue15902.go
@@ -0,0 +1,27 @@
+// run
+
+// Copyright 2016 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.
+
+// This test makes sure we don't use 4-byte unaligned writes
+// to zero memory on architectures that don't support them.
+
+package main
+
+type T struct {
+ a byte
+ b [10]byte
+}
+
+//go:noinline
+func f(t *T) {
+ // t will be aligned, so &t.b won't be.
+ t.b = [10]byte{}
+}
+
+var t T
+
+func main() {
+ f(&t)
+}
diff --git a/test/fixedbugs/issue15920.dir/a.go b/test/fixedbugs/issue15920.dir/a.go
new file mode 100644
index 0000000..15f9235
--- /dev/null
+++ b/test/fixedbugs/issue15920.dir/a.go
@@ -0,0 +1,9 @@
+// Copyright 2016 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 a
+
+type Error error
+
+func F() Error { return nil }
diff --git a/test/fixedbugs/issue15920.dir/b.go b/test/fixedbugs/issue15920.dir/b.go
new file mode 100644
index 0000000..0a36c5c
--- /dev/null
+++ b/test/fixedbugs/issue15920.dir/b.go
@@ -0,0 +1,7 @@
+// Copyright 2016 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 b
+
+import _ "./a"
diff --git a/test/fixedbugs/issue15920.go b/test/fixedbugs/issue15920.go
new file mode 100644
index 0000000..4d2844d
--- /dev/null
+++ b/test/fixedbugs/issue15920.go
@@ -0,0 +1,7 @@
+// compiledir
+
+// Copyright 2016 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 ignored
diff --git a/test/fixedbugs/issue15926.go b/test/fixedbugs/issue15926.go
new file mode 100644
index 0000000..76e25eb
--- /dev/null
+++ b/test/fixedbugs/issue15926.go
@@ -0,0 +1,20 @@
+// build
+
+// Copyright 2016 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.
+
+// Issue 15926: linker was adding .def to the end of symbols, causing
+// a name collision with a method actually named def.
+
+package main
+
+type S struct{}
+
+func (s S) def() {}
+
+var I = S.def
+
+func main() {
+ I(S{})
+}
diff --git a/test/fixedbugs/issue15961.go b/test/fixedbugs/issue15961.go
new file mode 100644
index 0000000..db3d662
--- /dev/null
+++ b/test/fixedbugs/issue15961.go
@@ -0,0 +1,21 @@
+// compile
+
+// Copyright 2016 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 y
+
+type symSet []int
+
+//go:noinline
+func (s symSet) len() (r int) {
+ return 0
+}
+
+func f(m map[int]symSet) {
+ var symSet []int
+ for _, x := range symSet {
+ m[x] = nil
+ }
+}
diff --git a/test/fixedbugs/issue15975.go b/test/fixedbugs/issue15975.go
new file mode 100644
index 0000000..56a50e1
--- /dev/null
+++ b/test/fixedbugs/issue15975.go
@@ -0,0 +1,36 @@
+// run
+
+// Copyright 2016 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
+
+var fail bool
+
+type Closer interface {
+ Close()
+}
+
+func nilInterfaceDeferCall() {
+ var x Closer
+ defer x.Close()
+ // if it panics when evaluating x.Close, it should not reach here
+ fail = true
+}
+
+func shouldPanic(f func()) {
+ defer func() {
+ if recover() == nil {
+ panic("did not panic")
+ }
+ }()
+ f()
+}
+
+func main() {
+ shouldPanic(nilInterfaceDeferCall)
+ if fail {
+ panic("fail")
+ }
+}
diff --git a/test/fixedbugs/issue15988.go b/test/fixedbugs/issue15988.go
new file mode 100644
index 0000000..2bed2a9
--- /dev/null
+++ b/test/fixedbugs/issue15988.go
@@ -0,0 +1,14 @@
+// compile
+
+// Copyright 2016 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 p
+
+func f(p, q []int) {
+ p = append(q, 5)
+ sink = &p
+}
+
+var sink *[]int
diff --git a/test/fixedbugs/issue16008.go b/test/fixedbugs/issue16008.go
new file mode 100644
index 0000000..0e369ef
--- /dev/null
+++ b/test/fixedbugs/issue16008.go
@@ -0,0 +1,56 @@
+// errorcheck -0 -race
+
+// Copyright 2016 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 foo
+
+const benchmarkNumNodes = 10000
+
+func BenchmarkUpdateNodeTransaction(b B) {
+ s, nodeIDs := setupNodes(benchmarkNumNodes)
+ b.ResetTimer()
+ for i := 0; i < b.N(); i++ {
+ _ = s.Update(func(tx1 Tx) error {
+ _ = UpdateNode(tx1, &Node{
+ ID: nodeIDs[i%benchmarkNumNodes],
+ })
+ return nil
+ })
+ }
+}
+
+type B interface {
+ ResetTimer()
+ N() int
+}
+
+type Tx interface {
+}
+
+type Node struct {
+ ID string
+}
+
+type MemoryStore struct {
+}
+
+// go:noinline
+func setupNodes(n int) (s *MemoryStore, nodeIDs []string) {
+ return
+}
+
+//go:noinline
+func (s *MemoryStore) Update(cb func(Tx) error) error {
+ return nil
+}
+
+var sink interface{}
+
+//go:noinline
+func UpdateNode(tx Tx, n *Node) error {
+ sink = tx
+ sink = n
+ return nil
+}
diff --git a/test/fixedbugs/issue16016.go b/test/fixedbugs/issue16016.go
new file mode 100644
index 0000000..e738e1d
--- /dev/null
+++ b/test/fixedbugs/issue16016.go
@@ -0,0 +1,35 @@
+// run
+
+// Copyright 2016 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
+
+import "time"
+
+type T struct{}
+
+func (*T) Foo(vals []interface{}) {
+ switch v := vals[0].(type) {
+ case string:
+ _ = v
+ }
+}
+
+type R struct{ *T }
+
+type Q interface {
+ Foo([]interface{})
+}
+
+func main() {
+ var q Q = &R{&T{}}
+ for i := 0; i < 10000; i++ {
+ go func() {
+ defer q.Foo([]interface{}{"meow"})
+ time.Sleep(100 * time.Millisecond)
+ }()
+ }
+ time.Sleep(1 * time.Second)
+}
diff --git a/test/fixedbugs/issue16037_run.go b/test/fixedbugs/issue16037_run.go
new file mode 100644
index 0000000..23fff59
--- /dev/null
+++ b/test/fixedbugs/issue16037_run.go
@@ -0,0 +1,70 @@
+// +build !nacl,!android
+// run
+
+// Copyright 2016 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
+
+import (
+ "bytes"
+ "fmt"
+ "html/template"
+ "io/ioutil"
+ "log"
+ "os"
+ "os/exec"
+ "path/filepath"
+)
+
+var tmpl = template.Must(template.New("main").Parse(`
+package main
+
+type T struct {
+ {{range .Names}}
+ {{.Name}} *string
+ {{end}}
+}
+
+{{range .Names}}
+func (t *T) Get{{.Name}}() string {
+ if t.{{.Name}} == nil {
+ return ""
+ }
+ return *t.{{.Name}}
+}
+{{end}}
+
+func main() {}
+`))
+
+func main() {
+ const n = 5000
+
+ type Name struct{ Name string }
+ var t struct{ Names []Name }
+ for i := 0; i < n; i++ {
+ t.Names = append(t.Names, Name{Name: fmt.Sprintf("H%06X", i)})
+ }
+
+ buf := new(bytes.Buffer)
+ if err := tmpl.Execute(buf, t); err != nil {
+ log.Fatal(err)
+ }
+
+ dir, err := ioutil.TempDir("", "issue16037-")
+ if err != nil {
+ log.Fatal(err)
+ }
+ defer os.RemoveAll(dir)
+ path := filepath.Join(dir, "ridiculous_number_of_fields.go")
+ if err := ioutil.WriteFile(path, buf.Bytes(), 0664); err != nil {
+ log.Fatal(err)
+ }
+
+ out, err := exec.Command("go", "build", "-o="+filepath.Join(dir, "out"), path).CombinedOutput()
+ if err != nil {
+ log.Fatalf("build failed: %v\n%s", err, out)
+ }
+}
diff --git a/test/fixedbugs/issue16095.go b/test/fixedbugs/issue16095.go
new file mode 100644
index 0000000..864b4b7
--- /dev/null
+++ b/test/fixedbugs/issue16095.go
@@ -0,0 +1,104 @@
+// run
+
+// Copyright 2016 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
+
+import (
+ "fmt"
+ "runtime"
+)
+
+var sink *[20]byte
+
+func f() (x [20]byte) {
+ // Initialize x.
+ for i := range x {
+ x[i] = byte(i)
+ }
+
+ // Force x to be allocated on the heap.
+ sink = &x
+ sink = nil
+
+ // Go to deferreturn after the panic below.
+ defer func() {
+ recover()
+ }()
+
+ // This call collects the heap-allocated version of x (oops!)
+ runtime.GC()
+
+ // Allocate that same object again and clobber it.
+ y := new([20]byte)
+ for i := 0; i < 20; i++ {
+ y[i] = 99
+ }
+ // Make sure y is heap allocated.
+ sink = y
+
+ panic(nil)
+
+ // After the recover we reach the deferreturn, which
+ // copies the heap version of x back to the stack.
+ // It gets the pointer to x from a stack slot that was
+ // not marked as live during the call to runtime.GC().
+}
+
+var sinkint int
+
+func g(p *int) (x [20]byte) {
+ // Initialize x.
+ for i := range x {
+ x[i] = byte(i)
+ }
+
+ // Force x to be allocated on the heap.
+ sink = &x
+ sink = nil
+
+ // Go to deferreturn after the panic below.
+ defer func() {
+ recover()
+ }()
+
+ // This call collects the heap-allocated version of x (oops!)
+ runtime.GC()
+
+ // Allocate that same object again and clobber it.
+ y := new([20]byte)
+ for i := 0; i < 20; i++ {
+ y[i] = 99
+ }
+ // Make sure y is heap allocated.
+ sink = y
+
+ // panic with a non-call (with no fallthrough)
+ for {
+ sinkint = *p
+ }
+
+ // After the recover we reach the deferreturn, which
+ // copies the heap version of x back to the stack.
+ // It gets the pointer to x from a stack slot that was
+ // not marked as live during the call to runtime.GC().
+}
+
+func main() {
+ x := f()
+ for i, v := range x {
+ if v != byte(i) {
+ fmt.Printf("%v\n", x)
+ panic("bad f")
+ }
+ }
+ x = g(nil)
+ for i, v := range x {
+ if v != byte(i) {
+ fmt.Printf("%v\n", x)
+ panic("bad g")
+ }
+ }
+}
diff --git a/test/fixedbugs/issue16130.go b/test/fixedbugs/issue16130.go
new file mode 100644
index 0000000..19c8264
--- /dev/null
+++ b/test/fixedbugs/issue16130.go
@@ -0,0 +1,43 @@
+// run
+
+// Copyright 2016 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 that an interface conversion error panics with an "interface
+// conversion" run-time error. It was (incorrectly) panicing with a
+// "nil pointer dereference."
+
+package main
+
+import (
+ "fmt"
+ "runtime"
+ "strings"
+)
+
+type I interface {
+ Get() int
+}
+
+func main() {
+ defer func() {
+ r := recover()
+ if r == nil {
+ panic("expected panic")
+ }
+ re, ok := r.(runtime.Error)
+ if !ok {
+ panic(fmt.Sprintf("got %T, expected runtime.Error", r))
+ }
+ if !strings.Contains(re.Error(), "interface conversion") {
+ panic(fmt.Sprintf("got %q, expected interface conversion error", re.Error()))
+ }
+ }()
+ e := (interface{})(0)
+ if _, ok := e.(I); ok {
+ panic("unexpected interface conversion success")
+ }
+ fmt.Println(e.(I))
+ panic("unexpected interface conversion success")
+}
diff --git a/test/fixedbugs/issue16133.dir/a1.go b/test/fixedbugs/issue16133.dir/a1.go
new file mode 100644
index 0000000..497cccf
--- /dev/null
+++ b/test/fixedbugs/issue16133.dir/a1.go
@@ -0,0 +1,7 @@
+package a
+
+type X string
+
+func NewX() X {
+ return ""
+}
diff --git a/test/fixedbugs/issue16133.dir/a2.go b/test/fixedbugs/issue16133.dir/a2.go
new file mode 100644
index 0000000..497cccf
--- /dev/null
+++ b/test/fixedbugs/issue16133.dir/a2.go
@@ -0,0 +1,7 @@
+package a
+
+type X string
+
+func NewX() X {
+ return ""
+}
diff --git a/test/fixedbugs/issue16133.dir/b.go b/test/fixedbugs/issue16133.dir/b.go
new file mode 100644
index 0000000..be1bebf
--- /dev/null
+++ b/test/fixedbugs/issue16133.dir/b.go
@@ -0,0 +1,7 @@
+package b
+
+import "./a2"
+
+type T struct {
+ X a.X
+}
diff --git a/test/fixedbugs/issue16133.dir/c.go b/test/fixedbugs/issue16133.dir/c.go
new file mode 100644
index 0000000..b25fe5a
--- /dev/null
+++ b/test/fixedbugs/issue16133.dir/c.go
@@ -0,0 +1,10 @@
+package p
+
+import (
+ "./a1"
+ "./b"
+)
+
+var _ = b.T{
+ X: a.NewX(), // ERROR `cannot use "a1"\.NewX\(\)`
+}
diff --git a/test/fixedbugs/issue16133.go b/test/fixedbugs/issue16133.go
new file mode 100644
index 0000000..4afffc5
--- /dev/null
+++ b/test/fixedbugs/issue16133.go
@@ -0,0 +1,10 @@
+// errorcheckdir -s
+
+// Copyright 2016 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.
+
+// Verify error messages referring to multiple different
+// packages with the same package name.
+
+package ignored
diff --git a/test/fixedbugs/issue16193.go b/test/fixedbugs/issue16193.go
new file mode 100644
index 0000000..eada62d
--- /dev/null
+++ b/test/fixedbugs/issue16193.go
@@ -0,0 +1,27 @@
+// compile
+
+// Copyright 2016 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.
+
+// The compiler used the name "glob" as the function holding a global
+// function literal, colliding with an actual function named "glob".
+
+package main
+
+func glob() {
+ func() {
+ }()
+}
+
+var c1 = func() {
+}
+
+var c2 = func() {
+}
+
+func main() {
+ glob()
+ c1()
+ c2()
+}
diff --git a/test/fixedbugs/issue16249.go b/test/fixedbugs/issue16249.go
new file mode 100644
index 0000000..723d5d9
--- /dev/null
+++ b/test/fixedbugs/issue16249.go
@@ -0,0 +1,58 @@
+// run
+
+// Copyright 2016 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.
+
+// Liveness calculations were wrong for a result parameter pushed onto
+// the heap in a function that used defer. Program would crash with
+// runtime: bad pointer in frame main.A at 0xc4201e6838: 0x1
+
+package main
+
+import "errors"
+
+var sink interface{}
+
+//go:noinline
+func f(err *error) {
+ if err != nil {
+ sink = err
+ }
+}
+
+//go:noinline
+func A(n, m int64) (res int64, err error) {
+ defer f(&err) // output parameter's address escapes to a defer.
+ if n < 0 {
+ err = errors.New("No negative")
+ return
+ }
+ if n <= 1 {
+ res = n
+ return
+ }
+ res = B(m) // This call to B drizzles a little junk on the stack.
+ res, err = A(n-1, m)
+ res++
+ return
+}
+
+// B does a little bit of recursion dribbling not-zero onto the stack.
+//go:noinline
+func B(n int64) (res int64) {
+ if n <= 1 { // Prefer to leave a 1 on the stack.
+ return n
+ }
+ return 1 + B(n-1)
+}
+
+func main() {
+ x, e := A(0, 0)
+ for j := 0; j < 4; j++ { // j controls amount of B's stack dribble
+ for i := 0; i < 1000; i++ { // try more and more recursion until stack growth occurs in newobject in prologue
+ x, e = A(int64(i), int64(j))
+ }
+ }
+ _, _ = x, e
+}
diff --git a/test/fixedbugs/issue2615.go b/test/fixedbugs/issue2615.go
index 686e1e1..831110e 100644
--- a/test/fixedbugs/issue2615.go
+++ b/test/fixedbugs/issue2615.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue3552.dir/one.go b/test/fixedbugs/issue3552.dir/one.go
index 491ada1..e594db7 100644
--- a/test/fixedbugs/issue3552.dir/one.go
+++ b/test/fixedbugs/issue3552.dir/one.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue3552.dir/two.go b/test/fixedbugs/issue3552.dir/two.go
index 1366d24..2f330bf 100644
--- a/test/fixedbugs/issue3552.dir/two.go
+++ b/test/fixedbugs/issue3552.dir/two.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue3705.go b/test/fixedbugs/issue3705.go
index 64ef38b..ed0a193 100644
--- a/test/fixedbugs/issue3705.go
+++ b/test/fixedbugs/issue3705.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue3783.go b/test/fixedbugs/issue3783.go
index d7a4a2e..7db06d1 100644
--- a/test/fixedbugs/issue3783.go
+++ b/test/fixedbugs/issue3783.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue3925.go b/test/fixedbugs/issue3925.go
index a62d439..628c222 100644
--- a/test/fixedbugs/issue3925.go
+++ b/test/fixedbugs/issue3925.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4085a.go b/test/fixedbugs/issue4085a.go
index 089637d..200290a 100644
--- a/test/fixedbugs/issue4085a.go
+++ b/test/fixedbugs/issue4085a.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4085b.go b/test/fixedbugs/issue4085b.go
index 63aca23..583c417 100644
--- a/test/fixedbugs/issue4085b.go
+++ b/test/fixedbugs/issue4085b.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4097.go b/test/fixedbugs/issue4097.go
index c2b7d9b..30b65bc 100644
--- a/test/fixedbugs/issue4097.go
+++ b/test/fixedbugs/issue4097.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4099.go b/test/fixedbugs/issue4099.go
index 89392bf..8ea809c 100644
--- a/test/fixedbugs/issue4099.go
+++ b/test/fixedbugs/issue4099.go
@@ -1,6 +1,6 @@
// errorcheck -0 -m
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4162.go b/test/fixedbugs/issue4162.go
index c2a8338..f236bd0 100644
--- a/test/fixedbugs/issue4162.go
+++ b/test/fixedbugs/issue4162.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4167.go b/test/fixedbugs/issue4167.go
index 4e35331..86a636f 100644
--- a/test/fixedbugs/issue4167.go
+++ b/test/fixedbugs/issue4167.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4232.go b/test/fixedbugs/issue4232.go
index 755b1b1..935f382 100644
--- a/test/fixedbugs/issue4232.go
+++ b/test/fixedbugs/issue4232.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4251.go b/test/fixedbugs/issue4251.go
index 3668d4c..d11ce51 100644
--- a/test/fixedbugs/issue4251.go
+++ b/test/fixedbugs/issue4251.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4252.dir/a.go b/test/fixedbugs/issue4252.dir/a.go
index 089b6f2..a587e28 100644
--- a/test/fixedbugs/issue4252.dir/a.go
+++ b/test/fixedbugs/issue4252.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4252.dir/main.go b/test/fixedbugs/issue4252.dir/main.go
index 28e4342..02d9836 100644
--- a/test/fixedbugs/issue4252.dir/main.go
+++ b/test/fixedbugs/issue4252.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4252.go b/test/fixedbugs/issue4252.go
index 1b0e5b2..01bcbc4 100644
--- a/test/fixedbugs/issue4252.go
+++ b/test/fixedbugs/issue4252.go
@@ -1,6 +1,6 @@
// rundir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4283.go b/test/fixedbugs/issue4283.go
index 128c872..fa5629b 100644
--- a/test/fixedbugs/issue4283.go
+++ b/test/fixedbugs/issue4283.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4313.go b/test/fixedbugs/issue4313.go
index b2f69db..2494b83 100644
--- a/test/fixedbugs/issue4313.go
+++ b/test/fixedbugs/issue4313.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4316.go b/test/fixedbugs/issue4316.go
index bb18a08..de9a61b 100644
--- a/test/fixedbugs/issue4316.go
+++ b/test/fixedbugs/issue4316.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4323.go b/test/fixedbugs/issue4323.go
index 6bb78f4..f082a1f 100644
--- a/test/fixedbugs/issue4323.go
+++ b/test/fixedbugs/issue4323.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4326.go b/test/fixedbugs/issue4326.go
index 5ce2eea..6a510f9 100644
--- a/test/fixedbugs/issue4326.go
+++ b/test/fixedbugs/issue4326.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4348.go b/test/fixedbugs/issue4348.go
index 3dac8f7..c59b6b8 100644
--- a/test/fixedbugs/issue4348.go
+++ b/test/fixedbugs/issue4348.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4353.go b/test/fixedbugs/issue4353.go
index defe7c3..6a17c46 100644
--- a/test/fixedbugs/issue4353.go
+++ b/test/fixedbugs/issue4353.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4359.go b/test/fixedbugs/issue4359.go
index b5adb40..c79e9e2 100644
--- a/test/fixedbugs/issue4359.go
+++ b/test/fixedbugs/issue4359.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4365.go b/test/fixedbugs/issue4365.go
index 04d31f7..09ff1bf 100644
--- a/test/fixedbugs/issue4365.go
+++ b/test/fixedbugs/issue4365.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue4370.dir/p1.go b/test/fixedbugs/issue4370.dir/p1.go
index d732c8b..d010e93 100644
--- a/test/fixedbugs/issue4370.dir/p1.go
+++ b/test/fixedbugs/issue4370.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4370.dir/p2.go b/test/fixedbugs/issue4370.dir/p2.go
index 33370d0..0d3e236 100644
--- a/test/fixedbugs/issue4370.dir/p2.go
+++ b/test/fixedbugs/issue4370.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4370.dir/p3.go b/test/fixedbugs/issue4370.dir/p3.go
index 13c996b..c275c6e 100644
--- a/test/fixedbugs/issue4370.dir/p3.go
+++ b/test/fixedbugs/issue4370.dir/p3.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4370.go b/test/fixedbugs/issue4370.go
index 76b47e1..b1d0364 100644
--- a/test/fixedbugs/issue4370.go
+++ b/test/fixedbugs/issue4370.go
@@ -1,6 +1,6 @@
// compiledir
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4388.go b/test/fixedbugs/issue4388.go
index b18c98b..5bb05eb 100644
--- a/test/fixedbugs/issue4388.go
+++ b/test/fixedbugs/issue4388.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue4396a.go b/test/fixedbugs/issue4396a.go
index 11ae1f7..38dd4b8 100644
--- a/test/fixedbugs/issue4396a.go
+++ b/test/fixedbugs/issue4396a.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4396b.go b/test/fixedbugs/issue4396b.go
index d0bf28f..1284870 100644
--- a/test/fixedbugs/issue4396b.go
+++ b/test/fixedbugs/issue4396b.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4399.go b/test/fixedbugs/issue4399.go
index 6674db9..3dc2126 100644
--- a/test/fixedbugs/issue4399.go
+++ b/test/fixedbugs/issue4399.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4405.go b/test/fixedbugs/issue4405.go
index b8458d7..5ba3e10 100644
--- a/test/fixedbugs/issue4405.go
+++ b/test/fixedbugs/issue4405.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4429.go b/test/fixedbugs/issue4429.go
index 6822760..9eb2e0f 100644
--- a/test/fixedbugs/issue4429.go
+++ b/test/fixedbugs/issue4429.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4448.go b/test/fixedbugs/issue4448.go
index fa1d9fe..f5e4715 100644
--- a/test/fixedbugs/issue4448.go
+++ b/test/fixedbugs/issue4448.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4452.go b/test/fixedbugs/issue4452.go
index 54dd214..f91bd2c 100644
--- a/test/fixedbugs/issue4452.go
+++ b/test/fixedbugs/issue4452.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4458.go b/test/fixedbugs/issue4458.go
index 820f18c..98ffea7 100644
--- a/test/fixedbugs/issue4458.go
+++ b/test/fixedbugs/issue4458.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4463.go b/test/fixedbugs/issue4463.go
index 70977ce..6ad1952 100644
--- a/test/fixedbugs/issue4463.go
+++ b/test/fixedbugs/issue4463.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4468.go b/test/fixedbugs/issue4468.go
index ef0b46b..d26725e 100644
--- a/test/fixedbugs/issue4468.go
+++ b/test/fixedbugs/issue4468.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
@@ -19,8 +19,12 @@
}
func F() {
- go (F()) // ERROR "must be function call"
- defer (F()) // ERROR "must be function call"
+ go F // ERROR "must be function call"
+ defer F // ERROR "must be function call"
+ go (F) // ERROR "must be function call|must not be parenthesized"
+ defer (F) // ERROR "must be function call|must not be parenthesized"
+ go (F()) // ERROR "must be function call|must not be parenthesized"
+ defer (F()) // ERROR "must be function call|must not be parenthesized"
var s S
(&s.t).F()
go (&s.t).F()
diff --git a/test/fixedbugs/issue4470.go b/test/fixedbugs/issue4470.go
index 5ed09ca..d922478 100644
--- a/test/fixedbugs/issue4470.go
+++ b/test/fixedbugs/issue4470.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4495.go b/test/fixedbugs/issue4495.go
index 7ec1134..308acc2 100644
--- a/test/fixedbugs/issue4495.go
+++ b/test/fixedbugs/issue4495.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4517a.go b/test/fixedbugs/issue4517a.go
index a1b6b57..83d42e7 100644
--- a/test/fixedbugs/issue4517a.go
+++ b/test/fixedbugs/issue4517a.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4517b.go b/test/fixedbugs/issue4517b.go
index f04103f..34fa98f 100644
--- a/test/fixedbugs/issue4517b.go
+++ b/test/fixedbugs/issue4517b.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4517c.go b/test/fixedbugs/issue4517c.go
index 47b21cf..9023e0a 100644
--- a/test/fixedbugs/issue4517c.go
+++ b/test/fixedbugs/issue4517c.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4517d.go b/test/fixedbugs/issue4517d.go
index 3d727d4..197c225 100644
--- a/test/fixedbugs/issue4517d.go
+++ b/test/fixedbugs/issue4517d.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4518.go b/test/fixedbugs/issue4518.go
index e64b069..c482b0f 100644
--- a/test/fixedbugs/issue4518.go
+++ b/test/fixedbugs/issue4518.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
@@ -10,15 +10,13 @@
package main
-func DontInline() {}
-
+//go:noinline
func F(e interface{}) (int, int) {
- DontInline()
return 3, 7
}
+//go:noinline
func G() (int, int) {
- DontInline()
return 3, 7
}
diff --git a/test/fixedbugs/issue4529.go b/test/fixedbugs/issue4529.go
index 4f37e7c..66b96c7 100644
--- a/test/fixedbugs/issue4529.go
+++ b/test/fixedbugs/issue4529.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4545.go b/test/fixedbugs/issue4545.go
index c37ccef..534ba71 100644
--- a/test/fixedbugs/issue4545.go
+++ b/test/fixedbugs/issue4545.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4562.go b/test/fixedbugs/issue4562.go
index 29d98b0..8c958f5 100644
--- a/test/fixedbugs/issue4562.go
+++ b/test/fixedbugs/issue4562.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4585.go b/test/fixedbugs/issue4585.go
index ad1242d..9191ec5 100644
--- a/test/fixedbugs/issue4585.go
+++ b/test/fixedbugs/issue4585.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4590.dir/pkg1.go b/test/fixedbugs/issue4590.dir/pkg1.go
index c447371..96cac0a 100644
--- a/test/fixedbugs/issue4590.dir/pkg1.go
+++ b/test/fixedbugs/issue4590.dir/pkg1.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4590.dir/pkg2.go b/test/fixedbugs/issue4590.dir/pkg2.go
index 61c01d7..98bc2a5 100644
--- a/test/fixedbugs/issue4590.dir/pkg2.go
+++ b/test/fixedbugs/issue4590.dir/pkg2.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4590.dir/prog.go b/test/fixedbugs/issue4590.dir/prog.go
index 3220e85..32055b2 100644
--- a/test/fixedbugs/issue4590.dir/prog.go
+++ b/test/fixedbugs/issue4590.dir/prog.go
@@ -1,4 +1,4 @@
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4614.go b/test/fixedbugs/issue4614.go
index 1aa318c..ad378d8 100644
--- a/test/fixedbugs/issue4614.go
+++ b/test/fixedbugs/issue4614.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue4618.go b/test/fixedbugs/issue4618.go
index fe875b3..0ba9523 100644
--- a/test/fixedbugs/issue4618.go
+++ b/test/fixedbugs/issue4618.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4620.go b/test/fixedbugs/issue4620.go
index 7b4ebf9..5aa2908 100644
--- a/test/fixedbugs/issue4620.go
+++ b/test/fixedbugs/issue4620.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4654.go b/test/fixedbugs/issue4654.go
index d3f582b..76aff76 100644
--- a/test/fixedbugs/issue4654.go
+++ b/test/fixedbugs/issue4654.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4663.go b/test/fixedbugs/issue4663.go
index edaee93..971290d 100644
--- a/test/fixedbugs/issue4663.go
+++ b/test/fixedbugs/issue4663.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4667.go b/test/fixedbugs/issue4667.go
index 18d773c..31b3284 100644
--- a/test/fixedbugs/issue4667.go
+++ b/test/fixedbugs/issue4667.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4734.go b/test/fixedbugs/issue4734.go
index 69f66f2..45e609d 100644
--- a/test/fixedbugs/issue4734.go
+++ b/test/fixedbugs/issue4734.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4748.go b/test/fixedbugs/issue4748.go
index 73c7539..f7c77cf 100644
--- a/test/fixedbugs/issue4748.go
+++ b/test/fixedbugs/issue4748.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4752.go b/test/fixedbugs/issue4752.go
index d6781e3..af7bb92 100644
--- a/test/fixedbugs/issue4752.go
+++ b/test/fixedbugs/issue4752.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4776.go b/test/fixedbugs/issue4776.go
index 13781af..a1009ad 100644
--- a/test/fixedbugs/issue4776.go
+++ b/test/fixedbugs/issue4776.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4785.go b/test/fixedbugs/issue4785.go
index c3dd629..d0bcd56 100644
--- a/test/fixedbugs/issue4785.go
+++ b/test/fixedbugs/issue4785.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4909a.go b/test/fixedbugs/issue4909a.go
index aefe2d6..09e1b85 100644
--- a/test/fixedbugs/issue4909a.go
+++ b/test/fixedbugs/issue4909a.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue4964.dir/a.go b/test/fixedbugs/issue4964.dir/a.go
index 2b9e44e..216f352 100644
--- a/test/fixedbugs/issue4964.dir/a.go
+++ b/test/fixedbugs/issue4964.dir/a.go
@@ -10,16 +10,14 @@
Pointer *int
}
-func dontinline() {}
-
+//go:noinline
func Store(t *T) {
global = t.Pointer
- dontinline()
}
+//go:noinline
func Store2(t *T) {
global2 = t.Pointer
- dontinline()
}
func Get() *int {
diff --git a/test/fixedbugs/issue5002.go b/test/fixedbugs/issue5002.go
index 1e74fa1..5ac119a 100644
--- a/test/fixedbugs/issue5002.go
+++ b/test/fixedbugs/issue5002.go
@@ -1,6 +1,6 @@
// build
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5056.go b/test/fixedbugs/issue5056.go
index a2cde2a..6fb444a 100644
--- a/test/fixedbugs/issue5056.go
+++ b/test/fixedbugs/issue5056.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5089.go b/test/fixedbugs/issue5089.go
index 81b9f05..9f7fa5a 100644
--- a/test/fixedbugs/issue5089.go
+++ b/test/fixedbugs/issue5089.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5231.go b/test/fixedbugs/issue5231.go
index 4039913..6bc8826 100644
--- a/test/fixedbugs/issue5231.go
+++ b/test/fixedbugs/issue5231.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5358.go b/test/fixedbugs/issue5358.go
index c2b1da9..25f1e52 100644
--- a/test/fixedbugs/issue5358.go
+++ b/test/fixedbugs/issue5358.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5373.go b/test/fixedbugs/issue5373.go
index 17ce189..8aee9a2 100644
--- a/test/fixedbugs/issue5373.go
+++ b/test/fixedbugs/issue5373.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue5581.go b/test/fixedbugs/issue5581.go
index 36a4ad6..8834b44 100644
--- a/test/fixedbugs/issue5581.go
+++ b/test/fixedbugs/issue5581.go
@@ -3,7 +3,7 @@
// Used to emit a spurious "invalid recursive type" error.
// See golang.org/issue/5581.
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5698.go b/test/fixedbugs/issue5698.go
index 035bbd3..081541c 100644
--- a/test/fixedbugs/issue5698.go
+++ b/test/fixedbugs/issue5698.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5704.go b/test/fixedbugs/issue5704.go
index 1dfa072..11b9a93 100644
--- a/test/fixedbugs/issue5704.go
+++ b/test/fixedbugs/issue5704.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue5793.go b/test/fixedbugs/issue5793.go
index f5a9965..8104155 100644
--- a/test/fixedbugs/issue5793.go
+++ b/test/fixedbugs/issue5793.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5809.go b/test/fixedbugs/issue5809.go
index ca060b5..fc8eeef 100644
--- a/test/fixedbugs/issue5809.go
+++ b/test/fixedbugs/issue5809.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5820.go b/test/fixedbugs/issue5820.go
index 94de06d..1046d66 100644
--- a/test/fixedbugs/issue5820.go
+++ b/test/fixedbugs/issue5820.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5841.go b/test/fixedbugs/issue5841.go
index cfc4a50..2be1aee 100644
--- a/test/fixedbugs/issue5841.go
+++ b/test/fixedbugs/issue5841.go
@@ -1,6 +1,6 @@
// build
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5856.go b/test/fixedbugs/issue5856.go
index 78ca3b9..5e16c78 100644
--- a/test/fixedbugs/issue5856.go
+++ b/test/fixedbugs/issue5856.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue5957.dir/c.go b/test/fixedbugs/issue5957.dir/c.go
index a1781d4..d115eac 100644
--- a/test/fixedbugs/issue5957.dir/c.go
+++ b/test/fixedbugs/issue5957.dir/c.go
@@ -2,7 +2,7 @@
import (
"./a" // ERROR "imported and not used: \x22a\x22 as surprise|imported and not used: surprise"
- "./b" // GC_ERROR "imported and not used: \x22b\x22 as surprise2|imported and not used: surprise2"
+ "./b" // ERROR "imported and not used: \x22b\x22 as surprise2|imported and not used: surprise2"
b "./b" // ERROR "imported and not used: \x22b\x22$|imported and not used: surprise2"
foo "math" // ERROR "imported and not used: \x22math\x22 as foo|imported and not used: math"
"fmt" // actually used
diff --git a/test/fixedbugs/issue5963.go b/test/fixedbugs/issue5963.go
index 190e8f4..f828303 100644
--- a/test/fixedbugs/issue5963.go
+++ b/test/fixedbugs/issue5963.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6004.go b/test/fixedbugs/issue6004.go
index 45aaffd..2b3dcd9 100644
--- a/test/fixedbugs/issue6004.go
+++ b/test/fixedbugs/issue6004.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6036.go b/test/fixedbugs/issue6036.go
index 5f787c5..795b223 100644
--- a/test/fixedbugs/issue6036.go
+++ b/test/fixedbugs/issue6036.go
@@ -1,7 +1,7 @@
// +build amd64
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6055.go b/test/fixedbugs/issue6055.go
index 698f62a..4594348 100644
--- a/test/fixedbugs/issue6055.go
+++ b/test/fixedbugs/issue6055.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6131.go b/test/fixedbugs/issue6131.go
index 817e4a8..61548a2 100644
--- a/test/fixedbugs/issue6131.go
+++ b/test/fixedbugs/issue6131.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6140.go b/test/fixedbugs/issue6140.go
index d494933..dde7921 100644
--- a/test/fixedbugs/issue6140.go
+++ b/test/fixedbugs/issue6140.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6247.go b/test/fixedbugs/issue6247.go
index eea8f9c..2786786 100644
--- a/test/fixedbugs/issue6247.go
+++ b/test/fixedbugs/issue6247.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6269.go b/test/fixedbugs/issue6269.go
index af5feb7..2930f52 100644
--- a/test/fixedbugs/issue6269.go
+++ b/test/fixedbugs/issue6269.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6295.dir/p0.go b/test/fixedbugs/issue6295.dir/p0.go
index cf86fbc..d4d4da7 100644
--- a/test/fixedbugs/issue6295.dir/p0.go
+++ b/test/fixedbugs/issue6295.dir/p0.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6295.dir/p1.go b/test/fixedbugs/issue6295.dir/p1.go
index 974d02f..26efae7 100644
--- a/test/fixedbugs/issue6295.dir/p1.go
+++ b/test/fixedbugs/issue6295.dir/p1.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6295.dir/p2.go b/test/fixedbugs/issue6295.dir/p2.go
index 4703ec0..f5b6ffd 100644
--- a/test/fixedbugs/issue6295.dir/p2.go
+++ b/test/fixedbugs/issue6295.dir/p2.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6298.go b/test/fixedbugs/issue6298.go
index 6303dbe..ab3bfcd 100644
--- a/test/fixedbugs/issue6298.go
+++ b/test/fixedbugs/issue6298.go
@@ -3,7 +3,7 @@
// golang.org/issue/6298.
// Used to cause "internal error: typename ideal bool"
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6513.dir/a.go b/test/fixedbugs/issue6513.dir/a.go
index da90ca3..e5536fe 100644
--- a/test/fixedbugs/issue6513.dir/a.go
+++ b/test/fixedbugs/issue6513.dir/a.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6513.dir/b.go b/test/fixedbugs/issue6513.dir/b.go
index 3b35b2d..ce3d52e 100644
--- a/test/fixedbugs/issue6513.dir/b.go
+++ b/test/fixedbugs/issue6513.dir/b.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6513.dir/main.go b/test/fixedbugs/issue6513.dir/main.go
index f09b727..8d8c02b 100644
--- a/test/fixedbugs/issue6513.dir/main.go
+++ b/test/fixedbugs/issue6513.dir/main.go
@@ -1,4 +1,4 @@
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6572.go b/test/fixedbugs/issue6572.go
index e75da54..e4465e9 100644
--- a/test/fixedbugs/issue6572.go
+++ b/test/fixedbugs/issue6572.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6671.go b/test/fixedbugs/issue6671.go
index b88faa4..ce43f31 100644
--- a/test/fixedbugs/issue6671.go
+++ b/test/fixedbugs/issue6671.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703a.go b/test/fixedbugs/issue6703a.go
index d4c008f..38c5956 100644
--- a/test/fixedbugs/issue6703a.go
+++ b/test/fixedbugs/issue6703a.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703b.go b/test/fixedbugs/issue6703b.go
index 326b583..35438c3 100644
--- a/test/fixedbugs/issue6703b.go
+++ b/test/fixedbugs/issue6703b.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703c.go b/test/fixedbugs/issue6703c.go
index 4735764..ade40e3 100644
--- a/test/fixedbugs/issue6703c.go
+++ b/test/fixedbugs/issue6703c.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703d.go b/test/fixedbugs/issue6703d.go
index 0a1952f..dd48163 100644
--- a/test/fixedbugs/issue6703d.go
+++ b/test/fixedbugs/issue6703d.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703e.go b/test/fixedbugs/issue6703e.go
index 416066e..d362d6e 100644
--- a/test/fixedbugs/issue6703e.go
+++ b/test/fixedbugs/issue6703e.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703f.go b/test/fixedbugs/issue6703f.go
index 3023829..0b49026 100644
--- a/test/fixedbugs/issue6703f.go
+++ b/test/fixedbugs/issue6703f.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703g.go b/test/fixedbugs/issue6703g.go
index 002b5a6..05ec740 100644
--- a/test/fixedbugs/issue6703g.go
+++ b/test/fixedbugs/issue6703g.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703h.go b/test/fixedbugs/issue6703h.go
index 234ccb3..f6b69e1 100644
--- a/test/fixedbugs/issue6703h.go
+++ b/test/fixedbugs/issue6703h.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703i.go b/test/fixedbugs/issue6703i.go
index 78b4d49..fb580a2 100644
--- a/test/fixedbugs/issue6703i.go
+++ b/test/fixedbugs/issue6703i.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703j.go b/test/fixedbugs/issue6703j.go
index a7f63f7..b4c079f 100644
--- a/test/fixedbugs/issue6703j.go
+++ b/test/fixedbugs/issue6703j.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703k.go b/test/fixedbugs/issue6703k.go
index 19c6107..6f606e2 100644
--- a/test/fixedbugs/issue6703k.go
+++ b/test/fixedbugs/issue6703k.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703l.go b/test/fixedbugs/issue6703l.go
index 3f4ca31..684c225 100644
--- a/test/fixedbugs/issue6703l.go
+++ b/test/fixedbugs/issue6703l.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703m.go b/test/fixedbugs/issue6703m.go
index d80959c..7d1b604 100644
--- a/test/fixedbugs/issue6703m.go
+++ b/test/fixedbugs/issue6703m.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703n.go b/test/fixedbugs/issue6703n.go
index 2c623f2..22646af 100644
--- a/test/fixedbugs/issue6703n.go
+++ b/test/fixedbugs/issue6703n.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703o.go b/test/fixedbugs/issue6703o.go
index efc8947..a11fdfd 100644
--- a/test/fixedbugs/issue6703o.go
+++ b/test/fixedbugs/issue6703o.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703p.go b/test/fixedbugs/issue6703p.go
index dad88f6..3ac7a63 100644
--- a/test/fixedbugs/issue6703p.go
+++ b/test/fixedbugs/issue6703p.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703q.go b/test/fixedbugs/issue6703q.go
index 7bd748a..b087c15 100644
--- a/test/fixedbugs/issue6703q.go
+++ b/test/fixedbugs/issue6703q.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703r.go b/test/fixedbugs/issue6703r.go
index 6698462..de514f1 100644
--- a/test/fixedbugs/issue6703r.go
+++ b/test/fixedbugs/issue6703r.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703s.go b/test/fixedbugs/issue6703s.go
index 6aa2848..cd3c5b3 100644
--- a/test/fixedbugs/issue6703s.go
+++ b/test/fixedbugs/issue6703s.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703t.go b/test/fixedbugs/issue6703t.go
index bad65ad..62de37c 100644
--- a/test/fixedbugs/issue6703t.go
+++ b/test/fixedbugs/issue6703t.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703u.go b/test/fixedbugs/issue6703u.go
index b6813b7..961a000 100644
--- a/test/fixedbugs/issue6703u.go
+++ b/test/fixedbugs/issue6703u.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703v.go b/test/fixedbugs/issue6703v.go
index a1b3711..2409911 100644
--- a/test/fixedbugs/issue6703v.go
+++ b/test/fixedbugs/issue6703v.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703w.go b/test/fixedbugs/issue6703w.go
index d4733de..b7b3d91 100644
--- a/test/fixedbugs/issue6703w.go
+++ b/test/fixedbugs/issue6703w.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703x.go b/test/fixedbugs/issue6703x.go
index 8008b8c..48daf03 100644
--- a/test/fixedbugs/issue6703x.go
+++ b/test/fixedbugs/issue6703x.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703y.go b/test/fixedbugs/issue6703y.go
index ac4526d..278dfcd 100644
--- a/test/fixedbugs/issue6703y.go
+++ b/test/fixedbugs/issue6703y.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6703z.go b/test/fixedbugs/issue6703z.go
index d4c17e1..f81a3a8 100644
--- a/test/fixedbugs/issue6703z.go
+++ b/test/fixedbugs/issue6703z.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6847.go b/test/fixedbugs/issue6847.go
index e6427e1..da300bc 100644
--- a/test/fixedbugs/issue6847.go
+++ b/test/fixedbugs/issue6847.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue6899.go b/test/fixedbugs/issue6899.go
index a693bf2..f98f551 100644
--- a/test/fixedbugs/issue6899.go
+++ b/test/fixedbugs/issue6899.go
@@ -1,6 +1,6 @@
// cmpout
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue6964.go b/test/fixedbugs/issue6964.go
index 8f4b60d..7ad8336 100644
--- a/test/fixedbugs/issue6964.go
+++ b/test/fixedbugs/issue6964.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue7044.go b/test/fixedbugs/issue7044.go
index cac6a76..00c78c8 100644
--- a/test/fixedbugs/issue7044.go
+++ b/test/fixedbugs/issue7044.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7050.go b/test/fixedbugs/issue7050.go
index e58b684..be7a118 100644
--- a/test/fixedbugs/issue7050.go
+++ b/test/fixedbugs/issue7050.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7150.go b/test/fixedbugs/issue7150.go
index 264958a..8a8a7d0 100644
--- a/test/fixedbugs/issue7150.go
+++ b/test/fixedbugs/issue7150.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
@@ -9,9 +9,9 @@
package main
func main() {
- _ = [0]int{-1: 50} // ERROR "array index must be non-negative integer constant"
- _ = [0]int{0: 0} // ERROR "array index 0 out of bounds \[0:0\]"
- _ = [0]int{5: 25} // ERROR "array index 5 out of bounds \[0:0\]"
- _ = [10]int{2: 10, 15: 30} // ERROR "array index 15 out of bounds \[0:10\]"
- _ = [10]int{5: 5, 1: 1, 12: 12} // ERROR "array index 12 out of bounds \[0:10\]"
+ _ = [0]int{-1: 50} // ERROR "index must be non-negative integer constant"
+ _ = [0]int{0: 0} // ERROR "index 0 out of bounds \[0:0\]"
+ _ = [0]int{5: 25} // ERROR "index 5 out of bounds \[0:0\]"
+ _ = [10]int{2: 10, 15: 30} // ERROR "index 15 out of bounds \[0:10\]"
+ _ = [10]int{5: 5, 1: 1, 12: 12} // ERROR "index 12 out of bounds \[0:10\]"
}
diff --git a/test/fixedbugs/issue7153.go b/test/fixedbugs/issue7153.go
index d70d858..f238f78 100644
--- a/test/fixedbugs/issue7153.go
+++ b/test/fixedbugs/issue7153.go
@@ -8,4 +8,4 @@
package p
-var _ = []int{a: true, true} // ERROR "undefined: a" "cannot use true \(type bool\) as type int in array element"
+var _ = []int{a: true, true} // ERROR "undefined: a" "cannot use true \(type bool\) as type int in array or slice literal"
diff --git a/test/fixedbugs/issue7223.go b/test/fixedbugs/issue7223.go
index c5955d5..0ec3476 100644
--- a/test/fixedbugs/issue7223.go
+++ b/test/fixedbugs/issue7223.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7272.go b/test/fixedbugs/issue7272.go
index 97a08da..b10a8bf 100644
--- a/test/fixedbugs/issue7272.go
+++ b/test/fixedbugs/issue7272.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2012 The Go Authors. All rights reserved.
+// 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.
diff --git a/test/fixedbugs/issue7310.go b/test/fixedbugs/issue7310.go
index 4a535a1..1169fcf 100644
--- a/test/fixedbugs/issue7310.go
+++ b/test/fixedbugs/issue7310.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7316.go b/test/fixedbugs/issue7316.go
index 4b32261..0734641 100644
--- a/test/fixedbugs/issue7316.go
+++ b/test/fixedbugs/issue7316.go
@@ -1,6 +1,6 @@
// runoutput
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7346.go b/test/fixedbugs/issue7346.go
index dd5ea22..21fab2d 100644
--- a/test/fixedbugs/issue7346.go
+++ b/test/fixedbugs/issue7346.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7366.go b/test/fixedbugs/issue7366.go
index 754da6f..a6b786f 100644
--- a/test/fixedbugs/issue7366.go
+++ b/test/fixedbugs/issue7366.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7590.go b/test/fixedbugs/issue7590.go
index e283832..607a3ae 100644
--- a/test/fixedbugs/issue7590.go
+++ b/test/fixedbugs/issue7590.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7690.go b/test/fixedbugs/issue7690.go
index 4ad9e86..fea2aa1 100644
--- a/test/fixedbugs/issue7690.go
+++ b/test/fixedbugs/issue7690.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7794.go b/test/fixedbugs/issue7794.go
index 1e303bd..f31de94 100644
--- a/test/fixedbugs/issue7794.go
+++ b/test/fixedbugs/issue7794.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7863.go b/test/fixedbugs/issue7863.go
index 97f2255..da2ed05 100644
--- a/test/fixedbugs/issue7863.go
+++ b/test/fixedbugs/issue7863.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7867.go b/test/fixedbugs/issue7867.go
index 9f28a71..166506e 100644
--- a/test/fixedbugs/issue7867.go
+++ b/test/fixedbugs/issue7867.go
@@ -1,6 +1,6 @@
// runoutput
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7884.go b/test/fixedbugs/issue7884.go
index 497e261..ab7a858 100644
--- a/test/fixedbugs/issue7884.go
+++ b/test/fixedbugs/issue7884.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7944.go b/test/fixedbugs/issue7944.go
index 9e5bed1..960065b 100644
--- a/test/fixedbugs/issue7944.go
+++ b/test/fixedbugs/issue7944.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7995.go b/test/fixedbugs/issue7995.go
index 05f1168..af77a6d 100644
--- a/test/fixedbugs/issue7995.go
+++ b/test/fixedbugs/issue7995.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7995b.dir/x1.go b/test/fixedbugs/issue7995b.dir/x1.go
index 075911b..bafecf5 100644
--- a/test/fixedbugs/issue7995b.dir/x1.go
+++ b/test/fixedbugs/issue7995b.dir/x1.go
@@ -4,12 +4,8 @@
var P int
-var b bool
-
+//go:noinline
func F(x *int) string {
- if b { // avoid inlining
- F(x)
- }
P = 50
*x = 100
return fmt.Sprintln(P, *x)
diff --git a/test/fixedbugs/issue7996.go b/test/fixedbugs/issue7996.go
index 98289eb..1ee6fc7 100644
--- a/test/fixedbugs/issue7996.go
+++ b/test/fixedbugs/issue7996.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7997.go b/test/fixedbugs/issue7997.go
index 10c5262..a342189 100644
--- a/test/fixedbugs/issue7997.go
+++ b/test/fixedbugs/issue7997.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue7998.go b/test/fixedbugs/issue7998.go
index 245035e..8da39e8 100644
--- a/test/fixedbugs/issue7998.go
+++ b/test/fixedbugs/issue7998.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8004.go b/test/fixedbugs/issue8004.go
index 37e2fe0..548ee1c 100644
--- a/test/fixedbugs/issue8004.go
+++ b/test/fixedbugs/issue8004.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8011.go b/test/fixedbugs/issue8011.go
index b966174..57af2a9 100644
--- a/test/fixedbugs/issue8011.go
+++ b/test/fixedbugs/issue8011.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8017.go b/test/fixedbugs/issue8017.go
index 22056e0..9afcdf0 100644
--- a/test/fixedbugs/issue8017.go
+++ b/test/fixedbugs/issue8017.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8028.go b/test/fixedbugs/issue8028.go
index 7ceb902..9f2649a 100644
--- a/test/fixedbugs/issue8028.go
+++ b/test/fixedbugs/issue8028.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8036.go b/test/fixedbugs/issue8036.go
index f32fde8..82ba7f7 100644
--- a/test/fixedbugs/issue8036.go
+++ b/test/fixedbugs/issue8036.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
@@ -18,19 +18,19 @@
type TI [3]uintptr
+//go:noinline
func G() (t TI) {
t[0] = 1
t[1] = 2
t[2] = 3
- runtime.GC() // prevent inlining
return
}
+//go:noinline
func F() (t T) {
t.X = newint()
t.Y = t.X
t.Z = t.Y
- runtime.GC() // prevent inlining
return
}
diff --git a/test/fixedbugs/issue8039.go b/test/fixedbugs/issue8039.go
index b13e474..ee00c60 100644
--- a/test/fixedbugs/issue8039.go
+++ b/test/fixedbugs/issue8039.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8047.go b/test/fixedbugs/issue8047.go
index fe7ada5..5ac4a0e 100644
--- a/test/fixedbugs/issue8047.go
+++ b/test/fixedbugs/issue8047.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8047b.go b/test/fixedbugs/issue8047b.go
index de6acaa..df902a5 100644
--- a/test/fixedbugs/issue8047b.go
+++ b/test/fixedbugs/issue8047b.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8048.go b/test/fixedbugs/issue8048.go
index a7984c4..577f606 100644
--- a/test/fixedbugs/issue8048.go
+++ b/test/fixedbugs/issue8048.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8073.go b/test/fixedbugs/issue8073.go
index 6601221..d47481c 100644
--- a/test/fixedbugs/issue8073.go
+++ b/test/fixedbugs/issue8073.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8074.go b/test/fixedbugs/issue8074.go
index aedab24..604a4f9 100644
--- a/test/fixedbugs/issue8074.go
+++ b/test/fixedbugs/issue8074.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8076.go b/test/fixedbugs/issue8076.go
index ad89067..543ccc1 100644
--- a/test/fixedbugs/issue8076.go
+++ b/test/fixedbugs/issue8076.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8132.go b/test/fixedbugs/issue8132.go
index 52f5d39..b28a84c 100644
--- a/test/fixedbugs/issue8132.go
+++ b/test/fixedbugs/issue8132.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8139.go b/test/fixedbugs/issue8139.go
index 821c9ff..6e5607d 100644
--- a/test/fixedbugs/issue8139.go
+++ b/test/fixedbugs/issue8139.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8154.go b/test/fixedbugs/issue8154.go
index 92c3cac..3ffad34 100644
--- a/test/fixedbugs/issue8154.go
+++ b/test/fixedbugs/issue8154.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue8155.go b/test/fixedbugs/issue8155.go
index c611f6c..56a6738 100644
--- a/test/fixedbugs/issue8155.go
+++ b/test/fixedbugs/issue8155.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8158.go b/test/fixedbugs/issue8158.go
index b110de1..150b338 100644
--- a/test/fixedbugs/issue8158.go
+++ b/test/fixedbugs/issue8158.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8183.go b/test/fixedbugs/issue8183.go
index 7104f1e..f23e660 100644
--- a/test/fixedbugs/issue8183.go
+++ b/test/fixedbugs/issue8183.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue8311.go b/test/fixedbugs/issue8311.go
index dd92856..375b480 100644
--- a/test/fixedbugs/issue8311.go
+++ b/test/fixedbugs/issue8311.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8325.go b/test/fixedbugs/issue8325.go
index e22fd31..6b0fc25 100644
--- a/test/fixedbugs/issue8325.go
+++ b/test/fixedbugs/issue8325.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8336.go b/test/fixedbugs/issue8336.go
index 26bdeab..419fdf1 100644
--- a/test/fixedbugs/issue8336.go
+++ b/test/fixedbugs/issue8336.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8347.go b/test/fixedbugs/issue8347.go
index 0828ccf..6394a95 100644
--- a/test/fixedbugs/issue8347.go
+++ b/test/fixedbugs/issue8347.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8475.go b/test/fixedbugs/issue8475.go
index e697945..5b22067 100644
--- a/test/fixedbugs/issue8475.go
+++ b/test/fixedbugs/issue8475.go
@@ -1,6 +1,6 @@
// build
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8507.go b/test/fixedbugs/issue8507.go
index 00a14aa..ad6ba8a 100644
--- a/test/fixedbugs/issue8507.go
+++ b/test/fixedbugs/issue8507.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8612.go b/test/fixedbugs/issue8612.go
index 93370cf..2a622f4 100644
--- a/test/fixedbugs/issue8612.go
+++ b/test/fixedbugs/issue8612.go
@@ -1,6 +1,6 @@
//compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8613.go b/test/fixedbugs/issue8613.go
new file mode 100644
index 0000000..c0ad131
--- /dev/null
+++ b/test/fixedbugs/issue8613.go
@@ -0,0 +1,39 @@
+// +build amd64
+// run
+
+// Copyright 2016 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
+
+var out int
+var zero int
+
+func main() {
+ wantPanic("test1", func() {
+ out = 1 / zero
+ })
+ wantPanic("test2", func() {
+ _ = 1 / zero
+ })
+ wantPanic("test3", func() {
+ v := 0
+ _ = 1 / v
+ })
+ wantPanic("test4", func() { divby(0) })
+}
+
+func wantPanic(test string, fn func()) {
+ defer func() {
+ if e := recover(); e == nil {
+ panic(test + ": expected panic")
+ }
+ }()
+ fn()
+}
+
+//go:noinline
+func divby(v int) {
+ _ = 1 / v
+}
diff --git a/test/fixedbugs/issue8620.go b/test/fixedbugs/issue8620.go
index 30d7a82..4754604 100644
--- a/test/fixedbugs/issue8620.go
+++ b/test/fixedbugs/issue8620.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8745.go b/test/fixedbugs/issue8745.go
index f3a70af..fee2ca7 100644
--- a/test/fixedbugs/issue8745.go
+++ b/test/fixedbugs/issue8745.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue8761.go b/test/fixedbugs/issue8761.go
index badf639..7f458f7 100644
--- a/test/fixedbugs/issue8761.go
+++ b/test/fixedbugs/issue8761.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8836.go b/test/fixedbugs/issue8836.go
index 92c18f6..039b9c7 100644
--- a/test/fixedbugs/issue8836.go
+++ b/test/fixedbugs/issue8836.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
diff --git a/test/fixedbugs/issue887.go b/test/fixedbugs/issue887.go
index 5bc193b..b68ba69 100644
--- a/test/fixedbugs/issue887.go
+++ b/test/fixedbugs/issue887.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2013 The Go Authors. All rights reserved.
+// Copyright 2013 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.
diff --git a/test/fixedbugs/issue8947.go b/test/fixedbugs/issue8947.go
index f40c02e..703207d 100644
--- a/test/fixedbugs/issue8947.go
+++ b/test/fixedbugs/issue8947.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue8961.go b/test/fixedbugs/issue8961.go
index fbfb7e6..22b0f04 100644
--- a/test/fixedbugs/issue8961.go
+++ b/test/fixedbugs/issue8961.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9006.go b/test/fixedbugs/issue9006.go
index c559f58..a61574b 100644
--- a/test/fixedbugs/issue9006.go
+++ b/test/fixedbugs/issue9006.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9017.go b/test/fixedbugs/issue9017.go
index e19bac2..5659785 100644
--- a/test/fixedbugs/issue9017.go
+++ b/test/fixedbugs/issue9017.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9036.go b/test/fixedbugs/issue9036.go
index 283159e..75ffb2d 100644
--- a/test/fixedbugs/issue9036.go
+++ b/test/fixedbugs/issue9036.go
@@ -1,10 +1,10 @@
// errorcheck
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.
-// Expects to see error messages on "p" exponents.
+// Expects to see error messages on 'p' exponents.
package main
@@ -14,11 +14,19 @@
x1 = 1.1 // float
x2 = 1e10 // float
x3 = 0x1e10 // integer (e is a hex digit)
- x4 = 0x1p10 // ERROR "malformed floating point constant"
- x5 = 1p10 // ERROR "malformed floating point constant"
- x6 = 0p0 // ERROR "malformed floating point constant"
)
+// 'p' exponents are invalid - the 'p' is not considered
+// part of a floating-point number, but introduces a new
+// (unexpected) name.
+//
+// Error recovery is not ideal and we use a new declaration
+// each time for the parser to recover.
+
+const x4 = 0x1p10 // ERROR "unexpected p10"
+const x5 = 1p10 // ERROR "unexpected p10"
+const x6 = 0p0 // ERROR "unexpected p0"
+
func main() {
fmt.Printf("%g %T\n", x1, x1)
fmt.Printf("%g %T\n", x2, x2)
diff --git a/test/fixedbugs/issue9076.go b/test/fixedbugs/issue9076.go
index ad1cd5d..8daf12f 100644
--- a/test/fixedbugs/issue9076.go
+++ b/test/fixedbugs/issue9076.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9083.go b/test/fixedbugs/issue9083.go
index c92c0a6..8fbd78b 100644
--- a/test/fixedbugs/issue9083.go
+++ b/test/fixedbugs/issue9083.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9110.go b/test/fixedbugs/issue9110.go
index b9e861f..086be77 100644
--- a/test/fixedbugs/issue9110.go
+++ b/test/fixedbugs/issue9110.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9321.go b/test/fixedbugs/issue9321.go
index e850d8f..2b2807a 100644
--- a/test/fixedbugs/issue9321.go
+++ b/test/fixedbugs/issue9321.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9355.go b/test/fixedbugs/issue9355.go
index 40c9ba9..10f8c73 100644
--- a/test/fixedbugs/issue9355.go
+++ b/test/fixedbugs/issue9355.go
@@ -1,6 +1,6 @@
// run
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9432.go b/test/fixedbugs/issue9432.go
index 0d0bc96..2049460 100644
--- a/test/fixedbugs/issue9432.go
+++ b/test/fixedbugs/issue9432.go
@@ -1,6 +1,6 @@
// errorcheck
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9731.go b/test/fixedbugs/issue9731.go
index 286cebd..9237d65 100644
--- a/test/fixedbugs/issue9731.go
+++ b/test/fixedbugs/issue9731.go
@@ -1,6 +1,6 @@
// compile
-// Copyright 2014 The Go Authors. All rights reserved.
+// Copyright 2014 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.
diff --git a/test/fixedbugs/issue9862.go b/test/fixedbugs/issue9862.go
index 692a60d..3572512 100644
--- a/test/fixedbugs/issue9862.go
+++ b/test/fixedbugs/issue9862.go
@@ -1,6 +1,6 @@
// skip
-// Copyright 2015 The Go Authors. All rights reserved.
+// Copyright 2015 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.