aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-nodes.ads
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-12-30 06:28:26 +0100
committerTristan Gingold <tgingold@free.fr>2019-12-30 06:28:26 +0100
commita6a74017fd6b467627f23ff733218af1062d139f (patch)
tree70facbde8de4dab2ff32d5f626ca51f15198f4bf /src/vhdl/vhdl-nodes.ads
parent2d835b7e171093b894aae52f54e1b3cfd373a5fe (diff)
downloadghdl-a6a74017fd6b467627f23ff733218af1062d139f.tar.gz
ghdl-a6a74017fd6b467627f23ff733218af1062d139f.tar.bz2
ghdl-a6a74017fd6b467627f23ff733218af1062d139f.zip
ams-vhdl: check nature for record natures and terminals.
Diffstat (limited to 'src/vhdl/vhdl-nodes.ads')
-rw-r--r--src/vhdl/vhdl-nodes.ads16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads
index 4ea591e52..a2e2502eb 100644
--- a/src/vhdl/vhdl-nodes.ads
+++ b/src/vhdl/vhdl-nodes.ads
@@ -2969,6 +2969,8 @@ package Vhdl.Nodes is
--
-- Get/Set_Base_Nature (Field4)
--
+ -- Get/Set_Simple_Nature (Field7)
+ --
-- Get/Set_Nature_Staticness (State1)
--
-- Get/Set_Constraint_State (State2)
@@ -3043,6 +3045,8 @@ package Vhdl.Nodes is
--
-- Get/Set_Through_Type (Field12)
--
+ -- Get/Set_Simple_Nature (Field7)
+ --
-- Get/Set_Nature_Staticness (State1)
--
-- Get/Set_Constraint_State (State2)
@@ -3054,7 +3058,6 @@ package Vhdl.Nodes is
-- Always false for record type: elements are owned by this node.
-- Get/Set_Is_Ref (Flag12)
-
-- Iir_Kind_Nature_Element_Declaration (Short)
--
-- AMS-LRM17 5.8.3.3 Record natures
@@ -5896,6 +5899,12 @@ package Vhdl.Nodes is
Iir_Kind_Array_Subnature_Definition ..
Iir_Kind_Array_Subnature_Definition;
+ subtype Iir_Kinds_Nature_Indication is Iir_Kind range
+ Iir_Kind_Scalar_Nature_Definition ..
+ --Iir_Kind_Record_Nature_Definition
+ --Iir_Kind_Array_Nature_Definition
+ Iir_Kind_Array_Subnature_Definition;
+
subtype Iir_Kinds_Nonoverloadable_Declaration is Iir_Kind range
Iir_Kind_Type_Declaration ..
--Iir_Kind_Anonymous_Type_Declaration
@@ -7532,6 +7541,11 @@ package Vhdl.Nodes is
procedure Set_Base_Type (Decl : Iir; Base_Type : Iir);
pragma Inline (Get_Base_Type);
+ -- Only for composite base nature: the simple nature.
+ -- Field: Field7 Ref
+ function Get_Simple_Nature (Def : Iir) return Iir;
+ procedure Set_Simple_Nature (Def : Iir; Nature : Iir);
+
-- Field: Field4 Ref
function Get_Base_Nature (Decl : Iir) return Iir;
procedure Set_Base_Nature (Decl : Iir; Base_Nature : Iir);