From: Matthew Heaney <mheaney@on2.com>
Subject: Re: Containers - nontrivial element access
Date: Tue, 02 Oct 2007 09:40:57 -0700
Date: 2007-10-02T09:40:57-07:00 [thread overview]
Message-ID: <1191343257.343180.80480@y42g2000hsy.googlegroups.com> (raw)
In-Reply-To: <5mdfipFcv1dsU1@mid.individual.net>
On Oct 1, 7:52 pm, "Alex R. Mosteo" <devn...@mailinator.com> wrote:
>
> I don't think that's reproducible as-is with the standard containers. It
> must be more verbose. There's no way to get a reference to the element in
> the Ada containers (unless you want to go the 'Unrestricted_Access way
> inside Update_Element, but that would require anyway extending the standard
> containers), so you can have dangling cursors but no dangling pointers.
If this is a vector, you can use index values.
> There was a recent thread (started by myself) on the amount of copying
> involved in the use of the containers. Someone said that returning accesses
> was deemed too unsafe and thus dropped, IIRC. I have not a strong position
> on if dangling cursors is a great improvement over dangling accesses, given
> what we gain/lose; in my experience a dangling cursor has been always as
> bad as a dangling pointer, in the sense that the program was erroneous
> beyond recovery; admittedly I have never got a memory violation using the
> containers so post-hoc diagnostics are quicker.
If you're using GNAT, then compile the container instantiations with -
gnata, and the container will detect dangling cursors. Try it!
next prev parent reply other threads:[~2007-10-02 16:40 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-01 21:55 Containers - nontrivial element access Maciej Sobczak
2007-10-01 23:52 ` Alex R. Mosteo
2007-10-02 16:40 ` Matthew Heaney [this message]
2007-10-02 23:16 ` Alex R. Mosteo
2007-10-02 20:47 ` Maciej Sobczak
2007-10-02 23:23 ` Alex R. Mosteo
2007-10-02 0:39 ` Jeffrey R. Carter
2007-10-02 16:44 ` Matthew Heaney
2007-10-03 0:20 ` Jeffrey R. Carter
2007-10-03 19:40 ` Maciej Sobczak
2007-10-03 19:56 ` Matthew Heaney
2007-10-03 20:21 ` Dmitry A. Kazakov
2007-10-03 22:37 ` Matthew Heaney
2007-10-04 8:06 ` Dmitry A. Kazakov
2007-10-03 22:02 ` Jeffrey R. Carter
2007-10-04 0:16 ` Robert A Duff
2007-10-07 8:41 ` Jacob Sparre Andersen
2007-10-11 19:15 ` Robert A Duff
2007-10-14 4:59 ` Jacob Sparre Andersen
2007-10-14 7:24 ` Dmitry A. Kazakov
2007-10-14 13:49 ` Georg Bauhaus
2007-10-14 15:07 ` Dmitry A. Kazakov
2007-10-02 20:50 ` Maciej Sobczak
2007-10-03 0:22 ` Jeffrey R. Carter
2007-10-03 8:26 ` Dmitry A. Kazakov
2007-10-03 18:49 ` Jeffrey R. Carter
2007-10-03 19:09 ` Matthew Heaney
2007-10-03 19:15 ` Simon Wright
2007-10-03 19:48 ` Maciej Sobczak
2007-10-03 19:58 ` Matthew Heaney
2007-10-03 19:35 ` Dmitry A. Kazakov
2007-10-02 2:34 ` Randy Brukardt
2007-10-02 16:47 ` Matthew Heaney
2007-10-02 7:23 ` Dmitry A. Kazakov
2007-10-02 16:37 ` Matthew Heaney
2007-10-02 21:02 ` Maciej Sobczak
2007-10-02 22:20 ` Matthew Heaney
2007-10-03 19:59 ` Maciej Sobczak
2007-10-03 22:55 ` Matthew Heaney
2007-10-04 0:22 ` Robert A Duff
2007-10-04 13:01 ` Georg Bauhaus
2007-10-04 14:01 ` Matthew Heaney
2007-10-04 21:58 ` Matthew Heaney
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox