comp.lang.ada
 help / color / mirror / Atom feed
From: Reto Buerki <reet@codelabs.ch>
Subject: Re: Discriminant & interface not implemented by full type
Date: Thu, 12 Mar 2009 14:07:06 +0100
Date: 2009-03-12T14:07:06+01:00	[thread overview]
Message-ID: <gpb1e0$7h4$1@news.motzarella.org> (raw)
In-Reply-To: <ST1ul.84846$PT2.57311@newsfe11.ams2>

Per Sandberg wrote:
> Compiles fine with GNATPro 6.2.1
> /Per
> 
> Reto Buerki wrote:
>> Hi everyone,
>>
>> I have the following simple test application:
>>
>> package Full_View is
>>
>>    type Base_Type (Num : Integer) is tagged private;
>>
>>    type Base_Interface is interface;
>>
>>    type New_Type is new Base_Type (Num => 11) and
>>      Base_Interface with private;
>>
>> private
>>    type Base_Type (Num : Integer) is tagged record
>>       My_Number : Integer := Num;
>>    end record;
>>
>>    type New_Type is new Base_Type (Num => 11) and
>>      Base_Interface with null record;
>>
>> end Full_View;
>>
>> Trying to compile this with gnat gcc 4.3 in Debian/Lenny results in the
>> following error:
>> full_view.ads:7:09: interface "Base_Interface" not implemented by full
>> type (RM-2005 7.3 (7.3/2))
>>
>> When removing the (Num => 11) discrimant initialization or the
>> Base_Interface interface from the New_Type type extension, the code
>> compiles fine.
>>
>> Is this a compiler bug? Seems to me that the consistency check of the
>> partial and full view of a tagged type covering interfaces does not like
>> discriminants.

Adam, Per thanks for your replies!

I filed a GCC bug report [1].

- reto

[1] - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39441



      reply	other threads:[~2009-03-12 13:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-09 17:21 Discriminant & interface not implemented by full type Reto Buerki
2009-03-12  1:44 ` Adam Beneschan
2009-03-12  6:21 ` Per Sandberg
2009-03-12 13:07   ` Reto Buerki [this message]
replies disabled

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