diff --git a/format_test.go b/format_test.go
index 98288c6..781892b 100644
--- a/format_test.go
+++ b/format_test.go
@@ -333,21 +333,21 @@
 		}, {
 			func(err error) error { return WithStack(err) },
 			[]string{
-				"github.com/pkg/errors.TestFormatGeneric.func2\n\t" +
+				"github.com/pkg/errors.(func·002|TestFormatGeneric.func2)\n\t" +
 					".+/github.com/pkg/errors/format_test.go:329",
 			},
 		}, {
 			func(err error) error { return Wrap(err, "wrap-error") },
 			[]string{
 				"wrap-error",
-				"github.com/pkg/errors.TestFormatGeneric.func3\n\t" +
+				"github.com/pkg/errors.(func·003|TestFormatGeneric.func3)\n\t" +
 					".+/github.com/pkg/errors/format_test.go:335",
 			},
 		}, {
 			func(err error) error { return Wrapf(err, "wrapf-error%d", 1) },
 			[]string{
 				"wrapf-error1",
-				"github.com/pkg/errors.TestFormatGeneric.func4\n\t" +
+				"github.com/pkg/errors.(func·004|TestFormatGeneric.func4)\n\t" +
 					".+/github.com/pkg/errors/format_test.go:342",
 			},
 		},
diff --git a/stack_test.go b/stack_test.go
index 2624e45..510c27a 100644
--- a/stack_test.go
+++ b/stack_test.go
@@ -155,12 +155,12 @@
 		"github.com/pkg/errors/stack_test.go",
 	}}
 
-	for _, tt := range tests {
+	for i, tt := range tests {
 		pc := tt.Frame.pc()
 		fn := runtime.FuncForPC(pc)
 		file, _ := fn.FileLine(pc)
 		got := trimGOPATH(fn.Name(), file)
-		testFormatRegexp(t, got, "%s", tt.want)
+		testFormatRegexp(t, i, got, "%s", tt.want)
 	}
 }
 
@@ -185,7 +185,7 @@
 		},
 	}, {
 		func() error { return New("ooh") }(), []string{
-			`github.com/pkg/errors.(func·005|TestStackTrace.func1)` +
+			`github.com/pkg/errors.(func·009|TestStackTrace.func1)` +
 				"\n\t.+/github.com/pkg/errors/stack_test.go:187", // this is the stack of New
 			"github.com/pkg/errors.TestStackTrace\n" +
 				"\t.+/github.com/pkg/errors/stack_test.go:187", // this is the stack of New's caller
@@ -196,9 +196,9 @@
 				return Errorf("hello %s", fmt.Sprintf("world"))
 			}()
 		}()), []string{
-			`github.com/pkg/errors.(func·006|TestStackTrace.func2.1)` +
+			`github.com/pkg/errors.(func·010|TestStackTrace.func2.1)` +
 				"\n\t.+/github.com/pkg/errors/stack_test.go:196", // this is the stack of Errorf
-			`github.com/pkg/errors.(func·007|TestStackTrace.func2)` +
+			`github.com/pkg/errors.(func·011|TestStackTrace.func2)` +
 				"\n\t.+/github.com/pkg/errors/stack_test.go:197", // this is the stack of Errorf's caller
 			"github.com/pkg/errors.TestStackTrace\n" +
 				"\t.+/github.com/pkg/errors/stack_test.go:198", // this is the stack of Errorf's caller's caller
