[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 23 Oct 2015 12:29:51 +0000 (14:29 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 23 Oct 2015 12:29:51 +0000 (14:29 +0200)
2015-10-23  Bob Duff  <duff@adacore.com>

* a-convec.adb (Copy): Make sure C is initialized
on all paths, including when Checks is False.

2015-10-23  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Remove
error as unreachable.

From-SVN: r229242

gcc/ada/ChangeLog
gcc/ada/a-convec.adb
gcc/ada/sem_ch13.adb

index 4851d5dbc41820fdb773ff50aef24a8d1df98b26..e17fa0c5422539829f5a2d2aff8f39ef4685eacb 100644 (file)
@@ -1,3 +1,13 @@
+2015-10-23  Bob Duff  <duff@adacore.com>
+
+       * a-convec.adb (Copy): Make sure C is initialized
+       on all paths, including when Checks is False.
+
+2015-10-23  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Remove
+       error as unreachable.
+
 2015-10-23  Arnaud Charlet  <charlet@adacore.com>
 
        * gnat1drv.adb (Adjust_Global_Switches): Adjust.
index ff11fa952723d9ecc76a452ba3720b0e4fc0e378..c009b6b90889fedfe9b89a8f16d071469cbb044f 100644 (file)
@@ -346,15 +346,16 @@ package body Ada.Containers.Vectors is
       C : Count_Type;
 
    begin
-      if Capacity = 0 then
-         C := Source.Length;
-
-      elsif Capacity >= Source.Length then
+      if Capacity >= Source.Length then
          C := Capacity;
 
-      elsif Checks then
-         raise Capacity_Error with
-           "Requested capacity is less than Source length";
+      else
+         C := Source.Length;
+
+         if Checks and then Capacity /= 0 then
+            raise Capacity_Error with
+              "Requested capacity is less than Source length";
+         end if;
       end if;
 
       return Target : Vector do
index 8b1287c1ef9405d27469fc89eb08528bf6b65fe0..02e5ed33ab6faab797a83eb0af6b8426aa03fb1f 100644 (file)
@@ -4808,15 +4808,6 @@ package body Sem_Ch13 is
                      end if;
                   end;
 
-                  if Is_Exported (U_Ent) then
-                     Error_Msg_N
-                       ("& cannot be exported if an address clause is given",
-                        Nam);
-                     Error_Msg_N
-                       ("\define and export a variable "
-                        & "that holds its address instead", Nam);
-                  end if;
-
                   --  Entity has delayed freeze, so we will generate an
                   --  alignment check at the freeze point unless suppressed.