Forum > Debugger
Lazarus 3.9.9 Variable Watches Fail (But Debugger Tooltips Work!)
Martin_fr:
Also not sure if relevant, but:
- params listed in the stackwindow - ok or not?
- locals window?
Martin_fr:
--- Quote ---macOS Sonoma 14.1.2 (ARM)
--- End quote ---
This is gonna make it tricky. I don't have that myself for testing (I do lldb related tests under linux, but with X86). Worst case, I can access an M2 remotely. But I try to avoid that at all cost (Being used to non-Mac keyboard and mouse behaviour, and that means a Mac never does what I want it to do :( ).
It also means, that debugging on Mac is the least tested. It only gets the testing by users (and the Lazarus team members that use Mac). But on explicit testing (due to limits in lldb I can't even run my automated tests).
But non of that should cause such a difference.
"invalid" is a specific error. But it still could be caused in too many places. (Originally it was set when the debugger was not paused, but now it is also set if no data was returned (for unknown reasons, i.e. no other error was set). So it could have a few reasons.
----
(In case of "lldb with fpdebug) there are actually some differences between watch and hint. Mainly how the result is internally stored. It seems quite strange that any type of data should trigger a failure to store the result for watches....
Just to make sure: Can you compile you IDE with -O-
Menu: tools (preferences on MAC???) > configure build Lazarus
Then in custom options -O-
and select "make clean" radio box
then press build, and restart the IDE.
Actually, when you rebuild, please also add to the custom options
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ----O--Sa -dDBG_VERBOSE -dDBG_WARNINGS -dDBG_ERRORS -dDBG_STATE -dDBG_EVENTS -dDBGMI_QUEUE_DEBUG -dDBG_FPDEBUG_VERBOSE -dFPDBG_COMMANDS -dFPDBG_THREADS -dFPDBG_QUEUE-dDBG_DATA_MONITORS-dFPDBG_DWARF_ERRORS-dDBG_THREAD_AND_FRAME
And then, if it still happens run Lazarus with
--debug-log=somefile.txt
and submit that file.
msintle:
--- Quote from: Martin_fr on December 06, 2023, 03:19:49 pm ---
--- Quote ---LLDB (the only debugger that works on recent macOS releases),
--- End quote ---
"LLDB (alpha)" or "LLDB (with fpdebug)"?
--- End quote ---
I always use beta, but in this case one alpha setting had slipped through. Makes no difference, however.
msintle:
--- Quote from: Martin_fr on December 06, 2023, 03:27:17 pm ---Also not sure if relevant, but:
- params listed in the stackwindow - ok or not?
- locals window?
--- End quote ---
Local window - very interesting!
The first time opening it, everything shows beautifully.
Step through one line of code, and the entire window loses its entire contents (just the column headers, with a gray empty region below).
Stack window - seems fine and unaffected.
msintle:
--- Quote from: Martin_fr on December 06, 2023, 03:55:01 pm ---
--- Quote ---macOS Sonoma 14.1.2 (ARM)
--- End quote ---
This is gonna make it tricky. I don't have that myself for testing (I do lldb related tests under linux, but with X86). Worst case, I can access an M2 remotely. But I try to avoid that at all cost (Being used to non-Mac keyboard and mouse behaviour, and that means a Mac never does what I want it to do :( ).
It also means, that debugging on Mac is the least tested. It only gets the testing by users (and the Lazarus team members that use Mac). But on explicit testing (due to limits in lldb I can't even run my automated tests).
But non of that should cause such a difference.
"invalid" is a specific error. But it still could be caused in too many places. (Originally it was set when the debugger was not paused, but now it is also set if no data was returned (for unknown reasons, i.e. no other error was set). So it could have a few reasons.
--- End quote ---
Please check your PM.
Navigation
[0] Message Index
[#] Next page
[*] Previous page