aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-nodes.adb
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.adb
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.adb')
-rw-r--r--src/vhdl/vhdl-nodes.adb16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-nodes.adb b/src/vhdl/vhdl-nodes.adb
index 84b56c4f7..7d62b2104 100644
--- a/src/vhdl/vhdl-nodes.adb
+++ b/src/vhdl/vhdl-nodes.adb
@@ -3761,6 +3761,22 @@ package body Vhdl.Nodes is
Set_Field4 (Decl, Base_Type);
end Set_Base_Type;
+ function Get_Simple_Nature (Def : Iir) return Iir is
+ begin
+ pragma Assert (Def /= Null_Iir);
+ pragma Assert (Has_Simple_Nature (Get_Kind (Def)),
+ "no field Simple_Nature");
+ return Get_Field7 (Def);
+ end Get_Simple_Nature;
+
+ procedure Set_Simple_Nature (Def : Iir; Nature : Iir) is
+ begin
+ pragma Assert (Def /= Null_Iir);
+ pragma Assert (Has_Simple_Nature (Get_Kind (Def)),
+ "no field Simple_Nature");
+ Set_Field7 (Def, Nature);
+ end Set_Simple_Nature;
+
function Get_Base_Nature (Decl : Iir) return Iir is
begin
pragma Assert (Decl /= Null_Iir);