From 1fe5958609b57e7d134e0cc75713c530339a86dd Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Sat, 14 Jan 2023 18:48:54 +0100 Subject: vhdl: add Get/Set_Elaboration_Flag --- src/vhdl/vhdl-nodes.ads | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/vhdl/vhdl-nodes.ads') diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads index 6c7e8f8c8..a1efaf81f 100644 --- a/src/vhdl/vhdl-nodes.ads +++ b/src/vhdl/vhdl-nodes.ads @@ -1652,6 +1652,10 @@ package Vhdl.Nodes is -- -- Get/Set_Use_Flag (Flag6) -- + -- Immediately set on predefined operators, set at then end of the package, + -- also set when the body is analyzed. + -- Get/Set_Elaborated_Flag (Flag7) + -- -- Only for Iir_Kind_Function_Declaration: -- Get/Set_Resolution_Function_Flag (Flag13) -- @@ -1961,6 +1965,10 @@ package Vhdl.Nodes is -- -- Get/Set_Use_Flag (Flag6) -- + -- Set if not deferred, at end of the package. + -- Only for Iir_Kind_Constant_Declaration: + -- Get/Set_Elaborated_Flag (Flag7) + -- -- Get/Set_Is_Ref (Flag12) -- -- Get/Set_Expr_Staticness (State1) @@ -2776,6 +2784,9 @@ package Vhdl.Nodes is -- -- Get/Set_Signal_Type_Flag (Flag2) -- + -- Set at end of the package or when the body is analyzed. + -- Get/Set_Elaborated_Flag (Flag7) + -- -- Get/Set_End_Has_Reserved_Id (Flag8) -- -- Get/Set_End_Has_Identifier (Flag9) @@ -9481,6 +9492,12 @@ package Vhdl.Nodes is function Get_Use_Flag (Decl : Iir) return Boolean; procedure Set_Use_Flag (Decl : Iir; Val : Boolean); + -- For a subprogram declaration, constant declaration or protected type. + -- Set when it could be used because fully elaborated. + -- Field: Flag7 + function Get_Elaborated_Flag (Decl : Iir) return Boolean; + procedure Set_Elaborated_Flag (Decl : Iir; Val : Boolean); + -- Layout flag: true if 'end' is followed by the reserved identifier. -- Field: Flag8 function Get_End_Has_Reserved_Id (Decl : Iir) return Boolean; -- cgit v1.2.3