[Lazarus] Need testers for the a new debugger

Martin Frb lazarus at mfriebe.de
Sat Nov 22 00:08:00 CET 2014


On 21/11/2014 22:46, Mattias Gaertner wrote:
> But I see it for example with any constructor. Even as simple as this:
>
> type
>    TMyClass = class
>    public
>      i: Integer;
>      constructor Create;
>    end;
>
> constructor TMyClass.Create;
> begin
>    i:=3;
> end;
>
> procedure TForm1.FormCreate(Sender: TObject);
> var
>    c: TMyClass;
> begin
>    c:=TMyClass.Create; // <- breakpoint
> end'
>
> Run,
> Step into, cursor moves to 'begin' of the constructor.
> Step into, cursor moves to 'end' of the constructor.
> Step into, cursor moves to 'i:=3'.
>

With this code, I get the same.

It would take a longer time to analyse the line info in the asm as fpc 
generates it (as that is already cryptic enough), but I would think this 
is as fpc generates it.

In the asm output ( -al )

.section .debug_line
# === header start ===
...
# [41:1]
     .byte    2
     .uleb128    .Ll3-.Ll2
     .byte    14


.Ll2 is a label at the start of the constructor.


Also in the asm the comment introducing line 41
# [41] end;

comes before
# [40] i:=3;

So as far as the debugger goes, this would then be correctly following 
the debug info.












More information about the Lazarus mailing list