summaryrefslogtreecommitdiff
path: root/test/cmplx.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-04-19 09:21:51 -0700
committerRuss Cox <rsc@golang.org>2010-04-19 09:21:51 -0700
commit4b2f8e1960bd57afcb687d849cac9701338bc9a0 (patch)
treece7116dcadaa80a1f46b305f8a1279a2fc6b6bf5 /test/cmplx.go
parent18d46ce29fc87efeb62a4de8748fb6de842eab1f (diff)
downloadgo-4b2f8e1960bd57afcb687d849cac9701338bc9a0.tar.gz
gc: cmplx typecheck bug fix
Fixes issue 729. R=ken2 CC=golang-dev http://codereview.appspot.com/875048
Diffstat (limited to 'test/cmplx.go')
-rw-r--r--test/cmplx.go31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/cmplx.go b/test/cmplx.go
new file mode 100644
index 000000000..6262c682d
--- /dev/null
+++ b/test/cmplx.go
@@ -0,0 +1,31 @@
+// errchk $G -e $D/$F.go
+
+// 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.
+
+package main
+
+var (
+ f float
+ f32 float32
+ f64 float64
+
+ c complex
+ c64 complex64
+ c128 complex128
+)
+
+func main() {
+ // ok
+ c = cmplx(f, f)
+ c64 = cmplx(f32, f32)
+ c128 = cmplx(f64, f64)
+
+ _ = cmplx(f, f32) // ERROR "cmplx"
+ _ = cmplx(f, f64) // ERROR "cmplx"
+ _ = cmplx(f32, f) // ERROR "cmplx"
+ _ = cmplx(f32, f64) // ERROR "cmplx"
+ _ = cmplx(f64, f) // ERROR "cmplx"
+ _ = cmplx(f64, f32) // ERROR "cmplx"
+}