Silverfrost Forums

Welcome to our forums

Inconsistent debug information, 32-bit versus 64-bit

11 Nov 2020 1:10 (Edited: 12 Nov 2020 1:46) #26583

The test program below has a peculiar property: it invokes an inquiry function whose return value depends on the *type *rather than the *value *of its argument. What should we see in the debugger when such an argument is undefined and we compile with /debug?

program trigrs
	implicit none
 	integer:: m
  	real :: ti,param(3)
   
	ti=tiny(param(m)) ! m as well as param are undefined
   print *,ti        ! but tiny() depends on type of arg, not value
end program trigrs

When this program is compiled using v8.66 with /debug or /undef for 32-bit and opened in the v8.64 debugger, we see entries for **m **and **param **in the variables panel. In the 64-bit version, these variables are not even present in the variables panel!

Pro and con arguments could be listed for showing entries for unused/unneeded variables in the variables panel. My preference would be to see more details when debugging, since seeing 'Undefined' for variables such as m and param may help to detect bugs more easily.

11 Nov 2020 11:05 #26584

I agree with mecej4 and this especially for another reason: to my opinion the information given by the 64 bit version of the debugger should be the same as that of the 32 bit version whenever possible.

This would make debugging easier when porting 32 bit code to 64 bit.

In this context I would like to ask if the streams command which is supported by Salford's 32 bit debugger (sdbg) will be supported by the 64 debugger (sdbg64), too.

For sdbg64 version 8.62a the streams command is not yet supported. I like this feature very much 😃

Regards, Dietmar

12 Nov 2020 1:23 #26591

I thought this was fixed, but looks like it was not

Please login to reply.