Hi Pete and Bill,
Thanks, Pete, for finding and reporting this longstanding bug.
As Bill diagnosed, the real error was in gen9.f90: the call to
packbits() passed argument 2 as "nsym2" where it should have passed
"nsym2/3". This caused the (undetected) out-of-bounds accesses to
arrays dbits() and sym(). Writing to sym(i) with i>69 definitely
clobbered something... though at present I'm not sure what was clobbered.
I do have a hypothesis, though it may be wishful thinking. I think it's
possible that this bug may be the root cause of undecodable JT9
transmissions that sometimes occur in response to a CQ. I will try to
think of a way to test this hypothesis.
-- 73, Joe, K1JT
On 2/1/2016 8:46 AM, [email protected] [wsjtgroup] wrote:
> On 01/02/2016 11:53, [email protected] [wsjtgroup] wrote:
>
> We have Fortran array bounds checking turned on for our debug builds and I
> am surprised that this defect has not caused a run time error as it is
> clearly a bounds violation. Hi Pete,
>
> further to my comment above: the reason why the array bounds checking did not
> pick this up is that the array dummy argument sym() was declared as assumed
> size (sym(*)) which erases all type information from the caller, hence the
> compiler cannot generate the required bounds checking code.
>
> I have fixed the original defect and also amended the packjt module code such
> that it uses assumed shape arrays for dummy arguments and therefore would
> detect this bounds error in debug builds.
>
> 73
> Bill
> G4WJS.
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel