It is a bug in the emacs M-x lldb command.
lldb (the tool) correctly sends an empty column field when it has no column number debug information.
If you look at the patch you'll see that the gud.el regexp (correctly) matches an empty digit sequence for the column number field, but that (incorrectly) is treated as column zero (which doesn't exist) rather than an absent column number field.On Mon, Sep 1, 2025 at 5:52 PM Eli Zaretskii <
eliz@gnu.org> wrote:
> From: Gustav Hållberg <gustav@gmail.com>
> Date: Mon, 1 Sep 2025 16:42:33 +0200
>
> In (lldb), there is a bug that positions the source code location on the last character of the previous line if
> lldb doesn't report a column number.
>
> Example, save the following as "t.s" and compile (on x86-64) with "gcc -g t.s -o t":
>
> .global _main
> _main:
> xor %eax,%eax
> ret
>
> and debug using (lldb "lldb ./t"):
>
> (lldb) b main
> :
> (lldb) run
> :
> (lldb) disas
> t`main:
> 0x555555555129 <+0>: xorl %eax, %eax
> -> 0x55555555512b <+2>: retq
>
> but the source code location ends up at the last character of the "xor %eax..." line.
>
> Attaching proposed pach against 66ef930ebea4618c1dac71a09495766476ced1d6.
Thanks, but if this is a bug in lldb, why shouldn't it be solved in
lldb, not in Emacs?