summaryrefslogtreecommitdiff
path: root/gcc/ada/snames.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2006-10-31 18:10:46 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2006-10-31 18:10:46 +0000
commitfbdfb8b5e30bae7a1db92fae3b6b882c71e8915d (patch)
treea3384478cd6b26fdaaa9b54008e863f70fe01c13 /gcc/ada/snames.adb
parentf47e3276722d82d2cf6bdfc57569e60f4b8451e8 (diff)
downloadgcc-fbdfb8b5e30bae7a1db92fae3b6b882c71e8915d.tar.gz
2006-10-31 Robert Dewar <dewar@adacore.com>
Ed Schonberg <schonberg@adacore.com> Bob Duff <duff@adacore.com> * sinfo.ads, sinfo.adb (Set_Synchronized_Present, Synchronized_Present): Add Formal_Derived_Type_Definition and Private_Extension_Declaration to the list of assertions. (Is_Entry_Barrier_Function): New flag (Has_Self_Reference): New flag on aggregates, to indicate that they contain a reference to the enclosing type, inserted through a default initialization. (Next_Rep_Item): Move from Node4 to Node5. (Entity): Add this field for N_Attribute_Definition_Clause. (Comes_From_Extended_Return_Statement): New flag on N_Return_Statement (N_Return_Object_Declaration): Remove this node kind. We now use N_Object_Declaration instead. (Actual_Designated_Subtype): Move to a different place to make room in N_Extended_Return_Statement. (Procedure_To_Call): Move to a different place to make room in N_Extended_Return_Statement. (Return_Type): Removed this field to make room in return statements (both kinds). (Return_Statement_Entity): New field in return statements, in part to replace Return_Type, and in part to support the fact that return statements are now pushed on the scope stack during semantic analysis. (Return_Object_Declarations): New field to support extended return statements. (N_Extended_Return_Statement): New node for extended_return_statement nonterminal. (N_Return_Object_Declaration): New node for part of extended_return_statement nonterminal. Needed because all the necessary fields won't fit in N_Extended_Return_Statement. Generic_associations now carry the Box_Present flag, to indicate a default for an actual in a partially parametrized formal package. * snames.h, snames.ads, snames.adb: Add definition for Validity_Check (Preset_Names): Add entries for Priority_Specific_Dispatching pragma and for the new predefined dispatching policies: EDF_Across_Priorities, Non_Preemptive_Within_Priorities, and Round_Robin_Within_Priorities. Introduce new name Stub_Type for implementation defined attribute. Add pragma Preelaborable_Initialization Add entry for Priority attribute. Add Pragma_Wide_Character_Encoding (Get_Convention_Name): Given a convention id, this function returns the corresponding name id from the names table. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118313 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/snames.adb')
-rw-r--r--gcc/ada/snames.adb36
1 files changed, 35 insertions, 1 deletions
diff --git a/gcc/ada/snames.adb b/gcc/ada/snames.adb
index 7af43297894..96ae94a043f 100644
--- a/gcc/ada/snames.adb
+++ b/gcc/ada/snames.adb
@@ -201,6 +201,7 @@ package body Snames is
"normalize_scalars#" &
"polling#" &
"persistent_bss#" &
+ "priority_specific_dispatching#" &
"profile#" &
"profile_warnings#" &
"propagate_exceptions#" &
@@ -221,6 +222,7 @@ package body Snames is
"use_vads_size#" &
"validity_checks#" &
"warnings#" &
+ "wide_character_encoding#" &
"abort_defer#" &
"all_calls_remote#" &
"annotate#" &
@@ -287,9 +289,9 @@ package body Snames is
"pack#" &
"page#" &
"passive#" &
+ "preelaborable_initialization#" &
"preelaborate#" &
"preelaborate_05#" &
- "priority#" &
"psect_object#" &
"pure#" &
"pure_05#" &
@@ -482,6 +484,7 @@ package body Snames is
"pool_address#" &
"pos#" &
"position#" &
+ "priority#" &
"range#" &
"range_length#" &
"round#" &
@@ -548,13 +551,18 @@ package body Snames is
"storage_pool#" &
"base#" &
"class#" &
+ "stub_type#" &
"ceiling_locking#" &
"inheritance_locking#" &
"fifo_queuing#" &
"priority_queuing#" &
+ "edf_across_priorities#" &
"fifo_within_priorities#" &
+ "non_preemptive_within_priorities#" &
+ "round_robin_within_priorities#" &
"access_check#" &
"accessibility_check#" &
+ "alignment_check#" &
"discriminant_check#" &
"division_check#" &
"elaboration_check#" &
@@ -564,6 +572,7 @@ package body Snames is
"range_check#" &
"storage_check#" &
"tag_check#" &
+ "validity_check#" &
"all_checks#" &
"abort#" &
"abs#" &
@@ -852,6 +861,28 @@ package body Snames is
end case;
end Get_Convention_Id;
+ -------------------------
+ -- Get_Convention_Name --
+ -------------------------
+
+ function Get_Convention_Name (C : Convention_Id) return Name_Id is
+ begin
+ case C is
+ when Convention_Ada => return Name_Ada;
+ when Convention_Assembler => return Name_Assembler;
+ when Convention_C => return Name_C;
+ when Convention_COBOL => return Name_COBOL;
+ when Convention_CPP => return Name_CPP;
+ when Convention_Entry => return Name_Entry;
+ when Convention_Fortran => return Name_Fortran;
+ when Convention_Intrinsic => return Name_Intrinsic;
+ when Convention_Java => return Name_Java;
+ when Convention_Protected => return Name_Protected;
+ when Convention_Stdcall => return Name_Stdcall;
+ when Convention_Stubbed => return Name_Stubbed;
+ end case;
+ end Get_Convention_Name;
+
---------------------------
-- Get_Locking_Policy_Id --
---------------------------
@@ -871,6 +902,8 @@ package body Snames is
return Pragma_AST_Entry;
elsif N = Name_Interface then
return Pragma_Interface;
+ elsif N = Name_Priority then
+ return Pragma_Priority;
elsif N = Name_Storage_Size then
return Pragma_Storage_Size;
elsif N = Name_Storage_Unit then
@@ -1057,6 +1090,7 @@ package body Snames is
return N in First_Pragma_Name .. Last_Pragma_Name
or else N = Name_AST_Entry
or else N = Name_Interface
+ or else N = Name_Priority
or else N = Name_Storage_Size
or else N = Name_Storage_Unit;
end Is_Pragma_Name;