]> gcc.gnu.org Git - gcc.git/commitdiff
[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Wed, 28 Oct 2009 14:14:05 +0000 (15:14 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 28 Oct 2009 14:14:05 +0000 (15:14 +0100)
2009-10-28  Thomas Quinot  <quinot@adacore.com>

* s-crtl.ads (System.CRTL.strerror): New function.

2009-10-28  Ed Schonberg  <schonberg@adacore.com>

* sem_type.adb: Add guard to recover some type errors.

From-SVN: r153662

gcc/ada/ChangeLog
gcc/ada/s-crtl.ads
gcc/ada/sem_type.adb

index cb88c2b51bf475b0a9375af4ce21da35621213a3..36f7715d1acc6771976b77f1287ae8dc6bdb0c0e 100644 (file)
@@ -1,3 +1,11 @@
+2009-10-28  Thomas Quinot  <quinot@adacore.com>
+
+       * s-crtl.ads (System.CRTL.strerror): New function.
+
+2009-10-28  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_type.adb: Add guard to recover some type errors.
+
 2009-10-28  Vincent Celier  <celier@adacore.com>
 
        * prj-nmsc.adb (Add_To_Or_Remove_From_List): New name of procedure
index 5a9902dd65702b09aca27f66f059c3898c801768..f013a418fcba6181af312edca66dd9d86ffeb20a 100644 (file)
@@ -202,4 +202,7 @@ package System.CRTL is
    function write (fd : int; buffer : chars; nbytes : int) return int;
    pragma Import (C, write, "write");
 
+   function strerror (errno : int) return chars;
+   pragma Import (C, strerror, "strerror");
+
 end System.CRTL;
index 6f3e36935fb001b95fe28b690de8938f1c87d693..5b3a4f3ecfebaf79150e6c8f7b8ad836c2432826 100644 (file)
@@ -970,10 +970,16 @@ package body Sem_Type is
       then
          return Covers (Corresponding_Remote_Type (T2), T1);
 
-      elsif Is_Record_Type (T1) and then Is_Concurrent_Type (T2) then
+      elsif Is_Record_Type (T1)
+        and then Is_Concurrent_Type (T2)
+        and then Present (Corresponding_Record_Type (T2))
+      then
          return Covers (T1, Corresponding_Record_Type (T2));
 
-      elsif Is_Concurrent_Type (T1) and then Is_Record_Type (T2) then
+      elsif Is_Concurrent_Type (T1)
+        and then Present (Corresponding_Record_Type (T1))
+        and then Is_Record_Type (T2)
+      then
          return Covers (Corresponding_Record_Type (T1), T2);
 
       elsif Ekind (T2) = E_Access_Attribute_Type
This page took 0.075162 seconds and 5 git commands to generate.