[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Wed, 30 Jul 2014 13:45:14 +0000 (15:45 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 30 Jul 2014 13:45:14 +0000 (15:45 +0200)
2014-07-30  Bob Duff  <duff@adacore.com>

* s-tataat.adb, s-tataat.ads, a-tasatt.adb: Minor comment fixes.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Loop_Statement): If loop has a label,
verify that it is not hidden by an inner implicit declaration.

From-SVN: r213266

gcc/ada/ChangeLog
gcc/ada/a-tasatt.adb
gcc/ada/s-tataat.adb
gcc/ada/s-tataat.ads
gcc/ada/sem_ch5.adb

index 499853eb9dfce17300173e3c362fc7fa4446f766..68f15b73b600eebfeaefca3d0528a55ddacf87e9 100644 (file)
@@ -1,3 +1,12 @@
+2014-07-30  Bob Duff  <duff@adacore.com>
+
+       * s-tataat.adb, s-tataat.ads, a-tasatt.adb: Minor comment fixes.
+
+2014-07-30  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb (Analyze_Loop_Statement): If loop has a label,
+       verify that it is not hidden by an inner implicit declaration.
+
 2014-07-30  Thomas Quinot  <quinot@adacore.com>
 
        * sem.ads (Scope_Table_Entry): New component Locked_Shared_Objects.
index bd7f4a74e906454879e09fd25f52b872089ce6c9..015f6253b8f72fd518db57b83028ad4332f6e4b4 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--            Copyright (C) 2014, 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- --
@@ -51,7 +51,7 @@ package body Ada.Task_Attributes is
 
    type Attribute_Cleanup is new Limited_Controlled with null record;
    procedure Finalize (Cleanup : in out Attribute_Cleanup);
-   --  Finalize all tasks' attribute for this package
+   --  Finalize all tasks' attributes for this package
 
    Cleanup : Attribute_Cleanup;
    pragma Unreferenced (Cleanup);
index 14440263fb4f35a615449691cca2b72e2af61598..fbdb52a33d66c238f81e5c482e940745d8b3c501 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                  B o d y                                 --
 --                                                                          --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--            Copyright (C) 2014, 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- --
@@ -43,7 +43,7 @@ package body System.Tasking.Task_Attributes is
    end record;
    --  Used is True if a given index is used by an instantiation of
    --  Ada.Task_Attributes, False otherwise.
-   --  Require_Finalization is True is the attribute requires finalization.
+   --  Require_Finalization is True if the attribute requires finalization.
 
    Index_Array : array (1 .. Max_Attribute_Count) of Index_Info :=
      (others => (False, False));
index 878dc40d34daac857ad1f8b52e1ca279718888de..16661ae2c5f8118d5761abb419bf10952064f4aa 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                  S p e c                                 --
 --                                                                          --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--            Copyright (C) 2014, 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- --
@@ -40,7 +40,7 @@ package System.Tasking.Task_Attributes is
    type Attribute_Record is record
       Free : Deallocator;
    end record;
-   --  The real type is declared in Ada.Task_Attributes body: Real_Attribute
+   --  The real type is declared in Ada.Task_Attributes body: Real_Attribute.
    --  As long as the first field is the deallocator we are good.
 
    type Attribute_Access is access all Attribute_Record;
index c52f242d8f4cfdece3d9bd6eb26a68901540e998..863d488ebd74041a02d8a6186e0620c2fa01ccf8 100644 (file)
@@ -2834,6 +2834,13 @@ package body Sem_Ch5 is
                raise Program_Error;
             end if;
 
+         --  Verify that the loop name is hot hidden by an unrelated
+         --  declaration in an inner scope.
+
+         elsif Ekind (Ent) /= E_Label and then Ekind (Ent) /= E_Loop  then
+            Error_Msg_Sloc := Sloc (Ent);
+            Error_Msg_N ("implicit label declaration for & is hidden#", Id);
+
          else
             Generate_Reference (Ent, N, ' ');
             Generate_Definition (Ent);