[COMMITTED] ada: Accept aspects Global and Depends on abstract subprograms
Commit Message
From: Piotr Trojanek <trojanek@adacore.com>
Aspects Global and Depends are now allowed on abstract subprograms
(as substitutes for Global'Class and Depends'Class).
This patch implements the recently modified rules SPARK RM 6.1.2(2-3).
The behavior for Contract_Cases and aspects on null subprograms stays
as it was.
gcc/ada/
* sem_prag.adb (Analyze_Depends_Global): Accept aspects on
abstract subprograms.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/sem_prag.adb | 5 +++++
1 file changed, 5 insertions(+)
@@ -4549,6 +4549,11 @@ package body Sem_Prag is
elsif Nkind (Subp_Decl) = N_Single_Task_Declaration then
null;
+ -- Abstract subprogram declaration
+
+ elsif Nkind (Subp_Decl) = N_Abstract_Subprogram_Declaration then
+ null;
+
-- Subprogram body acts as spec
elsif Nkind (Subp_Decl) = N_Subprogram_Body