[Lazarus] Wrong error message in "Liste der überwachten Ausdrücke"

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[Lazarus] Wrong error message in "Liste der überwachten Ausdrücke"

Free Pascal - Lazarus mailing list
"Liste der überwachten Ausdrücke" shows the wrong error message
"<Error: Type TSTRINGLIST has no component named COUNT.>"

OS: Win 10 (64), Lazarus 1.8.4, SVN Revision 57972.
Steps to reproduce:
Insert this in an unit and let your program call it.

procedure TForm1.TestProcedure;
var Liste: TStringList;
begin
  Liste:= TStringList.Create;
  Liste.Add('Eins');
  Liste.Free
end; 

Set a breakpoint at "Liste.Add('Eins')" and insert "Liste.count" into the "Liste der überwachten Ausdrücke" (Strg+Alt+W).
Run the program. It stops at the breakpoint and the Liste der überwachten Ausdrücke shows this wrong error message.

Regards --  Joe


--
_______________________________________________
Lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Wrong error message in "Liste der überwachten Ausdrücke"

Free Pascal - Lazarus mailing list
This can currently not be fixed. http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips#Properties

Currently neither dwarf-2, nor stabs allow the compiler to tell the debugger about properties.
So for the debugger properties do not exist, hence the error.

For the specific case, try (IIRC):
List.flist.fcount


On 01/08/2018 10:05, Joe via Lazarus wrote:
"Liste der überwachten Ausdrücke" shows the wrong error message
"<Error: Type TSTRINGLIST has no component named COUNT.>"

OS: Win 10 (64), Lazarus 1.8.4, SVN Revision 57972.
Steps to reproduce:
Insert this in an unit and let your program call it.

procedure TForm1.TestProcedure;
var Liste: TStringList;
begin
  Liste:= TStringList.Create;
  Liste.Add('Eins');
  Liste.Free
end; 

Set a breakpoint at "Liste.Add('Eins')" and insert "Liste.count" into the "Liste der überwachten Ausdrücke" (Strg+Alt+W).
Run the program. It stops at the breakpoint and the Liste der überwachten Ausdrücke shows this wrong error message.

Regards --  Joe





--
_______________________________________________
Lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Wrong error message in "Liste der überwachten Ausdrücke"

Free Pascal - Lazarus mailing list
Am 01.08.2018 um 11:03 schrieb Martin Frb via Lazarus:
This can currently not be fixed. http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips#Properties

Currently neither dwarf-2, nor stabs allow the compiler to tell the debugger about properties.
So for the debugger properties do not exist, hence the error.

For the specific case, try (IIRC):
List.flist.fcount


On 01/08/2018 10:05, Joe via Lazarus wrote:
"Liste der überwachten Ausdrücke" shows the wrong error message
"<Error: Type TSTRINGLIST has no component named COUNT.>"

OS: Win 10 (64), Lazarus 1.8.4, SVN Revision 57972.
Steps to reproduce:
Insert this in an unit and let your program call it.

procedure TForm1.TestProcedure;
var Liste: TStringList;
begin
  Liste:= TStringList.Create;
  Liste.Add('Eins');
  Liste.Free
end; 

Set a breakpoint at "Liste.Add('Eins')" and insert "Liste.count" into the "Liste der überwachten Ausdrücke" (Strg+Alt+W).
Run the program. It stops at the breakpoint and the Liste der überwachten Ausdrücke shows this wrong error message.

Regards --  Joe







Martin, thank you for this important info. For debugging purposes, we are now going to load an intermediate variable with the result of Liste.count.
Regards --  Joe

--
_______________________________________________
Lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus