From: qmuntal Date: Fri, 4 Jul 2025 10:45:42 +0000 (+0200) Subject: cmd/compile/internal/ssa: skip EndSequence entries in TestStmtLines X-Git-Tag: go1.25rc3~5^2~49 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=33fb4819f5;p=gostls13.git cmd/compile/internal/ssa: skip EndSequence entries in TestStmtLines The TestStmtLines test has been accessing a nil pointer when it tries to look up LineEntry.File.Name on a line entry with EndSequence set to true. The doc for EndSequence specifies that if EndSequence is set, only it and the Address field are meaningful. Skip the entries with EndSequence set when building the set of files. I've reproduced this issue locally. Probably also fixes #49372, but will leave that for a follow-up CL. Fixes #74475 Updates #49372 Change-Id: Ic0664f7652b52a0a20239d13fe16454622740821 Reviewed-on: https://go-review.googlesource.com/c/go/+/685835 Reviewed-by: Than McIntosh Reviewed-by: Carlos Amedee Reviewed-by: Dmitri Shuralyov TryBot-Bypass: Dmitri Shuralyov Auto-Submit: Quim Muntal --- diff --git a/src/cmd/compile/internal/ssa/stmtlines_test.go b/src/cmd/compile/internal/ssa/stmtlines_test.go index e17a5402af..8cd11e9828 100644 --- a/src/cmd/compile/internal/ssa/stmtlines_test.go +++ b/src/cmd/compile/internal/ssa/stmtlines_test.go @@ -120,6 +120,11 @@ func TestStmtLines(t *testing.T) { break } must(err) + if le.EndSequence { + // When EndSequence is true only + // le.Address is meaningful, skip. + continue + } fl := Line{le.File.Name, le.Line} lines[fl] = lines[fl] || le.IsStmt }