comp.lang.ada
 help / color / mirror / Atom feed
From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: How to return an empty aggregate
Date: Wed, 2 Apr 2008 00:16:40 -0700 (PDT)
Date: 2008-04-02T00:16:40-07:00	[thread overview]
Message-ID: <1b719cda-38d9-43a0-b4b0-70f502cd2b4b@d62g2000hsf.googlegroups.com> (raw)
In-Reply-To: 7a936089-270d-4ac2-9d7f-ec39ef3e96ef@s19g2000prg.googlegroups.com

On 1 Kwi, 19:18, Adam Beneschan <a...@irvine.com> wrote:

> As far as I can tell, what Maciej is trying to do is perfectly fine,
> there aren't any language corners that would cause a problem, and the
> compiler is misbehaving.

Looks like this is related to my previous bug report. The smallest
test case I've found is:

procedure A is

   type Base_1 is interface;
   type Base_2 is interface;
   type Middle is Interface and Base_1 and Base_2;

   type Derived is new Middle with null record;

   function Make_Derived return Derived is
   begin
      return Derived' (others => <>);
   end Make_Derived;

   D : Base_1'Class := Make_Derived;

begin
   null;
end;

This compiles and runs fine.
After changing the order of progenitors in the definition of Middle
(or changing the type of D to Base_2'Class) the program still
compiles, but fails with segfault at runtime - this, however, takes a
couple of seconds.

Time for another entry in bugzilla.

--
Maciej Sobczak * www.msobczak.com * www.inspirel.com



  reply	other threads:[~2008-04-02  7:16 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-01 11:58 How to return an empty aggregate Maciej Sobczak
2008-04-01 12:54 ` Anh Vo
2008-04-01 17:18   ` Adam Beneschan
2008-04-02  7:16     ` Maciej Sobczak [this message]
2008-04-01 13:34 ` Dmitry A. Kazakov
2008-04-01 15:00 ` Robert A Duff
2008-04-02  7:19   ` Maciej Sobczak
2008-04-03  5:02     ` george.priv
2008-04-03  9:09       ` Maciej Sobczak
2008-04-04 15:38         ` george.priv
2008-04-04 20:35           ` Maciej Sobczak
2008-04-04 23:58             ` george.priv
2008-04-05 13:48               ` Maciej Sobczak
2008-04-05 16:04                 ` george.priv
2008-04-05 21:14                   ` Maciej Sobczak
2008-04-05 22:36                     ` george.priv
2008-04-06 19:53                       ` Maciej Sobczak
2008-04-06  7:00                     ` george.priv
2008-04-06 20:04                       ` Maciej Sobczak
2008-04-07 20:23                         ` george.priv
replies disabled

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