type (
// 0 and 1-element []-lists are syntactically valid
_[A, B /* ERROR missing type constraint */ ] int
- _[A, /* ERROR type parameters must be named */ interface{}] 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 type parameters must be named */ interface{}] int
- _[A B, /* ERROR type parameters must be named */ interface{}, C D] int
- _[A B, /* ERROR type parameters must be named */ interface{}, C, D] int
- _[A B, /* ERROR type parameters must be named */ interface{}, C, interface{}] int
- _[A B, C interface{}, D, /* ERROR type parameters must be named */ interface{}] 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 type parameters must be named */ interface{}]() {}
+func _[A, /* ERROR missing type parameter name */ interface{}]() {}
_[_ [1]t]t
_[_ ~[]t]t
_[_ ~[1]t]t
- t [ /* ERROR type parameters must be named */ t[0]]t
+ t [ /* ERROR missing type parameter name */ t[0]]t
)
// test cases for go.dev/issue/49174
type (
_[_ t, t /* ERROR missing type constraint */ ] t
_[_ ~t, t /* ERROR missing type constraint */ ] t
- _[_ t, /* ERROR type parameters must be named */ ~t] t
- _[_ ~t, /* ERROR type parameters must be named */ ~t] t
+ _[_ t, /* ERROR missing type parameter name */ ~t] t
+ _[_ ~t, /* ERROR missing type parameter name */ ~t] t
- _[_ t|t, /* ERROR type parameters must be named */ t|t] t
- _[_ ~t|t, /* ERROR type parameters must be named */ t|t] t
- _[_ t|t, /* ERROR type parameters must be named */ ~t|t] t
- _[_ ~t|t, /* ERROR type parameters must be named */ ~t|t] t
+ _[_ t|t, /* ERROR missing type parameter name */ t|t] t
+ _[_ ~t|t, /* ERROR missing type parameter name */ t|t] t
+ _[_ t|t, /* ERROR missing type parameter name */ ~t|t] t
+ _[_ ~t|t, /* ERROR missing type parameter name */ ~t|t] t
)