go-delve/delve · error

condition expression not boolean

Error message

condition expression not boolean

What it means

Error "condition expression not boolean" thrown in go-delve/delve.

Source

Thrown at pkg/proc/breakpoints.go:521

	flags |= evalop.BreakpointCondition
	ops, err := evalop.CompileAST(scopeToEvalLookup{scope}, cond, flags)
	if err != nil {
		return true, err
	}
	stack := &evalStack{}
	stack.eval(scope, ops)
	v, err := stack.result(nil)
	if err != nil {
		if stack.disabledErrors {
			return false, nil
		}
		return true, fmt.Errorf("error evaluating expression: %v", err)
	}
	if v.Kind != reflect.Bool {
		if stack.disabledErrors {
			return false, nil
		}
		return true, errors.New("condition expression not boolean")
	}
	v.loadValue(LoadFullValue())
	if v.Unreadable != nil {
		if stack.disabledErrors {
			return false, nil
		}
		return true, fmt.Errorf("condition expression unreadable: %v", v.Unreadable)
	}
	return constant.BoolVal(v.Value), nil
}

// NoBreakpointError is returned when trying to
// clear a breakpoint that does not exist.
type NoBreakpointError struct {
	Addr uint64
}

func (nbp NoBreakpointError) Error() string {

View on GitHub (pinned to a23773e6c3)

When it happens

Trigger: Thrown at pkg/proc/breakpoints.go:521 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/e7a2a30588bb6a35. Report an issue: GitHub.