[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 ?
Boguslaw
More information about the Lazarus
mailing list