2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 17 Oct 2013 13:52:37 +0000 (13:52 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 17 Oct 2013 13:52:37 +0000 (13:52 +0000)
* sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect
Refined_Pre as not supported.
* sem_prag.adb (Analyze_Pragma): Ignore pragma Refined_Pre.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203761 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/sem_ch13.adb
gcc/ada/sem_prag.adb

index 6d8be82..9f55cad 100644 (file)
@@ -1,3 +1,9 @@
+2013-10-17  Hristian Kirtchev  <kirtchev@adacore.com>
+
+       * sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect
+       Refined_Pre as not supported.
+       * sem_prag.adb (Analyze_Pragma): Ignore pragma Refined_Pre.
+
 2013-10-17  Ed Schonberg  <schonberg@adacore.com>
 
        * sem_ch12.adb (Validated_Access_Subprogram_Instance): According
@@ -21,7 +27,7 @@
        * sem_prag.adb (Analyze_Constituent): Move the check
        concerning option Part_Of to routine Check_Matching_Constituent.
        (Check_Matching_Constituent): Verify that an abstract state
-       that acts as a constituent has the prope Part_Op option in
+       that acts as a constituent has the proper Part_Of option in
        its aspect/pragma Abstract_State.  Account for the case when a
        constituent comes from a private child or private sibling.
        * sem_util.ads, sem_util.adb (Is_Child_Or_Sibling): New routine.
index 4e3fcac..6aef384 100644 (file)
@@ -2186,12 +2186,12 @@ package body Sem_Ch13 is
 
                --  Refined_Pre
 
+               --  Disable the support for aspect Refined_Pre as its static and
+               --  runtime semantics are still under heavy design.
+
                when Aspect_Refined_Pre =>
-                  Make_Aitem_Pragma
-                    (Pragma_Argument_Associations => New_List (
-                       Make_Pragma_Argument_Association (Loc,
-                         Expression => Relocate_Node (Expr))),
-                     Pragma_Name                  => Name_Refined_Pre);
+                  Error_Msg_NE ("aspect & is not supported", Aspect, Id);
+                  goto Continue;
 
                --  Refined_State
 
index 0830f09..1193a9c 100644 (file)
@@ -17219,11 +17219,11 @@ package body Sem_Prag is
 
          begin
             --  Disable the support for pragma Refined_Pre as its static and
-            --  runtime semantics are still under heavy design.
+            --  runtime semantics are still under heavy design. The pragma is
+            --  silently ignored.
 
             if Pname = Name_Refined_Pre then
-               Error_Pragma ("pragma % is not supported");
-               return;
+               Set_Is_Ignored (N);
             end if;
 
             Analyze_Refined_Pragma (Spec_Id, Body_Id, Legal);