summaryrefslogtreecommitdiffstats
path: root/src/cmd/compile/internal/syntax/testdata/issue43527.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/compile/internal/syntax/testdata/issue43527.go')
-rw-r--r--src/cmd/compile/internal/syntax/testdata/issue43527.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/cmd/compile/internal/syntax/testdata/issue43527.go b/src/cmd/compile/internal/syntax/testdata/issue43527.go
new file mode 100644
index 0000000..99a8c09
--- /dev/null
+++ b/src/cmd/compile/internal/syntax/testdata/issue43527.go
@@ -0,0 +1,23 @@
+// Copyright 2021 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 p
+
+type (
+ // 0 and 1-element []-lists are syntactically valid
+ _[A, B /* ERROR missing type constraint */ ] int
+ _[A, /* ERROR missing type parameter name */ interface{}] int
+ _[A, B, C /* ERROR missing type constraint */ ] int
+ _[A B, C /* ERROR missing type constraint */ ] int
+ _[A B, /* ERROR missing type parameter name */ interface{}] int
+ _[A B, /* ERROR missing type parameter name */ interface{}, C D] int
+ _[A B, /* ERROR missing type parameter name */ interface{}, C, D] int
+ _[A B, /* ERROR missing type parameter name */ interface{}, C, interface{}] int
+ _[A B, C interface{}, D, /* ERROR missing type parameter name */ interface{}] int
+)
+
+// function type parameters use the same parsing routine - just have a couple of tests
+
+func _[A, B /* ERROR missing type constraint */ ]() {}
+func _[A, /* ERROR missing type parameter name */ interface{}]() {}