comp.lang.ada
 help / color / mirror / Atom feed
From: Brian Drummond <brian_drummond@btconnect.com>
Subject: Re: Using local storage pools...
Date: Thu, 24 Feb 2011 00:27:17 +0000
Date: 2011-02-24T00:27:17+00:00	[thread overview]
Message-ID: <j69bm6lufj730e02agm7dnnmd0l87ehbek@4ax.com> (raw)
In-Reply-To: 87ipwawk3b.fsf@ludovic-brenta.org

On Wed, 23 Feb 2011 21:51:20 +0100, Ludovic Brenta <ludovic@ludovic-brenta.org>
wrote:

>Brian Drummond writes:
>> I am trying to learn a little about storage pools, with a view to
>> (hopefully) using local pools to improve the Binary_Trees benchmark in
>> the same way as some of the faster C benchmarks.

>> ------------------------------------------------------------------------------------
>
>This looks like a genuine bug at s-pooloc.adb:114.  To trigger the bug,
>two conditions must hold simultaneously:
>
>* the pool contains exactly one allocated object.
>* the user calls Unchecked_Deallocation on this object.

Good detective work, thanks.

>Because this pool is intended for use without any explicit
>Unchecked_Deallocation, I would qualify this bug as minor.

I believe it should support both strategies (especially since it HAS a
"deallocate")  but I can't argue it's anything other than minor if I'm the first
to find it!

>The workaround, in your case, is to simply not do any
>Unchecked_Deallocation and let the finalization of the storage pool do
>the deallocation.

Which was the original intent.

Thanks for the detective work!

I have been emailed privately, suggesting I report it to Adacore.
Should I also report it to either Debian, or mainstream GCC?

- Brian



  reply	other threads:[~2011-02-24  0:27 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-23 19:01 Using local storage pools Brian Drummond
2011-02-23 20:42 ` Dmitry A. Kazakov
2011-02-23 23:55   ` Brian Drummond
2011-02-24  9:26     ` Dmitry A. Kazakov
2011-02-24  9:51       ` Georg Bauhaus
2011-02-24 10:09         ` Dmitry A. Kazakov
2011-02-24 10:39         ` Brian Drummond
2011-02-23 20:51 ` Ludovic Brenta
2011-02-24  0:27   ` Brian Drummond [this message]
2011-02-24  8:03     ` Ludovic Brenta
2011-02-24 17:04       ` Brian Drummond
2011-02-24 12:34     ` Robert A Duff
2011-02-23 21:01 ` Simon Wright
2011-02-24  0:00   ` Brian Drummond
2011-02-26  3:02 ` Randy Brukardt
2011-02-26 18:41   ` Pascal Obry
2011-02-26 18:59     ` Pascal Obry
2011-02-26  3:07 ` Randy Brukardt
2011-02-26  8:41 ` anon
2011-02-26 10:42   ` Pascal Obry
2011-02-26 11:41   ` Ludovic Brenta
2011-02-27  4:16     ` anon
2011-02-27  8:18       ` Pascal Obry
2011-02-27 23:46         ` Georg Bauhaus
replies disabled

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