exp_ch7.adb (Convert_View): Use base types of underlying types when determining wheth...
authorEd Schonberg <schonberg@adacore.com>
Tue, 15 Mar 2005 16:00:42 +0000 (17:00 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 15 Mar 2005 16:00:42 +0000 (17:00 +0100)
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Convert_View): Use base types of underlying types when
determining whether an unchecked conversion is needed for the argument
of an initialization call.

From-SVN: r96494

gcc/ada/exp_ch7.adb

index 6134df71199cb64e7df3c4ddcf020954615d3f47..4e300b9508f0ab391b87c8273927833440f46e2d 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 1992-2004, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2005, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -984,7 +984,9 @@ package body Exp_Ch7 is
         and then Present (Atyp)
         and then
           (Is_Private_Type (Ftyp) or else Is_Private_Type (Atyp))
-        and then Underlying_Type (Atyp) = Underlying_Type (Ftyp)
+        and then
+           Base_Type (Underlying_Type (Atyp)) =
+             Base_Type (Underlying_Type (Ftyp))
       then
          return Unchecked_Convert_To (Ftyp, Arg);
 
@@ -2139,7 +2141,7 @@ package body Exp_Ch7 is
 
          --  Add statements to the cleanup handler of the (ordinary)
          --  subprogram expanded to implement a protected subprogram,
-         --  unlocking the protected object parameter and undeferring abortion.
+         --  unlocking the protected object parameter and undeferring abort.
          --  If this is a protected procedure, and the object contains
          --  entries, this also calls the entry service routine.