mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-13 18:59:44 +08:00
(Nkind_In): New functions.
Add support for new flags. From-SVN: r130887
This commit is contained in:
parent
c5765b24ca
commit
14b7d74b58
@ -491,18 +491,6 @@ package Atree is
|
||||
-- entity ID values of the two entities are interchanged. Neither of the
|
||||
-- two entities may be list members.
|
||||
|
||||
procedure Delete_Node (Node : Node_Id);
|
||||
-- The node, which must not be a list member, is deleted from the tree and
|
||||
-- its type is set to N_Unused_At_End. It is an error (not necessarily
|
||||
-- detected) to reference this node after it has been deleted. The
|
||||
-- implementation of the body of Atree is free to reuse the node to
|
||||
-- satisfy future node allocation requests, but is not required to do so.
|
||||
|
||||
procedure Delete_Tree (Node : Node_Id);
|
||||
-- The entire syntactic subtree referenced by Node (i.e. the given node
|
||||
-- and all its syntactic descendents) are deleted as described above for
|
||||
-- Delete_Node.
|
||||
|
||||
function Extend_Node (Node : Node_Id) return Entity_Id;
|
||||
-- This function returns a copy of its input node with an extension
|
||||
-- added. The fields of the extension are set to Empty. Due to the way
|
||||
@ -593,6 +581,68 @@ package Atree is
|
||||
-- Tests given Id for inequality with the Empty node. This allows notations
|
||||
-- like "if Present (Statement)" as opposed to "if Statement /= Empty".
|
||||
|
||||
-- Node_Kind tests, like the functions in Sinfo, but the first argument is
|
||||
-- a Node_Id, and the tested field is Nkind (N).
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind;
|
||||
V4 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind;
|
||||
V4 : Node_Kind;
|
||||
V5 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind;
|
||||
V4 : Node_Kind;
|
||||
V5 : Node_Kind;
|
||||
V6 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind;
|
||||
V4 : Node_Kind;
|
||||
V5 : Node_Kind;
|
||||
V6 : Node_Kind;
|
||||
V7 : Node_Kind) return Boolean;
|
||||
|
||||
function Nkind_In
|
||||
(N : Node_Id;
|
||||
V1 : Node_Kind;
|
||||
V2 : Node_Kind;
|
||||
V3 : Node_Kind;
|
||||
V4 : Node_Kind;
|
||||
V5 : Node_Kind;
|
||||
V6 : Node_Kind;
|
||||
V7 : Node_Kind;
|
||||
V8 : Node_Kind) return Boolean;
|
||||
|
||||
pragma Inline (Nkind_In);
|
||||
-- Inline all above functions
|
||||
|
||||
-----------------------------
|
||||
-- Entity Access Functions --
|
||||
-----------------------------
|
||||
@ -644,12 +694,15 @@ package Atree is
|
||||
-- The following procedures apply only to Entity_Id values, i.e.
|
||||
-- to extended nodes.
|
||||
|
||||
procedure Basic_Set_Convention (E : Entity_Id; Val : Convention_Id);
|
||||
pragma Inline (Basic_Set_Convention);
|
||||
-- Clients should use Sem_Util.Set_Convention rather than calling this
|
||||
-- routine directly, as Set_Convention also deals with the special
|
||||
-- processing required for access types.
|
||||
|
||||
procedure Set_Ekind (E : Entity_Id; Val : Entity_Kind);
|
||||
pragma Inline (Set_Ekind);
|
||||
|
||||
procedure Set_Convention (E : Entity_Id; Val : Convention_Id);
|
||||
pragma Inline (Set_Convention);
|
||||
|
||||
---------------------------
|
||||
-- Tree Rewrite Routines --
|
||||
---------------------------
|
||||
@ -759,11 +812,10 @@ package Atree is
|
||||
-- Generic Field Access Routines --
|
||||
-----------------------------------
|
||||
|
||||
-- This subpackage provides the functions for accessing and procedures
|
||||
-- for setting fields that are normally referenced by their logical
|
||||
-- synonyms defined in packages Sinfo and Einfo. As previously
|
||||
-- described the implementations of these packages use the package
|
||||
-- Atree.Unchecked_Access.
|
||||
-- This subpackage provides the functions for accessing and procedures for
|
||||
-- setting fields that are normally referenced by their logical synonyms
|
||||
-- defined in packages Sinfo and Einfo. The implementations of these
|
||||
-- packages use the package Atree.Unchecked_Access.
|
||||
|
||||
package Unchecked_Access is
|
||||
|
||||
@ -1753,6 +1805,57 @@ package Atree is
|
||||
function Flag230 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag230);
|
||||
|
||||
function Flag231 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag231);
|
||||
|
||||
function Flag232 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag232);
|
||||
|
||||
function Flag233 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag233);
|
||||
|
||||
function Flag234 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag234);
|
||||
|
||||
function Flag235 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag235);
|
||||
|
||||
function Flag236 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag236);
|
||||
|
||||
function Flag237 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag237);
|
||||
|
||||
function Flag238 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag238);
|
||||
|
||||
function Flag239 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag239);
|
||||
|
||||
function Flag240 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag240);
|
||||
|
||||
function Flag241 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag241);
|
||||
|
||||
function Flag242 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag242);
|
||||
|
||||
function Flag243 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag243);
|
||||
|
||||
function Flag244 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag244);
|
||||
|
||||
function Flag245 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag245);
|
||||
|
||||
function Flag246 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag246);
|
||||
|
||||
function Flag247 (N : Node_Id) return Boolean;
|
||||
pragma Inline (Flag247);
|
||||
|
||||
-- Procedures to set value of indicated field
|
||||
|
||||
procedure Set_Nkind (N : Node_Id; Val : Node_Kind);
|
||||
@ -2727,6 +2830,57 @@ package Atree is
|
||||
procedure Set_Flag230 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag230);
|
||||
|
||||
procedure Set_Flag231 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag231);
|
||||
|
||||
procedure Set_Flag232 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag232);
|
||||
|
||||
procedure Set_Flag233 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag233);
|
||||
|
||||
procedure Set_Flag234 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag234);
|
||||
|
||||
procedure Set_Flag235 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag235);
|
||||
|
||||
procedure Set_Flag236 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag236);
|
||||
|
||||
procedure Set_Flag237 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag237);
|
||||
|
||||
procedure Set_Flag238 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag238);
|
||||
|
||||
procedure Set_Flag239 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag239);
|
||||
|
||||
procedure Set_Flag240 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag240);
|
||||
|
||||
procedure Set_Flag241 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag241);
|
||||
|
||||
procedure Set_Flag242 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag242);
|
||||
|
||||
procedure Set_Flag243 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag243);
|
||||
|
||||
procedure Set_Flag244 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag244);
|
||||
|
||||
procedure Set_Flag245 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag245);
|
||||
|
||||
procedure Set_Flag246 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag246);
|
||||
|
||||
procedure Set_Flag247 (N : Node_Id; Val : Boolean);
|
||||
pragma Inline (Set_Flag247);
|
||||
|
||||
-- The following versions of Set_Noden also set the parent
|
||||
-- pointer of the referenced node if it is non_Empty
|
||||
|
||||
@ -2943,7 +3097,7 @@ package Atree is
|
||||
|
||||
-- Field6-10 Holds Field24-Field28
|
||||
-- Field11 Holds Flag184-Flag215
|
||||
-- Field12 Holds Flag216-Flag230
|
||||
-- Field12 Holds Flag216-Flag247
|
||||
|
||||
end case;
|
||||
end record;
|
||||
|
Loading…
Reference in New Issue
Block a user