golang/go · error
reloc of invalid sym %s idx=%d type=%d
Error message
reloc of invalid sym %s idx=%d type=%d
What it means
Error "reloc of invalid sym %s idx=%d type=%d" thrown in golang/go.
Source
Thrown at src/cmd/link/internal/loadpe/ldpe.go:364
splitResources := strings.HasPrefix(rsect.Name, ".rsrc$")
issehsect := issehsect(arch, rsect)
sb := l.MakeSymbolUpdater(state.sectsyms[rsect])
for j, r := range rsect.Relocs {
if int(r.SymbolTableIndex) >= len(f.COFFSymbols) {
return nil, fmt.Errorf("relocation number %d symbol index idx=%d cannot be large then number of symbols %d", j, r.SymbolTableIndex, len(f.COFFSymbols))
}
pesym := &f.COFFSymbols[r.SymbolTableIndex]
_, rSym, err := state.readpesym(pesym)
if err != nil {
return nil, err
}
if rSym == 0 {
name, err := pesym.FullName(f.StringTable)
if err != nil {
name = string(pesym.Name[:])
}
return nil, fmt.Errorf("reloc of invalid sym %s idx=%d type=%d", name, r.SymbolTableIndex, pesym.Type)
}
rSize := uint8(4)
rOff := int32(r.VirtualAddress)
var rType objabi.RelocType
switch arch.Family {
default:
return nil, fmt.Errorf("%s: unsupported arch %v", pn, arch.Family)
case sys.I386:
switch r.Type {
case IMAGE_REL_I386_REL32:
rType = objabi.R_PCREL
case IMAGE_REL_I386_DIR32:
rType = objabi.R_ADDR
case IMAGE_REL_I386_DIR32NB:
rType = objabi.R_PEIMAGEOFF
}
case sys.AMD64:View on GitHub (pinned to b6b368adc5)
When it happens
Trigger: Thrown at src/cmd/link/internal/loadpe/ldpe.go:364 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of golang/go@b6b368adc5 (2026-08-12).
Data as JSON: /api/errors/b44a24320f8514e7.
Report an issue: GitHub.