Forum > Debugger

Lazarus 3.9.9 Variable Watches Fail (But Debugger Tooltips Work!)

<< < (2/9) > >>

Martin_fr:

--- Quote from: Martin_fr on December 05, 2023, 08:38:16 pm ---It is possible that Fpc 3.3.1 made changes.
Though I just recently run the debugger testcase, and it runs almost 20000 different watches => and it worked for 3.3.1

I did just to a quick test with 3.3.1 (updated today) and the watch window works fine (form1 and various field of the form)

--- End quote ---

Just to say, that refers to the target app (the app being run under the debugger) having been build with fpc 331.

The IDE used to debug (or the testcase) have been build with 223

msintle:
I regret the delay in getting back to you!


--- Quote from: Martin_fr on December 05, 2023, 08:38:16 pm ---With settings I meant: debug setting in the project, and in Tools > Options

In Tools > Options: what is your debugger backend?

--- End quote ---

Oh of course, I should have known. LLDB (the only debugger that works on recent macOS releases), dwarf 2 (-gw2), optimization level 1 (and remember, the issue can't be related to the optimizations, since the tooltips work - just the watch window doesn't).


--- Quote from: Martin_fr on December 05, 2023, 08:38:16 pm ---Project > Options
- "type of debug info" ? dwarf ....
- optimization?
- smart linking?

What OS? 64/32 bit ?

--- End quote ---

macOS Sonoma 14.1.2 (ARM), unit style is not smart linkable (was that the question?)


--- Quote from: Martin_fr on December 05, 2023, 08:38:16 pm ---
It is strange though...
For a variable like "TFoo: TMyClass" you can have different settings between tooltip and watches.

But for "i: Integer" there should not be a difference at all (ok, you can go into watches properties, and set it to be hexadecimal, but I hope you would have noticed if you did / and even if, that should still not make a difference).

I am mostly using Lazarus 3.99 with Fpc 2.2.3
And there it works fine. (And I debug a lot)

It is possible that Fpc 3.3.1 made changes.
Though I just recently run the debugger testcase, and it runs almost 20000 different watches => and it worked for 3.3.1

I did just to a quick test with 3.3.1 (updated today) and the watch window works fine (form1 and various field of the form)

--- End quote ---

That's truly odd indeed. I have trouble with just simple string and integer variables. It's very odd that it works in tooltips and not the window.

msintle:

--- Quote from: Martin_fr on December 05, 2023, 08:40:18 pm ---
--- Quote from: msintle on December 03, 2023, 07:04:20 pm ---The variable watches window, I've noticed, hasn't really been working for a while.

--- End quote ---

What exactly is "hasn't been working"?

I just realized, I may be wrong in assuming that it shows the watches with some "error" in the value column?

But if it does, then what is the error message?

--- End quote ---

Thank you for the opportunity to clarify.

The value field just says <invalid>.

This is just an ordinary string variable, in scope, recently assigned, working in the editor tooltip.

msintle:

--- Quote from: Martin_fr on December 05, 2023, 08:48:26 pm ---
--- Quote from: Martin_fr on December 05, 2023, 08:38:16 pm ---It is possible that Fpc 3.3.1 made changes.
Though I just recently run the debugger testcase, and it runs almost 20000 different watches => and it worked for 3.3.1

I did just to a quick test with 3.3.1 (updated today) and the watch window works fine (form1 and various field of the form)

--- End quote ---

Just to say, that refers to the target app (the app being run under the debugger) having been build with fpc 331.

The IDE used to debug (or the testcase) have been build with 223

--- End quote ---

In my case the whole stack has been built with FPCUPDELUXE so I'm not sure what the version of the IDE is beyond 3.99 trunk and FPC 331.

However I haven't recently updated my FPCUPDELUXE installation - was installing a new Mac yesterday, and in fact the resulting Lazarus IDE cannot even rename form components, without breaking. So my trunk is clearly a trunk older than the current trunk, as that works at least.

Martin_fr:

--- Quote ---LLDB (the only debugger that works on recent macOS releases),
--- End quote ---

"LLDB (alpha)" or "LLDB (with fpdebug)"?

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version