golang/go · error
relocation number %d symbol index idx=%d cannot be large the
Error message
relocation number %d symbol index idx=%d cannot be large then number of symbols %d
What it means
Error "relocation number %d symbol index idx=%d cannot be large then number of symbols %d" thrown in golang/go.
Source
Thrown at src/cmd/link/internal/loadpe/ldpe.go:352
}
if rsect.NumberOfRelocations == 0 {
continue
}
if rsect.Characteristics&pe.IMAGE_SCN_MEM_DISCARDABLE != 0 {
continue
}
if rsect.Characteristics&(pe.IMAGE_SCN_CNT_CODE|pe.IMAGE_SCN_CNT_INITIALIZED_DATA|pe.IMAGE_SCN_CNT_UNINITIALIZED_DATA) == 0 {
// This has been seen for .idata sections, which we
// want to ignore. See issues 5106 and 5273.
continue
}
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 {View on GitHub (pinned to b6b368adc5)
When it happens
Trigger: Thrown at src/cmd/link/internal/loadpe/ldpe.go:352 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/906854c86820087c.
Report an issue: GitHub.