comp.lang.ada
 help / color / mirror / Atom feed
From: Stephen Arnold <arnold.steve@ensco.com>
Subject: Re: problem solved (and now I know why)
Date: 2000/04/14
Date: 2000-04-14T00:00:00+00:00	[thread overview]
Message-ID: <38F790EE.2273B508@ensco.com> (raw)
In-Reply-To: 8d7n1a$ee6@journal.concentric.net

Well, I've learned alot today :)

Thanks to some help from Julian Day (what is your real name anyway?) I
figured out my problem (but there's still a problem on the windoze
platform...)

In my original Remove procedure, I had a call to Clear to clear the list
when it only contained a single element.  However, after Clear freed the
memory for the single list element, and set the list pointers to null,
it jumped back to Remove, which tried to free the same memory.  Again
(not good).  So now, with 20-20 hindsight, it's obvious why my code
barfed on Linux.  That's exactly what it *should've* done.

However, one question remains:  Why did windoze not catch this problem? 
My original (and incorrect) code runs just fine on win95, win98, and
even NT4 (which my instructor uses).  The original code passed his test
driver with flying colors, and he tests *everything* (including the
Overflow exception).

Is there any way for GNAT to catch this at run-time, or is it completely
up to the OS?  I guess I'll be sticking to Linux from now on...

Thanks, Steve




  reply	other threads:[~2000-04-14  0:00 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-04-14  0:00 problem solved, but I don't know why (was: GNAT implementation bug) Steve Arnold
2000-04-14  0:00 ` Stephen Arnold [this message]
2000-04-15  0:00   ` problem solved (and now I know why) Florian Weimer
2000-04-14  0:00 ` problem solved, but I don't know why (was: GNAT implementation bug) Tucker Taft
2000-04-15  0:00   ` Robert Dewar
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox