blob: 98bd107ded285710f940fa5e5958cc4c05727b2b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# DP: Fix PR ada/47818: Pragma Assert is rejected with No_Implementation_Pragmas restriction.
Index: b/src/gcc/ada/sem_prag.adb
===================================================================
--- a/src/gcc/ada/sem_prag.adb
+++ b/src/gcc/ada/sem_prag.adb
@@ -16306,7 +16306,16 @@ package body Sem_Prag is
Type_Id : Node_Id;
begin
- GNAT_Pragma;
+ -- This could be a rewritten pragma Assert. If it is the case
+ -- then don't check restrictions, because they are different for
+ -- pragma Assert and were already checked.
+
+ if Nkind (Original_Node (N)) /= N_Pragma
+ or else Pragma_Name (Original_Node (N)) /= Name_Assert
+ then
+ GNAT_Pragma;
+ end if;
+
Check_At_Least_N_Arguments (2);
Check_At_Most_N_Arguments (3);
Check_Optional_Identifier (Arg1, Name_Entity);
|