Forum > General

Some (minor) remarks on the Lazarus release candidate

(1/2) > >>

As a habit I have tried the latest Lazarus release candidate with my existing codebase. I have noticed the following minor discrepancies with current release, but perhaps worthy of reporting:

- I usually compile with the -Xg option. Now I'm forced to disable it as I get the following message by IDE: "FpDebug internal Dwarf -debugger" supports only symbols within executable.

- I use a TSynEdit component with the eoHideRightMargin option. Now I'm forced to include the SynEditTypes unit in the uses clause as otherwise the TSynEditorOptions type is not found.

- Now in some cases, when I launch the application from the IDE, it shows me a popup with an exit code.

- The startup of the IDE seems to me a little slower than before. It is a personal impression, I cannot provide an objective measure.

Xg / FpDebug:
This is fixed in trunk 686e81d6e3028cbcd3188f433e26ab95fefca187 , 1c87dc96eb1c86128d80b54fe8bfd8a118167ea9
But it was not merged, as it needs testing.

Not sure, if this are the 2 only commits... If so,you can try applying the patches to your copy of fixes.

You can go back to gdb, it is still included.

The reason that feature was added rather late, is that it was thought a debug build would also be done with -O-, heaptrc, asserts, and -Criot etc. So debug info could be part of the build.
After all, if releases are then build with -O2 (or up), and no/less buildin checks then debug info can be omitted at that stage....

Please report. Forward declarations should probably be added.

exit code:

* If you mean, your app runs, but if you close your app...:
If that is in the debugger, then it can be turned off in the global options (the dialog itself, afaik also has a checkbox to turn it off).
The exit code is shown, if it is not zero => your app exited, indicating an error.

* If you mean, your app never runs (or at least not to any of your own code) ...:
More details, what error code?
Maybe a dll is not found? Could be an issue with the search PATH. If so, it would be good to know all the pathes involved.
Also, only fpdebug, or also if you switch back to gdb (which is still included)

no idea... But possible. The IDE also keeps growing.
Though occasionally we also look at (re) improving speed.

Thanks Martin, your information is really valuable.  About the IDE exit message, it occurs in a GUI application that keeps a console left open for debugging needs.  To display what is in it, the last line of the main program it has a readln statement.  If I close the console before hit return key, the IDE message appears.  This did not happen before.

Yes, the "exit code" message is a new feature.
It is useful, because apps should not return an error, and if they do, the debugger should tell.

Closing the window, kills stdin, and readln will fail. (or something like that...)

Again, if you don't like it, there is a setting (tools > options > debugger > general)


--- Quote from: Martin_fr on November 06, 2021, 12:02:32 pm ---SynEdit:
Please report. Forward declarations should probably be added.

--- End quote ---

Ok, I checked.

To forward the symbols something like this is needed in SynEdit

--- 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";}};} ---  TSynEditorOption  = SynEditTypes.TSynEditorOption;  TSynEditorOptions  = SynEditTypes.TSynEditorOptions;  TSynEditorOption2 = SynEditTypes.TSynEditorOption2;const  eoHideRightMargin= SynEditTypes.eoHideRightMargin;.....type 
Options used to be at line 219 after "TSynStateFlags = set of TSynStateFlag;"

Merge-Request would be nice....


[0] Message Index

[#] Next page

Go to full version