exp_prag.adb (Expand_Pragma_Common_Object): Use a single Machine_Attribute pragma internally to implement the user pragma.
2006-10-31 Robert Dewar <dewar@adacore.com>
* exp_prag.adb (Expand_Pragma_Common_Object): Use a single
Machine_Attribute pragma internally to implement the user pragma.
Add processing for pragma Interface so that it is now completely
equivalent to pragma Import.
* sem_prag.adb (Analyze_Pragma, case Obsolescent): Extend this pragma
so that it can be applied to all entities, including record components
and enumeration literals.
(Analyze_Pragma, case Priority_Specific_Dispatching): Check whether
priority ranges are correct, verify compatibility against task
dispatching and locking policies, and if everything is correct an entry
is added to the table containing priority specific dispatching entries
for this compilation unit.
(Delay_Config_Pragma_Analyze): Delay processing
Priority_Specific_Dispatching pragmas because when processing the
pragma we need to access run-time data, such as the range of
System.Any_Priority.
(Sig_Flags): Add Pragma_Priority_Specific_Dispatching.
Allow pragma Unreferenced as a context item
Add pragma Preelaborable_Initialization
(Analyze_Pragma, case Interface): Interface is extended so that it is
now syntactically and semantically equivalent to Import.
(Analyze_Pragma, case Compile_Time_Warning): Fix error of blowups on
insertion characters.
Add handling for Pragma_Wide_Character_Encoding
(Process_Restrictions_Restriction_Warnings): Ensure that a warning
never supercedes a real restriction, and that a real restriction
always supercedes a warning.
(Analyze_Pragma, case Assert): Set Low_Bound_Known if assert is of
appropriate form.
From-SVN: r118268