aboutsummaryrefslogtreecommitdiff
path: root/src/testing
diff options
context:
space:
mode:
authorKeith Randall <khr@golang.org>2022-05-26 11:33:09 -0700
committerKeith Randall <khr@golang.org>2022-05-26 21:06:31 +0000
commitdbf52204751b5231b28a977c9cda3189c9493b2e (patch)
treee50ad8b7ab39be141d99390b424ac5c6157dbd3c /src/testing
parentec9258029e40f7952051f5762b036b9d7f4f91f9 (diff)
downloadgo-dbf52204751b5231b28a977c9cda3189c9493b2e.tar.xz
cmd/compile: mark closures made for generic function expressions as wrappers
Fixes #52237 Change-Id: I7488020c8d157e069202017a293d18230e3aef0d Reviewed-on: https://go-review.googlesource.com/c/go/+/408876 Reviewed-by: Cherry Mui <cherryyz@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com>
Diffstat (limited to 'src/testing')
-rw-r--r--src/testing/helper_test.go22
-rw-r--r--src/testing/helperfuncs_test.go10
2 files changed, 22 insertions, 10 deletions
diff --git a/src/testing/helper_test.go b/src/testing/helper_test.go
index 6175410f18..357a0798a1 100644
--- a/src/testing/helper_test.go
+++ b/src/testing/helper_test.go
@@ -24,20 +24,22 @@ func TestTBHelper(t *T) {
want := `--- FAIL: Test (?s)
helperfuncs_test.go:12: 0
-helperfuncs_test.go:33: 1
+helperfuncs_test.go:40: 1
helperfuncs_test.go:21: 2
-helperfuncs_test.go:35: 3
-helperfuncs_test.go:42: 4
+helperfuncs_test.go:42: 3
+helperfuncs_test.go:49: 4
--- FAIL: Test/sub (?s)
-helperfuncs_test.go:45: 5
+helperfuncs_test.go:52: 5
helperfuncs_test.go:21: 6
-helperfuncs_test.go:44: 7
-helperfuncs_test.go:56: 8
+helperfuncs_test.go:51: 7
+helperfuncs_test.go:63: 8
--- FAIL: Test/sub2 (?s)
-helperfuncs_test.go:71: 11
-helperfuncs_test.go:75: recover 12
-helperfuncs_test.go:64: 9
-helperfuncs_test.go:60: 10
+helperfuncs_test.go:78: 11
+helperfuncs_test.go:82: recover 12
+helperfuncs_test.go:84: GenericFloat64
+helperfuncs_test.go:85: GenericInt
+helperfuncs_test.go:71: 9
+helperfuncs_test.go:67: 10
`
lines := strings.Split(buf.String(), "\n")
durationRE := regexp.MustCompile(`\(.*\)$`)
diff --git a/src/testing/helperfuncs_test.go b/src/testing/helperfuncs_test.go
index 272b33c0e5..b63bc91ac2 100644
--- a/src/testing/helperfuncs_test.go
+++ b/src/testing/helperfuncs_test.go
@@ -26,6 +26,13 @@ func helperCallingHelper(t *T, msg string) {
helper(t, msg)
}
+func genericHelper[G any](t *T, msg string) {
+ t.Helper()
+ t.Error(msg)
+}
+
+var genericIntHelper = genericHelper[int]
+
func testHelper(t *T) {
// Check combinations of directly and indirectly
// calling helper functions.
@@ -73,6 +80,9 @@ func testHelper(t *T) {
// Check that helper-ness propagates up through panic/recover.
// See https://golang.org/issue/31154.
recoverHelper(t, "12")
+
+ genericHelper[float64](t, "GenericFloat64")
+ genericIntHelper(t, "GenericInt")
}
func parallelTestHelper(t *T) {