From 59e5fbe064423bf109f2e0525d45872f8c77ae05 Mon Sep 17 00:00:00 2001 From: Robert Dewar Date: Thu, 16 Jun 2005 10:46:36 +0200 Subject: re PR ada/10671 (improve error message for named notation used in pragma) 2005-06-14 Robert Dewar Ed Schonberg PR ada/10671 * sem_prag.adb: Implement pragma Persistent_BSS Remove obsolete pragma Persistent_Data, Persistent_Object Set Ada_Version_Explicit, for implementation of AI-362 Test Ada_Version_Explicit for Preelaborate_05 and Pure_05 Add processing for pragma Pure_05 and Preelaborate_05 Add processing for Assertion_Policy pragma Add pragma identifiers for Assert (Analyze_Pragma, case Assert): Check number of arguments (Process_Inline): Additional guard against an illegal program, where the argument of the pragma is undefined, and warnings on redundant constructs are enabled. (Analyze_Pragma, case Obsolescent): Allow an optional second argument Ada_05 to this pragma, specifying that the pragma is only active in Ada_05 mode. (Check_Arg_Order): New procedure Add appropriate calls to this procedure throughout Also throughout, check entity name before doing any other checks * snames.h snames.ads, snames.adb: Add pragma Persistent_BSS Remove obsolete pragma Persistent_Data, Persistent_Object Add entries for pragma Pure_05 and Preelaborate_05 Add entries for Assertion_Policy pragma and associated names Add some names for pragma argument processing * tbuild.ads, tbuild.adb: (Make_Linker_Section_Pragma): New function From-SVN: r101060 --- gcc/ada/tbuild.ads | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gcc/ada/tbuild.ads') diff --git a/gcc/ada/tbuild.ads b/gcc/ada/tbuild.ads index 3cd0fcc7111..483496678df 100644 --- a/gcc/ada/tbuild.ads +++ b/gcc/ada/tbuild.ads @@ -118,6 +118,13 @@ package Tbuild is pragma Inline (Make_Integer_Literal); -- A convenient form of Make_Integer_Literal taking Int instead of Uint + function Make_Linker_Section_Pragma + (Ent : Entity_Id; + Loc : Source_Ptr; + Sec : String) return Node_Id; + -- Construct a Linker_Section pragma for entity Ent, using string Sec as + -- the section name. Loc is the Sloc value to use in building the pragma. + function Make_Raise_Constraint_Error (Sloc : Source_Ptr; Condition : Node_Id := Empty; -- cgit v1.2.1