Skip to content
Snippets Groups Projects
Commit eccfadd5 authored by Piotr Trojanek's avatar Piotr Trojanek Committed by Marc Poulhiès
Browse files

ada: Reject references to attribute Result in Exceptional_Cases

Functions with aspect Side_Effects should not reference attribute Result in
consequences of their aspect Exceptional_Cases.

gcc/ada/ChangeLog:

	* sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Reject
	references to attribute Result.
parent 0307abc8
No related branches found
No related tags found
No related merge requests found
......@@ -2216,7 +2216,8 @@ package body Sem_Prag is
-- in the consequences of an exceptional contract unless they are either
-- passed by reference or occur in the prefix of a reference to the 'Old
-- attribute or as direct prefixes of attributes that do not actually
-- read data from the object (SPARK RM 6.1.9(1)).
-- read data from the object (SPARK RM 6.1.9(1)). References to
-- attribute Result should not occur either.
 
-----------------
-- Check_Param --
......@@ -2266,6 +2267,10 @@ package body Sem_Prag is
then
return Skip;
end if;
when Name_Result =>
Error_Msg_N
("attribute Result in consequence of Exceptional_Cases",
N);
when others => null;
end case;
 
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment