aboutsummaryrefslogtreecommitdiff
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
commitd97bbabbaaeb28e374267c19aae5072d356c1353 (patch)
tree18b32f8ceb44814a71e9fdf4c5fc66ee4772cf28 /test/cmplx.go
parent3ffbd57b94ab98ca076d67659ab32863ec032a94 (diff)
downloadgo-d97bbabbaaeb28e374267c19aae5072d356c1353.tar.gz
go-d97bbabbaaeb28e374267c19aae5072d356c1353.zip
gc: cmplx typecheck bug fix
Fixes #729. R=ken2 CC=golang-dev https://golang.org/cl/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 0000000000..6262c682d0
--- /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"
+}