internal/crashmonitor: clarify pre-go1.23 behavior
The current comment implies that traceback includes PCs for inlined
frames in 1.23, which is not the case.
For golang/go#70637.
Change-Id: I26fe4328843733d230e31ccdb452d4a25ae91b3c
Reviewed-on: https://go-review.googlesource.com/c/telemetry/+/637756
Reviewed-by: Alan Donovan <adonovan@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Robert Findley <rfindley@google.com>
diff --git a/internal/crashmonitor/monitor_test.go b/internal/crashmonitor/monitor_test.go
index b6302fb..74a7572 100644
--- a/internal/crashmonitor/monitor_test.go
+++ b/internal/crashmonitor/monitor_test.go
@@ -89,7 +89,13 @@
"runtime.goexit:--"
if !crashmonitor.Supported() { // !go1.23
- // Before go1.23, the traceback excluded PCs for inlined frames.
+ // Traceback excludes PCs for inlined frames. Before go1.23
+ // (https://go.dev/cl/571798 specifically), passing the set of
+ // PCs in the traceback to runtime.CallersFrames, would report
+ // only the innermost inlined frame and none of the inline
+ // "callers".
+ //
+ // Thus, here we must drop the caller of the inlined frame.
want = strings.ReplaceAll(want, "golang.org/x/telemetry/internal/crashmonitor_test.child:+2\n", "")
}