At tip, sys.BuildModeSupported(runtime.Compiler, "c-shared", "windows", "arm64") reports false.
https://tip.golang.org/doc/go1.17#windows suggests the windows/arm64 port supports cgo, and discussion in CL 323970CL 323992 points out that cgo support may imply that c-shared build mode should also be turned on, and possibly was missed. This issue is filed to ask and find out.
@rsc, do you know if sys.BuildModeSupported working as intended for Go 1.17 or does it need to be updated?
The text was updated successfully, but these errors were encountered:
Supporting cgo doesn't necessarily mean c-shared build mode is supported, so the code in cmd/internal/sys isn't necessarily wrong. We have a few other platforms that support cgo but not c-shared build mode.
It might be that the c-shared mode "just works". We'd need to test it to be sure. But it may not work, and that is fine.
Thanks for answering Cherry. That suggests the current behavior of sys.BuildModeSupported is okay, and there can be a separate issue to track adding support for c-shared build mode for the windows/arm64 port.
I'm not sure how that CL is relevant to cgo or c-shared mode...
Sorry, I pasted the wrong CL number. Edited to say CL 323992 now.
I think we can close this since the original question is answered, and can reopen if more discussion is needed.