go-delve/delve · error

ErrNoSource

ErrNoSource

Error message

no source available

What it means

Error "no source available" thrown in go-delve/delve.

Source

Thrown at pkg/dwarf/line/state_machine.go:171

	for {
		if err := sm.next(); err != nil {
			if lineInfo.Logf != nil {
				lineInfo.Logf("AllPCsForFileLine error: %v", err)
			}
			break
		}
		if sm.address != lastAddr && sm.isStmt && sm.valid && sm.file == f {
			if pcs, ok := m[sm.line]; ok {
				pcs = append(pcs, sm.address)
				m[sm.line] = pcs
				lastAddr = sm.address
			}
		}
	}
}

var ErrNoSource = errors.New("no source available")

// AllPCsBetween returns all PC addresses between begin and end (including both begin and end)
// that have the is_stmt flag set and do not belong to excludeFile:excludeLine.
func (lineInfo *DebugLineInfo) AllPCsBetween(begin, end uint64, excludeFile string, excludeLine int) ([]uint64, error) {
	if lineInfo == nil {
		return nil, ErrNoSource
	}

	var (
		pcs      []uint64
		lastaddr uint64
		sm       = newStateMachine(lineInfo, lineInfo.Instructions, lineInfo.ptrSize)
	)

	for {
		if err := sm.next(); err != nil {
			if lineInfo.Logf != nil {
				lineInfo.Logf("AllPCsBetween error: %v", err)

View on GitHub (pinned to a23773e6c3)

When it happens

Trigger: Thrown at pkg/dwarf/line/state_machine.go:171 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of go-delve/delve@a23773e6c3 (2026-08-31). Data as JSON: /api/errors/0fedd901321276c8. Report an issue: GitHub.