mirror of
https://github.com/golang/go
synced 2024-11-18 01:34:44 -07:00
aac1eabcee
The gccgo compiler used to fail this test. This was the root cause of http://gcc.gnu.org/PR61308 . The fix for the gccgo compiler is https://golang.org/cl/122020043 . LGTM=dave, bradfitz R=golang-codereviews, dave, bradfitz CC=golang-codereviews https://golang.org/cl/121200043
23 lines
492 B
Go
23 lines
492 B
Go
// compile
|
|
|
|
// 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.
|
|
|
|
// The gccgo compiler had a bug: mentioning a function type in an
|
|
// expression in a function literal messed up the list of variables
|
|
// referenced in enclosing functions.
|
|
|
|
package main
|
|
|
|
func main() {
|
|
v1, v2 := 0, 0
|
|
f := func() {
|
|
a := v1
|
|
g := (func())(nil)
|
|
b := v2
|
|
_, _, _ = a, g, b
|
|
}
|
|
_, _, _ = v1, v2, f
|
|
}
|