Commit 9072f069 by Hristian Kirtchev Committed by Arnaud Charlet

sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect Refined_Pre as not supported.

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.

From-SVN: r203761
parent 7c821eff
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> 2013-10-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validated_Access_Subprogram_Instance): According * sem_ch12.adb (Validated_Access_Subprogram_Instance): According
...@@ -21,7 +27,7 @@ ...@@ -21,7 +27,7 @@
* sem_prag.adb (Analyze_Constituent): Move the check * sem_prag.adb (Analyze_Constituent): Move the check
concerning option Part_Of to routine Check_Matching_Constituent. concerning option Part_Of to routine Check_Matching_Constituent.
(Check_Matching_Constituent): Verify that an abstract state (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 its aspect/pragma Abstract_State. Account for the case when a
constituent comes from a private child or private sibling. constituent comes from a private child or private sibling.
* sem_util.ads, sem_util.adb (Is_Child_Or_Sibling): New routine. * sem_util.ads, sem_util.adb (Is_Child_Or_Sibling): New routine.
......
...@@ -2186,12 +2186,12 @@ package body Sem_Ch13 is ...@@ -2186,12 +2186,12 @@ package body Sem_Ch13 is
-- Refined_Pre -- Refined_Pre
-- Disable the support for aspect Refined_Pre as its static and
-- runtime semantics are still under heavy design.
when Aspect_Refined_Pre => when Aspect_Refined_Pre =>
Make_Aitem_Pragma Error_Msg_NE ("aspect & is not supported", Aspect, Id);
(Pragma_Argument_Associations => New_List ( goto Continue;
Make_Pragma_Argument_Association (Loc,
Expression => Relocate_Node (Expr))),
Pragma_Name => Name_Refined_Pre);
-- Refined_State -- Refined_State
......
...@@ -17219,11 +17219,11 @@ package body Sem_Prag is ...@@ -17219,11 +17219,11 @@ package body Sem_Prag is
begin begin
-- Disable the support for pragma Refined_Pre as its static and -- 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 if Pname = Name_Refined_Pre then
Error_Pragma ("pragma % is not supported"); Set_Is_Ignored (N);
return;
end if; end if;
Analyze_Refined_Pragma (Spec_Id, Body_Id, Legal); Analyze_Refined_Pragma (Spec_Id, Body_Id, Legal);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment