when Pragma_Ada_05 | Pragma_Ada_2005 =>
if Arg_Count = 0 then
- Ada_Version := Ada_05;
- Ada_Version_Explicit := Ada_05;
+ Ada_Version := Ada_2005;
+ Ada_Version_Explicit := Ada_2005;
end if;
---------------------
when Pragma_Ada_12 | Pragma_Ada_2012 =>
if Arg_Count = 0 then
- Ada_Version := Ada_12;
- Ada_Version_Explicit := Ada_12;
+ Ada_Version := Ada_2012;
+ Ada_Version_Explicit := Ada_2012;
end if;
-----------
if Chars (Expression (Arg1)) = Name_On then
Extensions_Allowed := True;
- Ada_Version := Ada_12;
+ Ada_Version := Ada_2012;
else
Extensions_Allowed := False;
Ada_Version := Ada_Version_Explicit;
end if;
end Style_Checks;
+ -------------------------
+ -- Suppress_All (GNAT) --
+ -------------------------
+
+ -- pragma Suppress_All
+
+ -- This is a rather odd pragma, because other compilers allow it in
+ -- strange places. DEC allows it at the end of units, and Rational
+ -- allows it as a program unit pragma, when it would be more natural
+ -- if it were a configuration pragma.
+
+ -- Since the reason we provide this pragma is for compatibility with
+ -- these other compilers, we want to accomodate these strange placement
+ -- rules, and the easiest thing is simply to allow it anywhere in a
+ -- unit. If this pragma appears anywhere within a unit, then the effect
+ -- is as though a pragma Suppress (All_Checks) had appeared as the first
+ -- line of the current file, i.e. as the first configuration pragma in
+ -- the current unit.
+
+ -- To get this effect, we set the flag Has_Pragma_Suppress_All in the
+ -- compilation unit node for the current source file then in the last
+ -- stage of parsing a file, if this flag is set, we materialize the
+ -- Suppress (All_Checks) pragma, marked as not coming from Source.
+
+ when Pragma_Suppress_All =>
+ Set_Has_Pragma_Suppress_All (Cunit (Current_Source_Unit));
+
---------------------
-- Warnings (GNAT) --
---------------------
Pragma_CPP_Constructor |
Pragma_CPP_Virtual |
Pragma_CPP_Vtable |
+ Pragma_CPU |
Pragma_C_Pass_By_Copy |
Pragma_Comment |
Pragma_Common_Object |
Pragma_Convention |
Pragma_Debug_Policy |
Pragma_Detect_Blocking |
+ Pragma_Default_Storage_Pool |
Pragma_Dimension |
Pragma_Discard_Names |
Pragma_Eliminate |
Pragma_Import_Object |
Pragma_Import_Procedure |
Pragma_Import_Valued_Procedure |
+ Pragma_Independent |
+ Pragma_Independent_Components |
Pragma_Initialize_Scalars |
Pragma_Inline |
Pragma_Inline_Always |
Pragma_Interrupt_Handler |
Pragma_Interrupt_State |
Pragma_Interrupt_Priority |
+ Pragma_Invariant |
Pragma_Java_Constructor |
Pragma_Java_Interface |
Pragma_Keep_Names |
Pragma_Persistent_BSS |
Pragma_Postcondition |
Pragma_Precondition |
+ Pragma_Predicate |
Pragma_Preelaborate |
Pragma_Preelaborate_05 |
Pragma_Priority |
Pragma_Stream_Convert |
Pragma_Subtitle |
Pragma_Suppress |
- Pragma_Suppress_All |
Pragma_Suppress_Debug_Info |
Pragma_Suppress_Exception_Locations |
Pragma_Suppress_Initialization |