[Lazarus] Accessing a scanner

Lukas Gradl fpc at ssn.at
Mon Nov 3 18:08:02 CET 2008

Marc Weustink pisze:
> Horacio Jamilis wrote:
>> Vincent Snijders escribió:
>>> Graeme Geldenhuys schreef:
>>>> On Fri, Oct 31, 2008 at 10:19 AM, Martin Schreiber <fpmse at bluewin.ch> wrote:
>>>>> Correct. MSEide can not access property values. Fortunately prepending the
>>>>> property name with 'F' usual works because of the naming convention.
>>>> That was a handy trick. I managed to debug my program in Lazarus IDE
>>>> yesterday, using that method. Thanks.
>>>>> Calling a property getter function is dangerous because the function often
>>>>> does more than simply return the value.
>>>> I do not think that matters much. Properties are a fundamental
>>>> language feature in Object Pascal and are used often, so the debugger
>>>> must support it. Plus the code you are debugging doesn't care what's
>>>> happing in the Getter method, it is only concerned with the result
>>>> returned. So if the result return is not what you expected in that
>>>> code location, then debug the Getter method or step into the Getter
>>>> method. This worked for Delphi and Kylix from the start.
>>> Well, it can become tricky. Suppose you try to debug something in the 
>>> form creating and initial showing. If you inspect the MyForm.Handle, the 
>>> handle gets created. Now, the handle is created at another point in the 
>>> initialization sequence than at normal run time.
>> This is a risk, the debugger user shoud be aware of, but viewing and 
>> setting property values must work in the debugger, as it does in Delphi.
> If you can give me a nice way to undo the case vincent described, I'll 
> happily implement that.
> Note that Delphi doesn't handle this either. So evaluating properties 
> can modify the state of the debugee.
>> I am with Graeme in this!
>> I also believe that the Object Pascal Internal Debugger is an important 
>> thing missing in this project, but I think I don´t have the skills to 
>> contribute on this :-(
> Thats one thing, but what is more important is a fully generated debug 
> info. Without this info, a debugger can do nothing.
> At this moment properties cannot be evaluated using the stabs info. 
> period. When using dwarf it can be possible, however we might need a 
> extention to the dwarf spec to get complete support.
> (FYI, stabs and dwarf are the formats fpc uses to write debug info)
> Marc

Isn't dwarf already implemented in fpc SVN version ?


More information about the Lazarus mailing list