diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-05-22 12:32:55 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-05-22 12:32:55 +0000 |
commit | 0b3c78566ba056b2852f16a78f389372a5b150dd (patch) | |
tree | 7cb9f8f954915f5b68ba7d9da22a412315e4439a /gcc/ada/einfo.adb | |
parent | 7d36c2e2257a08304f56f9eb8a3f635f3c37ecd7 (diff) | |
download | gcc-0b3c78566ba056b2852f16a78f389372a5b150dd.tar.gz |
2015-05-22 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb Node36 is now used as Anonymous_Master. Flag253
is now unused.
(Anonymous_Master): New routine.
(Has_Anonymous_Master): Removed.
(Set_Anonymous_Master): New routine.
(Set_Has_Anonymous_Master): Removed.
(Write_Entity_Flags): Remove the output for Has_Anonymous_Maser.
(Write_Field36_Name): Add output for Anonymous_Master.
* einfo.ads Add new attribute Anonymous_Master along with
occurrences in nodes. Remove attribute Has_Anonymous_Master along
with occurrences in nodes.
(Anonymous_Master): New routine along with pragma Inline.
(Has_Anonymous_Master): Removed along with pragma Inline.
(Set_Anonymous_Master): New routine along with pragma Inline.
(Set_Has_Anonymous_Master): Removed along with pragma Inline.
* exp_ch4.adb (Create_Anonymous_Master): New routine.
(Current_Anonymous_Master): Reimplemented.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223550 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/einfo.adb')
-rw-r--r-- | gcc/ada/einfo.adb | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb index 02433567e3c..1d8f4f43425 100644 --- a/gcc/ada/einfo.adb +++ b/gcc/ada/einfo.adb @@ -264,7 +264,8 @@ package body Einfo is -- Import_Pragma Node35 - -- (unused) Node36 + -- Anonymous_Master Node36 + -- (unused) Node38 -- (unused) Node39 -- (unused) Node40 @@ -556,7 +557,6 @@ package body Einfo is -- Has_Implicit_Dereference Flag251 -- Is_Processed_Transient Flag252 - -- Has_Anonymous_Master Flag253 -- Is_Implementation_Defined Flag254 -- Is_Predicate_Function Flag255 -- Is_Predicate_Function_M Flag256 @@ -594,6 +594,7 @@ package body Einfo is -- Has_Volatile_Full_Access Flag285 -- Needs_Typedef Flag286 + -- (unused) Flag253 -- (unused) Flag287 -- (unused) Flag288 -- (unused) Flag289 @@ -753,6 +754,12 @@ package body Einfo is return Uint14 (Id); end Alignment; + function Anonymous_Master (Id : E) return E is + begin + pragma Assert (Ekind_In (Id, E_Function, E_Package, E_Procedure)); + return Node36 (Id); + end Anonymous_Master; + function Associated_Entity (Id : E) return E is begin return Node37 (Id); @@ -1375,13 +1382,6 @@ package body Einfo is return Flag79 (Id); end Has_All_Calls_Remote; - function Has_Anonymous_Master (Id : E) return B is - begin - pragma Assert - (Ekind_In (Id, E_Function, E_Package, E_Package_Body, E_Procedure)); - return Flag253 (Id); - end Has_Anonymous_Master; - function Has_Atomic_Components (Id : E) return B is begin return Flag86 (Implementation_Base_Type (Id)); @@ -3576,6 +3576,12 @@ package body Einfo is Set_Elist16 (Id, V); end Set_Access_Disp_Table; + procedure Set_Anonymous_Master (Id : E; V : E) is + begin + pragma Assert (Ekind_In (Id, E_Function, E_Package, E_Procedure)); + Set_Node36 (Id, V); + end Set_Anonymous_Master; + procedure Set_Associated_Entity (Id : E; V : E) is begin Set_Node37 (Id, V); @@ -4246,13 +4252,6 @@ package body Einfo is Set_Flag79 (Id, V); end Set_Has_All_Calls_Remote; - procedure Set_Has_Anonymous_Master (Id : E; V : B := True) is - begin - pragma Assert - (Ekind_In (Id, E_Function, E_Package, E_Package_Body, E_Procedure)); - Set_Flag253 (Id, V); - end Set_Has_Anonymous_Master; - procedure Set_Has_Atomic_Components (Id : E; V : B := True) is begin pragma Assert (not Is_Type (Id) or else Is_Base_Type (Id)); @@ -8634,7 +8633,6 @@ package body Einfo is W ("Has_Aliased_Components", Flag135 (Id)); W ("Has_Alignment_Clause", Flag46 (Id)); W ("Has_All_Calls_Remote", Flag79 (Id)); - W ("Has_Anonymous_Master", Flag253 (Id)); W ("Has_Atomic_Components", Flag86 (Id)); W ("Has_Biased_Representation", Flag139 (Id)); W ("Has_Completion", Flag26 (Id)); @@ -10121,6 +10119,12 @@ package body Einfo is procedure Write_Field36_Name (Id : Entity_Id) is begin case Ekind (Id) is + when E_Function | + E_Operator | + E_Package | + E_Procedure => + Write_Str ("Anonymous_Master"); + when others => Write_Str ("Field36??"); end case; |