go-delve/delve · error
bad expression result: %q: %s
Error message
bad expression result: %q: %s
What it means
Error "bad expression result: %q: %s" thrown in go-delve/delve.
Source
Thrown at pkg/terminal/command.go:2121
var address uint64
if args.IsExpr {
val, err := t.client.EvalVariable(ctx.Scope, args.Operand, t.loadConfig())
if err != nil {
return err
}
switch val.Kind {
case reflect.Ptr: // "-x &myVar" or "-x myPtrVar"
if len(val.Children) < 1 {
return fmt.Errorf("bug? invalid pointer: %#v", val)
}
address = val.Children[0].Addr
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: // "-x 0xc000079f20 + 8" or -x 824634220320 + 8
address, err = strconv.ParseUint(api.ExtractIntValue(val.Value), 0, 64)
if err != nil {
return fmt.Errorf("bad expression result: %q: %s", val.Value, err)
}
default:
return fmt.Errorf("unsupported expression type: %s", val.Kind)
}
} else {
address, err = strconv.ParseUint(args.Operand, 0, 64)
if err != nil {
return fmt.Errorf("convert address into uintptr type failed, %s", err)
}
}
t.stdout.pw.PageMaybe(nil)
start := address
remsz := int(args.Count * args.Size)
for remsz > 0 {
reqsz := min(rpc2.ExamineMemoryLengthLimit, remsz)View on GitHub (pinned to a23773e6c3)
When it happens
Trigger: Thrown at pkg/terminal/command.go:2121 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/ba7b7ba348d37641.
Report an issue: GitHub.