[Bug ada/34381] Bug box, Program_Error sem_type.adb:636 explicit raise on illegal Ada 2005 program

ludovic at ludovic-brenta dot org gcc-bugzilla@gcc.gnu.org
Fri Dec 7 16:33:00 GMT 2007



------- Comment #2 from ludovic at ludovic-brenta dot org  2007-12-07 16:33 -------
(In reply to comment #1)
> On trunk:
> 
> Compiling: pak5.ads (source file time stamp: 2007-12-07 15:48:22)
> 
>      6.    x2: integer := f(x1.all); -- line 5; column 19 is the opening paren
>                                |
>         >>> expected type "t1'class" defined at pak4.ads:2
>         >>> found type "t2'class" defined at pak4.ads:3

I think this error message is incorrect as T2'Class is a subset of T1'Class.

> 
>      7.    x3: float := x1.all;
>                            |
>         >>> expected type "Standard.Float"
>         >>> found type "t2'class" defined at pak4.ads:3

This is OK.

>      8.    x4: boolean := pak4."="(x1.all, x1.all);
>                               |
>         >>> "=" not declared in "pak4"

This is wrong.  Pak4 declares T2 and and, implicitly, T2'Class and "=" since T2
is nonlimited.

-- 
Ludovic Brenta.


-- 

ludovic at ludovic-brenta dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |UNCONFIRMED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34381



More information about the Gcc-bugs mailing list