diff options
author | Robert Griesemer <gri@golang.org> | 2021-08-09 10:53:43 -0700 |
---|---|---|
committer | Robert Griesemer <gri@golang.org> | 2021-08-10 01:20:34 +0000 |
commit | e4cfa2f6dad8c73e98a4149948ded424df9c8501 (patch) | |
tree | 1247e3badd9ef3e109a0daf7eaf1cefb18c6c434 /src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 | |
parent | 508624f359f168cab32814f63d29a4305fb01588 (diff) | |
download | go-e4cfa2f6dad8c73e98a4149948ded424df9c8501.tar.gz go-e4cfa2f6dad8c73e98a4149948ded424df9c8501.zip |
[dev.typeparams] cmd/compile/internal/types2: parameterized functions must have a body
Add the respective check and add missing bodies to tests.
Use {} as body for functions that don't return a result.
Use { panic(0) } as body for functions that return a result.
For #47069.
Change-Id: Ia5d7525c9c036baf8a955d13bff448401e08235e
Reviewed-on: https://go-review.googlesource.com/c/go/+/340911
Trust: Robert Griesemer <gri@golang.org>
Run-TryBot: Robert Griesemer <gri@golang.org>
Reviewed-by: Robert Findley <rfindley@google.com>
Diffstat (limited to 'src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2')
-rw-r--r-- | src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 b/src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 index 387c946957..108d600a38 100644 --- a/src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 +++ b/src/cmd/compile/internal/types2/testdata/fixedbugs/issue47127.go2 @@ -30,8 +30,8 @@ func _[P any]() { ) } -func _[P any, Q interface{ *P | []P | chan P | map[string]P }]() -func _[P any, Q interface{ P /* ERROR "cannot embed a type parameter" */ }]() -func _[P any, Q interface{ ~P /* ERROR "cannot embed a type parameter" */ }]() -func _[P any, Q interface{ int | P /* ERROR "cannot embed a type parameter" */ }]() -func _[P any, Q interface{ int | ~P /* ERROR "cannot embed a type parameter" */ }]() +func _[P any, Q interface{ *P | []P | chan P | map[string]P }]() {} +func _[P any, Q interface{ P /* ERROR "cannot embed a type parameter" */ }]() {} +func _[P any, Q interface{ ~P /* ERROR "cannot embed a type parameter" */ }]() {} +func _[P any, Q interface{ int | P /* ERROR "cannot embed a type parameter" */ }]() {} +func _[P any, Q interface{ int | ~P /* ERROR "cannot embed a type parameter" */ }]() {} |