Skip to content

cmd/link: executables built with go1.26 lack DIE for runtime.firstmoduledata #76731

@aarzilli

Description

@aarzilli
$ go version
go version go1.26-devel_0d0d5c9a82 Fri Dec 5 17:31:30 2025 -0800 linux/amd64

All operating systems and architectures affected, but mostly this is about Windows in particular.

Commit 9f5cd43, reviewed on https://go.dev/cl/720660 moved the module data to its own sections, as a side effect the DIE for runtime.firstmoduledata disappeared. This DIE is used by Delve (and also, I think, by viewcore) to resolve the type of interface variables.

Using the .go.module section is, of course, fine (even preferrable). However PE executables do not seem to have this section.

Should we fake the runtime.firstmoduledata DIE? Should we add the '.go.module' section to PE executables? Should Delve (and viewcore) use the symboltable on windows specifically?

Metadata

Metadata

Labels

BugReportIssues describing a possible bug in the Go implementation.FixPendingIssues that have a fix which has not yet been reviewed or submitted.compiler/runtimeIssues related to the Go compiler and/or runtime.release-blocker

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions