summaryrefslogtreecommitdiff
path: root/test/fixedbugs/bug444.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2012-06-07 11:59:18 -0400
committerRuss Cox <rsc@golang.org>2012-06-07 11:59:18 -0400
commitfa5cd667d9993596ccd9a66a680e60983fc787ab (patch)
tree08de49bd0a55f6d1d0b7a785926efc90c69cca9a /test/fixedbugs/bug444.go
parent7ef3a9b3f5d9c8486518062a5ed3b611921fbd21 (diff)
downloadgo-fa5cd667d9993596ccd9a66a680e60983fc787ab.tar.gz
cmd/gc: fix LEAQ $0, SI bug
Cannot take effective address of constant. Fixes issue 3670. R=ken2 CC=golang-dev http://codereview.appspot.com/6299055
Diffstat (limited to 'test/fixedbugs/bug444.go')
-rw-r--r--test/fixedbugs/bug444.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/fixedbugs/bug444.go b/test/fixedbugs/bug444.go
new file mode 100644
index 000000000..0bbd16fae
--- /dev/null
+++ b/test/fixedbugs/bug444.go
@@ -0,0 +1,19 @@
+// run
+
+// 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.
+
+// The no-op conversion here used to confuse the compiler
+// into doing a load-effective-address of nil.
+
+package main
+
+import "reflect"
+
+type T interface {}
+
+func main() {
+ reflect.TypeOf(nil)
+ reflect.TypeOf(T(nil)) // used to fail
+}