View previous topic :: View next topic |
Author |
Message |
Robert
Joined: 29 Nov 2006 Posts: 445 Location: Manchester
|
Posted: Sat Apr 04, 2020 4:20 pm Post subject: Latest Debuggers |
|
|
The latest versions of sdbg and sdbg64 cam be downloaded from this url:
http://www.ftn95.co.uk/ftn95/debuggers.zip
Changes include:
- sdbg: now shows line numbers and statement locations in margin. Breakpoints can be set by clicking on statement dots
- sdbg/sdbg64: pause dialog replaced with pause button
- sdbg/sdbg64 breakpoints can be set whilst debuggee running
- sdbg/sdbg64 find now prioritises routines with debug information
- sdbg64 set next statement in same routine
- sdbg64 support for new run-time error messages in FTN95 8.62
Last edited by Robert on Sat May 02, 2020 11:55 pm; edited 1 time in total |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Mon Apr 06, 2020 8:24 pm Post subject: |
|
|
Is this an addon to the latest built or any older build? Is next built of compiler including these new features ready for download?
Was the bug fixed causing SDBG64 not to show all valid lines in debugger ? Because 8.61 did not have this bug fixed yet i skipped it and still use 8.50. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Mon Apr 06, 2020 9:04 pm Post subject: |
|
|
Also
1) a while ago in Suggestions here we have discussed some new feature to show in debugger matching Do-EndDo and If-EndIFf . Was work on this started? I remember it was done already in Plato
2) another suggestion was to show previous line in debugger (just to show it would be enough, the return to previous line when the calculation was already done will probably not always be possible). This is extremely helpful when reading large files with multiple READ statements. If READ failed it is redirected to the label where user will be informed about error but because very many READ statement making individual error label would be impractical. In this case if return back one step would be implemented in SDBG the offending READ would be found in one step: user places stop on line where error message is displayed and waits when READ fails. Then if read fails he just push "Show previous line" saving hours of pushing "Next step" button like today |
|
Back to top |
|
|
Robert
Joined: 29 Nov 2006 Posts: 445 Location: Manchester
|
Posted: Tue Apr 07, 2020 12:58 pm Post subject: |
|
|
The debuggers are largely independent of the compiler and salflib. So you can almost certainly use these debuggers with (for example) FTN95 8.50.
Quote: | Was the bug fixed causing SDBG64 not to show all valid lines in debugger ? Because 8.61 did not have this bug fixed yet i skipped it and still use 8.50. |
The bug has been fixed but the issue is in FTN95 and not the debugger |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Sun Apr 12, 2020 11:35 pm Post subject: |
|
|
So we can try but we can not really use these new debuggers without also new FTN95...Can the new FTN95 be posted? |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Tue Apr 14, 2020 4:20 am Post subject: |
|
|
Tried. This new debugger does not dance well together with 8.50 making crazy jumps and getting into infinite cycling. Will try 861 |
|
Back to top |
|
|
mecej4
Joined: 31 Oct 2006 Posts: 1886
|
|
Back to top |
|
|
John-Silver
Joined: 30 Jul 2013 Posts: 1520 Location: Aerospace Valley
|
Posted: Tue Apr 14, 2020 2:53 pm Post subject: |
|
|
Robert, have these new debuggers been verified (to some extent) with the v8.62 ftn95.exe 'released' by Paul on 13th April (mecej4's link above) ?? _________________ ''Computers (HAL and MARVIN excepted) are incredibly rigid. They question nothing. Especially input data.Human beings are incredibly trusting of computers and don't check input data. Together cocking up even the simplest calculation ... " |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Tue Apr 14, 2020 7:28 pm Post subject: |
|
|
I just tried to install 861 and there was a problem to install examples "An Error occurred while creating file in the destination directory . The system can not find the file specified ". The appropriate directory though exists and all older files are OK. The new ones were not copied there. I clicked Ignore million times during install as there were no other choices just to Retry, Ignore or Cancel installation
The compiler itself looks like was updated.
I see the nice features were added to Plato but my current urgent work needs good working SDBG64. So i will update SDBG first with this version. Hopefully the FTN95 from 862 Paul posted today will be compatible with the debuggers.
Just first glance: the Plato new options look finally modern and extremely useful. Was jealous for years when my friends used such options in their Pascal compilers. What it still missing is the button and hot key combinations to Build and if all ended OK immediately start run |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7924 Location: Salford, UK
|
Posted: Tue Apr 14, 2020 8:32 pm Post subject: |
|
|
Dan
The feature that you say is "still missing" has been there from the beginning.
You may not get it by default (I can check in the morning). If not then you will be able to switch it on from the Settings dialog. |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Tue Apr 14, 2020 9:38 pm Post subject: |
|
|
The new 862 compiler found me hell amount of errors. One type of frequent errors are my own errors:
*** Error 840: AddedCC_SIZE was ambiguously declared in more than one MODULE,
so cannot be used
Besides that new compiler found other my mistakes when i forgot additional arguments to Clearwin library functions like here
Call sound@(3000) or CALL CLOSEF@(HANDLE)
But i am confused with this type of errors, since i have non-AMD processor (or AMD means something else?) :
integer function PropertySheet1()
*** Error 1207: AMD backend failure:Internal error - instruction offset out of
range
*** Error 1207: AMD backend failure:Internal error - instruction offset out of
range
*** Error 1207: AMD backend failure:Internal error - instruction offset out of
range
*** Error 1207: AMD backend failure:Internal error - instruction offset out of
range
Are they related to the first type ?
Also this error is also confusing:
2797) use ParallelSpectra
*** Error 840: OIC_INFORMATION was ambiguously declared in more than one
MODULE, so cannot be used
*** Error 840: OIC_ERROR was ambiguously declared in more than one MODULE, so
cannot be used
*** Error 840: OIC_WARNING was ambiguously declared in more than one MODULE,
so cannot be used
What are OIC_INFORMATION, OIC_ERROR, OIC_WARNING ...? I have no such variables
/*** By the way, it's time to make all error messages like these above on one single line, currently they are rudimentally using CGA monitor 80-symbol length or even 1950th era perforated card 80-hole design
/*** This thread is about debugger but my comments/questions are not about debugger because i can not reach the clean code state yet |
|
Back to top |
|
|
mecej4
Joined: 31 Oct 2006 Posts: 1886
|
Posted: Wed Apr 15, 2020 12:46 am Post subject: |
|
|
The "AMD" in the error message is from the "AMD64" back-end pass of a 64-bit compilation. You will see it sometimes when you have /opt specified in addition to /64, or for a particular set of options that you selected when using the 64-bit compiler. Please construct a reproducer and report the problem. As a workaround, try changing the options for just the file concerned or for a single program unit.
See, for example, a similar bug reported in http://forums.silverfrost.com/viewtopic.php?t=4170 .
Variable names may get decorated with module names if the variables are module variables. The OIC_xxxxxx names sound as if they are in modules in the body of the compiler, rather than your variables. Perhaps Paul can tell you what those are. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7924 Location: Salford, UK
|
Posted: Wed Apr 15, 2020 8:19 am Post subject: |
|
|
Dan
I am concerned about the error report
Quote: | integer function PropertySheet1()
*** Error 1207: AMD backend failure:Internal error - instruction offset out of
range |
Can you send me code that reproduces this error report? You must be using /64 on the command line. You can probably temporarily use /ignore 1207 as a work-around.
The error report
Quote: | 2797) use ParallelSpectra
*** Error 840: OIC_INFORMATION was ambiguously declared in more than one
MODULE, so cannot be used |
must be in your code - perhaps even in ParallelSpectra or a module USEd in ParallelSpectra. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7924 Location: Salford, UK
|
Posted: Wed Apr 15, 2020 8:34 am Post subject: |
|
|
Quote: | What it still missing is the button and hot key combinations to Build and if all ended OK immediately start run. |
This is available in the Settings dialog under General and "On run always build when changed". |
|
Back to top |
|
|
DanRRight
Joined: 10 Mar 2008 Posts: 2815 Location: South Pole, Antarctica
|
Posted: Wed Apr 15, 2020 5:18 pm Post subject: |
|
|
Paul,
1) Yes, this is /64 bit app.
2) /ignore seems suppresses 1207 error report
3) As to another set of multiple errors,
*** Error 840: OIC_INFORMATION
etc I got that such variables are declared in compiler own include files mswin…,
I do not use them
I will send the code to you when find the module I by mistake defined twice, hopefully today. |
|
Back to top |
|
|
|