| Pragma_Short_Circuit_And_Or
| Pragma_Short_Descriptors
| Pragma_Simple_Storage_Pool_Type
+ | Pragma_Simulate_Internal_Error
| Pragma_Static_Elaboration_Desired
| Pragma_Storage_Size
| Pragma_Storage_Unit
end if;
end Side_Effects;
+ ------------------------------------
+ -- Pragma_Simulate_Internal_Error --
+ ------------------------------------
+
+ -- pragma Simulate_Internal_Error;
+
+ -- Since the only purpose of this pragma is to write tests for the
+ -- compiler, it is not documented in the GNAT reference manual. The
+ -- effect of the pragma is to cause the compiler to raise an
+ -- exception when it analyzes the pragma.
+
+ when Pragma_Simulate_Internal_Error =>
+ Simulate_Internal_Error : declare
+ Simulated_Internal_Error : exception;
+ begin
+ GNAT_Pragma;
+ Check_Arg_Count (0);
+
+ raise Simulated_Internal_Error;
+ end Simulate_Internal_Error;
+
------------------------------
-- Simple_Storage_Pool_Type --
------------------------------
Pragma_Shared_Passive => 0,
Pragma_Short_Circuit_And_Or => 0,
Pragma_Short_Descriptors => 0,
+ Pragma_Simulate_Internal_Error => 0,
Pragma_Simple_Storage_Pool_Type => 0,
Pragma_Source_File_Name => 0,
Pragma_Source_File_Name_Project => 0,
Name_Shared_Passive : constant Name_Id := N + $;
Name_Side_Effects : constant Name_Id := N + $; -- GNAT
Name_Simple_Storage_Pool_Type : constant Name_Id := N + $; -- GNAT
+ Name_Simulate_Internal_Error : constant Name_Id := N + $; -- GNAT
Name_Source_Reference : constant Name_Id := N + $; -- GNAT
Name_Static_Elaboration_Desired : constant Name_Id := N + $; -- GNAT
Pragma_Shared_Passive,
Pragma_Side_Effects,
Pragma_Simple_Storage_Pool_Type,
+ Pragma_Simulate_Internal_Error,
Pragma_Source_Reference,
Pragma_Static_Elaboration_Desired,
Pragma_Stream_Convert,