From: Vadim Godunko <vgodunko@gmail.com>
Subject: Re: Bug in Ada (SuSe 10.2) ?
Date: Fri, 22 Feb 2008 13:29:55 -0800 (PST)
Date: 2008-02-22T13:29:55-08:00 [thread overview]
Message-ID: <cd3caba0-bf53-4207-8974-a1b26fb7ce41@c33g2000hsd.googlegroups.com> (raw)
In-Reply-To: 1203708110.6651.7.camel@K72
On 22 фев, 22:21, Georg Bauhaus <rm.plus-bug.t...@maps.futureapps.de>
wrote:
> On Fri, 2008-02-22 at 08:10 -0800, billjones6...@yahoo.com wrote:
> > Of course, the danger is only eliminated when this language-defined
> > check is fully implemented in standard mode.
>
> Here is another dangling pointer. The program is
> giving me results varying with compiler/OS. I didn't see
> how accessiblity checks could help in this case, but
> then maybe this is a different issue?
>
> with Ada.Unchecked_Deallocation;
> with Ada.Text_IO;
>
> procedure News3 is
> use Ada;
>
> type Int_Ptr is access Integer;
> Pointer: Int_Ptr;
> Dangling_Pointer: Int_Ptr;
>
> procedure Copy(Source: in out Int_Ptr; Target: out Int_Ptr) is
> procedure Oops is new Unchecked_Deallocation
> (Integer, Int_Ptr);
> begin
> Target := Source;
> Oops(Source);
> end Copy;
>
> begin
> Pointer := new Integer'(42);
> Copy(Pointer, Dangling_Pointer);
>
> Text_IO.Put_Line(Integer'image(Dangling_Pointer.all));
> end News3;
Unchecked_Deallocation never makes program less erroneous. In the
example it is safe to remove instantiation of Unchecked_Deallocation.
Allocated memory will be automatically reclaimed after control flow
leave News3 subprogram, independent does or doesn't it is a main
subprogram.
next prev parent reply other threads:[~2008-02-22 21:29 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-19 8:47 Bug in Ada (SuSe 10.2) ? Reinert Korsnes
2008-02-19 9:08 ` Niklas Holsti
2008-02-19 9:53 ` Reinert Korsnes
2008-02-19 11:21 ` Ludovic Brenta
2008-02-20 12:41 ` Reinert Korsnes
2008-02-20 16:50 ` Adam Beneschan
2008-02-20 18:31 ` Jeffrey R. Carter
2008-02-20 23:10 ` Adam Beneschan
2008-02-20 23:22 ` Adam Beneschan
2008-02-21 0:31 ` Randy Brukardt
2008-02-21 8:56 ` Jean-Pierre Rosen
2008-02-21 9:08 ` Alex R. Mosteo
2008-02-21 9:27 ` Ludovic Brenta
2008-02-21 9:46 ` billjones6789
2008-02-21 12:27 ` Access type (mis)use (Was: Bug in Ada (SuSe 10.2) ?) Jacob Sparre Andersen
2008-02-21 19:40 ` Bob Klungle
2008-02-21 21:25 ` Jeffrey R. Carter
2008-02-21 21:57 ` Vadim Godunko
2008-02-21 22:32 ` Bug in Ada (SuSe 10.2) ? Randy Brukardt
2008-02-22 16:10 ` billjones6789
2008-02-22 19:21 ` Georg Bauhaus
2008-02-22 21:29 ` Vadim Godunko [this message]
2008-02-22 21:39 ` Robert A Duff
2008-02-23 10:16 ` billjones6789
2008-02-22 19:52 ` Randy Brukardt
2008-02-23 10:36 ` billjones6789
2008-02-26 0:32 ` Randy Brukardt
2008-02-26 16:46 ` billjones6789
2008-02-26 20:53 ` Randy Brukardt
2008-02-27 1:05 ` Robert A Duff
2008-02-27 10:06 ` billjones6789
2008-02-27 17:49 ` Robert A Duff
2008-02-28 0:30 ` Randy Brukardt
2008-02-28 15:33 ` Robert A Duff
2008-03-06 17:46 ` Adam Beneschan
2008-02-21 0:31 ` Jeffrey R. Carter
2008-02-21 0:35 ` Jeffrey R. Carter
2008-03-06 11:55 ` Colin Paul Gloster
2008-02-21 0:55 ` tmoran
2008-02-21 8:08 ` billjones6789
2008-02-21 9:11 ` Alex R. Mosteo
2008-02-21 23:01 ` Randy Brukardt
2008-02-22 16:43 ` Adam Beneschan
2008-02-22 9:06 ` Stephen Leake
2008-02-22 5:40 ` Gautier
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox