From a6a74017fd6b467627f23ff733218af1062d139f Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Mon, 30 Dec 2019 06:28:26 +0100 Subject: ams-vhdl: check nature for record natures and terminals. --- src/vhdl/vhdl-nodes.adb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/vhdl/vhdl-nodes.adb') 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); -- cgit v1.2.3