summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/bugs/bug138.go19
-rw-r--r--test/golden.out5
2 files changed, 24 insertions, 0 deletions
diff --git a/test/bugs/bug138.go b/test/bugs/bug138.go
new file mode 100644
index 000000000..09c61e05c
--- /dev/null
+++ b/test/bugs/bug138.go
@@ -0,0 +1,19 @@
+// 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.
+
+// $G $D/$F.go || echo BUG should compile
+
+package main
+
+func main() {
+ const c int = -1;
+ var i int = -1;
+ var xc uint = uint(c); // this does not work
+ var xi uint = uint(i); // this works
+}
+
+/*
+bug138.go:8: overflow converting constant to uint
+bug138.go:8: illegal combination of literals CONV 7
+*/
diff --git a/test/golden.out b/test/golden.out
index bb1e2cb44..31616f4fa 100644
--- a/test/golden.out
+++ b/test/golden.out
@@ -154,6 +154,11 @@ bugs/bug137.go:9: break label is not defined: L2
bugs/bug137.go:15: break label is not defined: L4
BUG should compile
+=========== bugs/bug138.go
+bugs/bug138.go:8: overflow converting constant to uint
+bugs/bug138.go:8: illegal combination of literals CONV 7
+BUG should compile
+
=========== fixedbugs/bug016.go
fixedbugs/bug016.go:7: overflow converting constant to uint