]> Cypherpunks repositories - gostls13.git/commitdiff
bug300: literal types must not be parenthesized
authorRobert Griesemer <gri@golang.org>
Fri, 30 Jul 2010 01:14:49 +0000 (18:14 -0700)
committerRobert Griesemer <gri@golang.org>
Fri, 30 Jul 2010 01:14:49 +0000 (18:14 -0700)
( This CL is dependent on acceptance of
https://golang.org/cl/1913041/show )

R=go-dev
CC=golang-dev
https://golang.org/cl/1860045

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

diff --git a/test/bugs/bug300.go b/test/bugs/bug300.go
new file mode 100644 (file)
index 0000000..dbed509
--- /dev/null
@@ -0,0 +1,29 @@
+// errchk $G $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
+
+type T struct {
+       x, y *T
+}
+
+func main() {
+       // legal composite literals
+       _ = struct{}{}
+       _ = [42]int{}
+       _ = [...]int{}
+       _ = []int{}
+       _ = map[int]int{}
+       _ = T{}
+
+       // illegal composite literals: parentheses not allowed around literal type
+       _ = (struct{}){}        // ERROR "xxx"
+       _ = ([42]int){}         // ERROR "xxx"
+       _ = ([...]int){}        // ERROR "xxx"
+       _ = ([]int){}           // ERROR "xxx"
+       _ = (map[int]int){}     // ERROR "xxx"
+       _ = (T){}               // ERROR "xxx"
+}
index 25dbc914bbd3df7a45ab5f7096f9253efc63cd4a..5999db6616e7d53503bb5f07305ae17fc9a46281 100644 (file)
@@ -186,3 +186,6 @@ errchk: bugs/bug299.go: unmatched error messages:
 ==================================================
 bugs/bug299.go:19: syntax error: unexpected }
 ==================================================
+
+=========== bugs/bug300.go
+BUG: errchk: command succeeded unexpectedly