Test failure: TestCallbackCallersSEH gets incomplete trace on Windows CI with MinGW 12.2.0-rt_v10-rev2
Open
@qmuntal is already working on this.
Since Jan 11, 2024.
Test
- Dominant language
- Go
- Stars
- 431
- Forks
- 44
- Avg merge
- 21h 18m
- Merged PRs (30d)
- 30
Description
https://dev.azure.com/dnceng-public/public/_build/results?buildId=501610&view=results
--- FAIL: TestCallbackCallersSEH (0.00s)
callback_windows.go:86: got 4
2023/12/15 23:30:18 Failed: exit status 1
callback_windows.go:93: 0 _cgo_a35112bc76e5_Cfunc_backtrace
callback_windows.go:93: 1 runtime.asmcgocall_landingpad
callback_windows.go:93: 2 runtime.asmcgocall
callback_windows.go:93: 3 runtime.cgocall
callback_windows.go:109: incorrect backtrace:
want: [test._Cfunc_backtrace test.testCallbackCallersSEH.func1.1 test.testCallbackCallersSEH.func1 test.goCallback test._Cfunc_callback test.nestedCall.func1 test.nestedCall test.testCallbackCallersSEH test.TestCallbackCallersSEH]
got: []
FAIL
scatter = 00000000005C24C0
sqrt is: 0
hello from C
FAIL cmd/cgo/internal/test 0.930s
FAIL
(I added extra logging to figure out what was being filtered down to nothing.)
This is a run of https://github.com/microsoft/go/tree/0f3f286654f58ead223d9cb04c828cf4761d2456
Originally spotted in an upstream sync PR.
Using https://github.com/microsoft/go-infra/pull/95, this runs the test under the same MinGW:
getmingw run -source nixman -version 12.2.0-rt_v10-rev2 -arch x86_64 -threading posix -exception seh -runtime ucrt -- bin\go test cmd/cgo/internal/test -run CallersSEH -count 1 -v
- No repro locally (Windows 11 22H2)
- No repro on my Windows 2019 VM with
gotipor 0f3f286654f58ead223d9cb04c828cf4761d2456 - I don't have a Windows 2022 VM set up yet to try it there
- These VMs aren't an exact match of what we get in CI.
Updating CI from 12.2.0-rt_v10-rev2 to 13.2.0-rt_v11-rev0 makes this test pass.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.