]> Cypherpunks repositories - gostls13.git/commitdiff
constant conversion of int (non-ideal) constant doesn't work
authorRobert Griesemer <gri@golang.org>
Tue, 10 Mar 2009 23:39:23 +0000 (16:39 -0700)
committerRobert Griesemer <gri@golang.org>
Tue, 10 Mar 2009 23:39:23 +0000 (16:39 -0700)
R=rsc
DELTA=20  (20 added, 0 deleted, 0 changed)
OCL=26054
CL=26062

test/bugs/bug138.go [new file with mode: 0644]
test/golden.out

diff --git a/test/bugs/bug138.go b/test/bugs/bug138.go
new file mode 100644 (file)
index 0000000..09c61e0
--- /dev/null
@@ -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
+*/
index bb1e2cb44b44ff72e0c82a0bc616ccf62254b7db..31616f4faa46bb3604606bb712278e54f691cb30 100644 (file)
@@ -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