aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-nodes_meta.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2020-09-26 08:13:09 +0200
committerTristan Gingold <tgingold@free.fr>2020-09-26 08:13:09 +0200
commit8269262a63906c16f4fc2fd3c17fc91216eb7f09 (patch)
tree6d0bb3c3e1488510ba00bf7df81c35825a216e2e /src/vhdl/vhdl-nodes_meta.adb
parent73d2b4ce553340c576a85c8d3d9461ddfd95ea0f (diff)
downloadghdl-8269262a63906c16f4fc2fd3c17fc91216eb7f09.tar.gz
ghdl-8269262a63906c16f4fc2fd3c17fc91216eb7f09.tar.bz2
ghdl-8269262a63906c16f4fc2fd3c17fc91216eb7f09.zip
vhdl: analyze subprogram instantiations. WIP. For #1470
Diffstat (limited to 'src/vhdl/vhdl-nodes_meta.adb')
-rw-r--r--src/vhdl/vhdl-nodes_meta.adb418
1 files changed, 215 insertions, 203 deletions
diff --git a/src/vhdl/vhdl-nodes_meta.adb b/src/vhdl/vhdl-nodes_meta.adb
index d3627db87..e455c6840 100644
--- a/src/vhdl/vhdl-nodes_meta.adb
+++ b/src/vhdl/vhdl-nodes_meta.adb
@@ -3477,20 +3477,26 @@ package body Vhdl.Nodes_Meta is
Field_Subprogram_Specification,
Field_Callees_List,
-- Iir_Kind_Function_Instantiation_Declaration
+ Field_Instance_Source_File,
Field_Identifier,
Field_Subprogram_Hash,
+ Field_Visible_Flag,
Field_Parent,
Field_Return_Type,
Field_Chain,
Field_Interface_Declaration_Chain,
+ Field_Generic_Chain,
Field_Uninstantiated_Subprogram_Name,
Field_Generic_Map_Aspect_Chain,
-- Iir_Kind_Procedure_Instantiation_Declaration
+ Field_Instance_Source_File,
Field_Identifier,
Field_Subprogram_Hash,
+ Field_Visible_Flag,
Field_Parent,
Field_Chain,
Field_Interface_Declaration_Chain,
+ Field_Generic_Chain,
Field_Uninstantiated_Subprogram_Name,
Field_Generic_Map_Aspect_Chain,
-- Iir_Kind_Terminal_Declaration
@@ -5305,209 +5311,209 @@ package body Vhdl.Nodes_Meta is
Iir_Kind_Procedure_Declaration => 831,
Iir_Kind_Function_Body => 841,
Iir_Kind_Procedure_Body => 852,
- Iir_Kind_Function_Instantiation_Declaration => 860,
- Iir_Kind_Procedure_Instantiation_Declaration => 867,
- Iir_Kind_Terminal_Declaration => 876,
- Iir_Kind_Object_Alias_Declaration => 888,
- Iir_Kind_Free_Quantity_Declaration => 900,
- Iir_Kind_Spectrum_Quantity_Declaration => 913,
- Iir_Kind_Noise_Quantity_Declaration => 925,
- Iir_Kind_Across_Quantity_Declaration => 941,
- Iir_Kind_Through_Quantity_Declaration => 957,
- Iir_Kind_File_Declaration => 972,
- Iir_Kind_Guard_Signal_Declaration => 986,
- Iir_Kind_Signal_Declaration => 1003,
- Iir_Kind_Variable_Declaration => 1016,
- Iir_Kind_Constant_Declaration => 1030,
- Iir_Kind_Iterator_Declaration => 1042,
- Iir_Kind_Interface_Constant_Declaration => 1059,
- Iir_Kind_Interface_Variable_Declaration => 1075,
- Iir_Kind_Interface_Signal_Declaration => 1096,
- Iir_Kind_Interface_File_Declaration => 1112,
- Iir_Kind_Interface_Quantity_Declaration => 1128,
- Iir_Kind_Interface_Terminal_Declaration => 1140,
- Iir_Kind_Interface_Type_Declaration => 1151,
- Iir_Kind_Interface_Package_Declaration => 1164,
- Iir_Kind_Interface_Function_Declaration => 1182,
- Iir_Kind_Interface_Procedure_Declaration => 1196,
- Iir_Kind_Anonymous_Signal_Declaration => 1205,
- Iir_Kind_Signal_Attribute_Declaration => 1208,
- Iir_Kind_Identity_Operator => 1212,
- Iir_Kind_Negation_Operator => 1216,
- Iir_Kind_Absolute_Operator => 1220,
- Iir_Kind_Not_Operator => 1224,
- Iir_Kind_Implicit_Condition_Operator => 1228,
- Iir_Kind_Condition_Operator => 1232,
- Iir_Kind_Reduction_And_Operator => 1236,
- Iir_Kind_Reduction_Or_Operator => 1240,
- Iir_Kind_Reduction_Nand_Operator => 1244,
- Iir_Kind_Reduction_Nor_Operator => 1248,
- Iir_Kind_Reduction_Xor_Operator => 1252,
- Iir_Kind_Reduction_Xnor_Operator => 1256,
- Iir_Kind_And_Operator => 1261,
- Iir_Kind_Or_Operator => 1266,
- Iir_Kind_Nand_Operator => 1271,
- Iir_Kind_Nor_Operator => 1276,
- Iir_Kind_Xor_Operator => 1281,
- Iir_Kind_Xnor_Operator => 1286,
- Iir_Kind_Equality_Operator => 1291,
- Iir_Kind_Inequality_Operator => 1296,
- Iir_Kind_Less_Than_Operator => 1301,
- Iir_Kind_Less_Than_Or_Equal_Operator => 1306,
- Iir_Kind_Greater_Than_Operator => 1311,
- Iir_Kind_Greater_Than_Or_Equal_Operator => 1316,
- Iir_Kind_Match_Equality_Operator => 1321,
- Iir_Kind_Match_Inequality_Operator => 1326,
- Iir_Kind_Match_Less_Than_Operator => 1331,
- Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1336,
- Iir_Kind_Match_Greater_Than_Operator => 1341,
- Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1346,
- Iir_Kind_Sll_Operator => 1351,
- Iir_Kind_Sla_Operator => 1356,
- Iir_Kind_Srl_Operator => 1361,
- Iir_Kind_Sra_Operator => 1366,
- Iir_Kind_Rol_Operator => 1371,
- Iir_Kind_Ror_Operator => 1376,
- Iir_Kind_Addition_Operator => 1381,
- Iir_Kind_Substraction_Operator => 1386,
- Iir_Kind_Concatenation_Operator => 1391,
- Iir_Kind_Multiplication_Operator => 1396,
- Iir_Kind_Division_Operator => 1401,
- Iir_Kind_Modulus_Operator => 1406,
- Iir_Kind_Remainder_Operator => 1411,
- Iir_Kind_Exponentiation_Operator => 1416,
- Iir_Kind_Function_Call => 1424,
- Iir_Kind_Aggregate => 1431,
- Iir_Kind_Parenthesis_Expression => 1434,
- Iir_Kind_Qualified_Expression => 1438,
- Iir_Kind_Type_Conversion => 1443,
- Iir_Kind_Allocator_By_Expression => 1448,
- Iir_Kind_Allocator_By_Subtype => 1454,
- Iir_Kind_Selected_Element => 1462,
- Iir_Kind_Dereference => 1467,
- Iir_Kind_Implicit_Dereference => 1472,
- Iir_Kind_Slice_Name => 1479,
- Iir_Kind_Indexed_Name => 1485,
- Iir_Kind_Psl_Prev => 1491,
- Iir_Kind_Psl_Stable => 1496,
- Iir_Kind_Psl_Rose => 1501,
- Iir_Kind_Psl_Fell => 1506,
- Iir_Kind_Psl_Expression => 1508,
- Iir_Kind_Sensitized_Process_Statement => 1529,
- Iir_Kind_Process_Statement => 1549,
- Iir_Kind_Concurrent_Simple_Signal_Assignment => 1562,
- Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1575,
- Iir_Kind_Concurrent_Selected_Signal_Assignment => 1589,
- Iir_Kind_Concurrent_Assertion_Statement => 1597,
- Iir_Kind_Concurrent_Procedure_Call_Statement => 1604,
- Iir_Kind_Concurrent_Break_Statement => 1612,
- Iir_Kind_Psl_Assert_Directive => 1625,
- Iir_Kind_Psl_Assume_Directive => 1636,
- Iir_Kind_Psl_Cover_Directive => 1648,
- Iir_Kind_Psl_Restrict_Directive => 1659,
- Iir_Kind_Block_Statement => 1673,
- Iir_Kind_If_Generate_Statement => 1684,
- Iir_Kind_Case_Generate_Statement => 1693,
- Iir_Kind_For_Generate_Statement => 1702,
- Iir_Kind_Component_Instantiation_Statement => 1713,
- Iir_Kind_Psl_Default_Clock => 1717,
- Iir_Kind_Generate_Statement_Body => 1728,
- Iir_Kind_If_Generate_Else_Clause => 1734,
- Iir_Kind_Simple_Simultaneous_Statement => 1741,
- Iir_Kind_Simultaneous_Null_Statement => 1745,
- Iir_Kind_Simultaneous_Procedural_Statement => 1756,
- Iir_Kind_Simultaneous_Case_Statement => 1765,
- Iir_Kind_Simultaneous_If_Statement => 1774,
- Iir_Kind_Simultaneous_Elsif => 1780,
- Iir_Kind_Simple_Signal_Assignment_Statement => 1791,
- Iir_Kind_Conditional_Signal_Assignment_Statement => 1802,
- Iir_Kind_Selected_Waveform_Assignment_Statement => 1814,
- Iir_Kind_Signal_Force_Assignment_Statement => 1824,
- Iir_Kind_Signal_Release_Assignment_Statement => 1833,
- Iir_Kind_Null_Statement => 1837,
- Iir_Kind_Assertion_Statement => 1844,
- Iir_Kind_Report_Statement => 1850,
- Iir_Kind_Wait_Statement => 1858,
- Iir_Kind_Variable_Assignment_Statement => 1865,
- Iir_Kind_Conditional_Variable_Assignment_Statement => 1872,
- Iir_Kind_Return_Statement => 1878,
- Iir_Kind_For_Loop_Statement => 1889,
- Iir_Kind_While_Loop_Statement => 1900,
- Iir_Kind_Next_Statement => 1907,
- Iir_Kind_Exit_Statement => 1914,
- Iir_Kind_Case_Statement => 1922,
- Iir_Kind_Procedure_Call_Statement => 1928,
- Iir_Kind_Break_Statement => 1935,
- Iir_Kind_If_Statement => 1945,
- Iir_Kind_Elsif => 1951,
- Iir_Kind_Character_Literal => 1959,
- Iir_Kind_Simple_Name => 1967,
- Iir_Kind_Selected_Name => 1976,
- Iir_Kind_Operator_Symbol => 1982,
- Iir_Kind_Reference_Name => 1987,
- Iir_Kind_External_Constant_Name => 1996,
- Iir_Kind_External_Signal_Name => 2005,
- Iir_Kind_External_Variable_Name => 2015,
- Iir_Kind_Selected_By_All_Name => 2021,
- Iir_Kind_Parenthesis_Name => 2026,
- Iir_Kind_Package_Pathname => 2030,
- Iir_Kind_Absolute_Pathname => 2031,
- Iir_Kind_Relative_Pathname => 2032,
- Iir_Kind_Pathname_Element => 2037,
- Iir_Kind_Base_Attribute => 2039,
- Iir_Kind_Subtype_Attribute => 2044,
- Iir_Kind_Element_Attribute => 2049,
- Iir_Kind_Across_Attribute => 2054,
- Iir_Kind_Through_Attribute => 2059,
- Iir_Kind_Nature_Reference_Attribute => 2063,
- Iir_Kind_Left_Type_Attribute => 2068,
- Iir_Kind_Right_Type_Attribute => 2073,
- Iir_Kind_High_Type_Attribute => 2078,
- Iir_Kind_Low_Type_Attribute => 2083,
- Iir_Kind_Ascending_Type_Attribute => 2088,
- Iir_Kind_Image_Attribute => 2094,
- Iir_Kind_Value_Attribute => 2100,
- Iir_Kind_Pos_Attribute => 2106,
- Iir_Kind_Val_Attribute => 2112,
- Iir_Kind_Succ_Attribute => 2118,
- Iir_Kind_Pred_Attribute => 2124,
- Iir_Kind_Leftof_Attribute => 2130,
- Iir_Kind_Rightof_Attribute => 2136,
- Iir_Kind_Signal_Slew_Attribute => 2144,
- Iir_Kind_Quantity_Slew_Attribute => 2152,
- Iir_Kind_Ramp_Attribute => 2160,
- Iir_Kind_Zoh_Attribute => 2168,
- Iir_Kind_Ltf_Attribute => 2176,
- Iir_Kind_Ztf_Attribute => 2186,
- Iir_Kind_Dot_Attribute => 2193,
- Iir_Kind_Integ_Attribute => 2200,
- Iir_Kind_Above_Attribute => 2208,
- Iir_Kind_Quantity_Delayed_Attribute => 2216,
- Iir_Kind_Delayed_Attribute => 2225,
- Iir_Kind_Stable_Attribute => 2234,
- Iir_Kind_Quiet_Attribute => 2243,
- Iir_Kind_Transaction_Attribute => 2252,
- Iir_Kind_Event_Attribute => 2256,
- Iir_Kind_Active_Attribute => 2260,
- Iir_Kind_Last_Event_Attribute => 2264,
- Iir_Kind_Last_Active_Attribute => 2268,
- Iir_Kind_Last_Value_Attribute => 2272,
- Iir_Kind_Driving_Attribute => 2276,
- Iir_Kind_Driving_Value_Attribute => 2280,
- Iir_Kind_Behavior_Attribute => 2280,
- Iir_Kind_Structure_Attribute => 2280,
- Iir_Kind_Simple_Name_Attribute => 2287,
- Iir_Kind_Instance_Name_Attribute => 2292,
- Iir_Kind_Path_Name_Attribute => 2297,
- Iir_Kind_Left_Array_Attribute => 2304,
- Iir_Kind_Right_Array_Attribute => 2311,
- Iir_Kind_High_Array_Attribute => 2318,
- Iir_Kind_Low_Array_Attribute => 2325,
- Iir_Kind_Length_Array_Attribute => 2332,
- Iir_Kind_Ascending_Array_Attribute => 2339,
- Iir_Kind_Range_Array_Attribute => 2346,
- Iir_Kind_Reverse_Range_Array_Attribute => 2353,
- Iir_Kind_Attribute_Name => 2362
+ Iir_Kind_Function_Instantiation_Declaration => 863,
+ Iir_Kind_Procedure_Instantiation_Declaration => 873,
+ Iir_Kind_Terminal_Declaration => 882,
+ Iir_Kind_Object_Alias_Declaration => 894,
+ Iir_Kind_Free_Quantity_Declaration => 906,
+ Iir_Kind_Spectrum_Quantity_Declaration => 919,
+ Iir_Kind_Noise_Quantity_Declaration => 931,
+ Iir_Kind_Across_Quantity_Declaration => 947,
+ Iir_Kind_Through_Quantity_Declaration => 963,
+ Iir_Kind_File_Declaration => 978,
+ Iir_Kind_Guard_Signal_Declaration => 992,
+ Iir_Kind_Signal_Declaration => 1009,
+ Iir_Kind_Variable_Declaration => 1022,
+ Iir_Kind_Constant_Declaration => 1036,
+ Iir_Kind_Iterator_Declaration => 1048,
+ Iir_Kind_Interface_Constant_Declaration => 1065,
+ Iir_Kind_Interface_Variable_Declaration => 1081,
+ Iir_Kind_Interface_Signal_Declaration => 1102,
+ Iir_Kind_Interface_File_Declaration => 1118,
+ Iir_Kind_Interface_Quantity_Declaration => 1134,
+ Iir_Kind_Interface_Terminal_Declaration => 1146,
+ Iir_Kind_Interface_Type_Declaration => 1157,
+ Iir_Kind_Interface_Package_Declaration => 1170,
+ Iir_Kind_Interface_Function_Declaration => 1188,
+ Iir_Kind_Interface_Procedure_Declaration => 1202,
+ Iir_Kind_Anonymous_Signal_Declaration => 1211,
+ Iir_Kind_Signal_Attribute_Declaration => 1214,
+ Iir_Kind_Identity_Operator => 1218,
+ Iir_Kind_Negation_Operator => 1222,
+ Iir_Kind_Absolute_Operator => 1226,
+ Iir_Kind_Not_Operator => 1230,
+ Iir_Kind_Implicit_Condition_Operator => 1234,
+ Iir_Kind_Condition_Operator => 1238,
+ Iir_Kind_Reduction_And_Operator => 1242,
+ Iir_Kind_Reduction_Or_Operator => 1246,
+ Iir_Kind_Reduction_Nand_Operator => 1250,
+ Iir_Kind_Reduction_Nor_Operator => 1254,
+ Iir_Kind_Reduction_Xor_Operator => 1258,
+ Iir_Kind_Reduction_Xnor_Operator => 1262,
+ Iir_Kind_And_Operator => 1267,
+ Iir_Kind_Or_Operator => 1272,
+ Iir_Kind_Nand_Operator => 1277,
+ Iir_Kind_Nor_Operator => 1282,
+ Iir_Kind_Xor_Operator => 1287,
+ Iir_Kind_Xnor_Operator => 1292,
+ Iir_Kind_Equality_Operator => 1297,
+ Iir_Kind_Inequality_Operator => 1302,
+ Iir_Kind_Less_Than_Operator => 1307,
+ Iir_Kind_Less_Than_Or_Equal_Operator => 1312,
+ Iir_Kind_Greater_Than_Operator => 1317,
+ Iir_Kind_Greater_Than_Or_Equal_Operator => 1322,
+ Iir_Kind_Match_Equality_Operator => 1327,
+ Iir_Kind_Match_Inequality_Operator => 1332,
+ Iir_Kind_Match_Less_Than_Operator => 1337,
+ Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1342,
+ Iir_Kind_Match_Greater_Than_Operator => 1347,
+ Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1352,
+ Iir_Kind_Sll_Operator => 1357,
+ Iir_Kind_Sla_Operator => 1362,
+ Iir_Kind_Srl_Operator => 1367,
+ Iir_Kind_Sra_Operator => 1372,
+ Iir_Kind_Rol_Operator => 1377,
+ Iir_Kind_Ror_Operator => 1382,
+ Iir_Kind_Addition_Operator => 1387,
+ Iir_Kind_Substraction_Operator => 1392,
+ Iir_Kind_Concatenation_Operator => 1397,
+ Iir_Kind_Multiplication_Operator => 1402,
+ Iir_Kind_Division_Operator => 1407,
+ Iir_Kind_Modulus_Operator => 1412,
+ Iir_Kind_Remainder_Operator => 1417,
+ Iir_Kind_Exponentiation_Operator => 1422,
+ Iir_Kind_Function_Call => 1430,
+ Iir_Kind_Aggregate => 1437,
+ Iir_Kind_Parenthesis_Expression => 1440,
+ Iir_Kind_Qualified_Expression => 1444,
+ Iir_Kind_Type_Conversion => 1449,
+ Iir_Kind_Allocator_By_Expression => 1454,
+ Iir_Kind_Allocator_By_Subtype => 1460,
+ Iir_Kind_Selected_Element => 1468,
+ Iir_Kind_Dereference => 1473,
+ Iir_Kind_Implicit_Dereference => 1478,
+ Iir_Kind_Slice_Name => 1485,
+ Iir_Kind_Indexed_Name => 1491,
+ Iir_Kind_Psl_Prev => 1497,
+ Iir_Kind_Psl_Stable => 1502,
+ Iir_Kind_Psl_Rose => 1507,
+ Iir_Kind_Psl_Fell => 1512,
+ Iir_Kind_Psl_Expression => 1514,
+ Iir_Kind_Sensitized_Process_Statement => 1535,
+ Iir_Kind_Process_Statement => 1555,
+ Iir_Kind_Concurrent_Simple_Signal_Assignment => 1568,
+ Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1581,
+ Iir_Kind_Concurrent_Selected_Signal_Assignment => 1595,
+ Iir_Kind_Concurrent_Assertion_Statement => 1603,
+ Iir_Kind_Concurrent_Procedure_Call_Statement => 1610,
+ Iir_Kind_Concurrent_Break_Statement => 1618,
+ Iir_Kind_Psl_Assert_Directive => 1631,
+ Iir_Kind_Psl_Assume_Directive => 1642,
+ Iir_Kind_Psl_Cover_Directive => 1654,
+ Iir_Kind_Psl_Restrict_Directive => 1665,
+ Iir_Kind_Block_Statement => 1679,
+ Iir_Kind_If_Generate_Statement => 1690,
+ Iir_Kind_Case_Generate_Statement => 1699,
+ Iir_Kind_For_Generate_Statement => 1708,
+ Iir_Kind_Component_Instantiation_Statement => 1719,
+ Iir_Kind_Psl_Default_Clock => 1723,
+ Iir_Kind_Generate_Statement_Body => 1734,
+ Iir_Kind_If_Generate_Else_Clause => 1740,
+ Iir_Kind_Simple_Simultaneous_Statement => 1747,
+ Iir_Kind_Simultaneous_Null_Statement => 1751,
+ Iir_Kind_Simultaneous_Procedural_Statement => 1762,
+ Iir_Kind_Simultaneous_Case_Statement => 1771,
+ Iir_Kind_Simultaneous_If_Statement => 1780,
+ Iir_Kind_Simultaneous_Elsif => 1786,
+ Iir_Kind_Simple_Signal_Assignment_Statement => 1797,
+ Iir_Kind_Conditional_Signal_Assignment_Statement => 1808,
+ Iir_Kind_Selected_Waveform_Assignment_Statement => 1820,
+ Iir_Kind_Signal_Force_Assignment_Statement => 1830,
+ Iir_Kind_Signal_Release_Assignment_Statement => 1839,
+ Iir_Kind_Null_Statement => 1843,
+ Iir_Kind_Assertion_Statement => 1850,
+ Iir_Kind_Report_Statement => 1856,
+ Iir_Kind_Wait_Statement => 1864,
+ Iir_Kind_Variable_Assignment_Statement => 1871,
+ Iir_Kind_Conditional_Variable_Assignment_Statement => 1878,
+ Iir_Kind_Return_Statement => 1884,
+ Iir_Kind_For_Loop_Statement => 1895,
+ Iir_Kind_While_Loop_Statement => 1906,
+ Iir_Kind_Next_Statement => 1913,
+ Iir_Kind_Exit_Statement => 1920,
+ Iir_Kind_Case_Statement => 1928,
+ Iir_Kind_Procedure_Call_Statement => 1934,
+ Iir_Kind_Break_Statement => 1941,
+ Iir_Kind_If_Statement => 1951,
+ Iir_Kind_Elsif => 1957,
+ Iir_Kind_Character_Literal => 1965,
+ Iir_Kind_Simple_Name => 1973,
+ Iir_Kind_Selected_Name => 1982,
+ Iir_Kind_Operator_Symbol => 1988,
+ Iir_Kind_Reference_Name => 1993,
+ Iir_Kind_External_Constant_Name => 2002,
+ Iir_Kind_External_Signal_Name => 2011,
+ Iir_Kind_External_Variable_Name => 2021,
+ Iir_Kind_Selected_By_All_Name => 2027,
+ Iir_Kind_Parenthesis_Name => 2032,
+ Iir_Kind_Package_Pathname => 2036,
+ Iir_Kind_Absolute_Pathname => 2037,
+ Iir_Kind_Relative_Pathname => 2038,
+ Iir_Kind_Pathname_Element => 2043,
+ Iir_Kind_Base_Attribute => 2045,
+ Iir_Kind_Subtype_Attribute => 2050,
+ Iir_Kind_Element_Attribute => 2055,
+ Iir_Kind_Across_Attribute => 2060,
+ Iir_Kind_Through_Attribute => 2065,
+ Iir_Kind_Nature_Reference_Attribute => 2069,
+ Iir_Kind_Left_Type_Attribute => 2074,
+ Iir_Kind_Right_Type_Attribute => 2079,
+ Iir_Kind_High_Type_Attribute => 2084,
+ Iir_Kind_Low_Type_Attribute => 2089,
+ Iir_Kind_Ascending_Type_Attribute => 2094,
+ Iir_Kind_Image_Attribute => 2100,
+ Iir_Kind_Value_Attribute => 2106,
+ Iir_Kind_Pos_Attribute => 2112,
+ Iir_Kind_Val_Attribute => 2118,
+ Iir_Kind_Succ_Attribute => 2124,
+ Iir_Kind_Pred_Attribute => 2130,
+ Iir_Kind_Leftof_Attribute => 2136,
+ Iir_Kind_Rightof_Attribute => 2142,
+ Iir_Kind_Signal_Slew_Attribute => 2150,
+ Iir_Kind_Quantity_Slew_Attribute => 2158,
+ Iir_Kind_Ramp_Attribute => 2166,
+ Iir_Kind_Zoh_Attribute => 2174,
+ Iir_Kind_Ltf_Attribute => 2182,
+ Iir_Kind_Ztf_Attribute => 2192,
+ Iir_Kind_Dot_Attribute => 2199,
+ Iir_Kind_Integ_Attribute => 2206,
+ Iir_Kind_Above_Attribute => 2214,
+ Iir_Kind_Quantity_Delayed_Attribute => 2222,
+ Iir_Kind_Delayed_Attribute => 2231,
+ Iir_Kind_Stable_Attribute => 2240,
+ Iir_Kind_Quiet_Attribute => 2249,
+ Iir_Kind_Transaction_Attribute => 2258,
+ Iir_Kind_Event_Attribute => 2262,
+ Iir_Kind_Active_Attribute => 2266,
+ Iir_Kind_Last_Event_Attribute => 2270,
+ Iir_Kind_Last_Active_Attribute => 2274,
+ Iir_Kind_Last_Value_Attribute => 2278,
+ Iir_Kind_Driving_Attribute => 2282,
+ Iir_Kind_Driving_Value_Attribute => 2286,
+ Iir_Kind_Behavior_Attribute => 2286,
+ Iir_Kind_Structure_Attribute => 2286,
+ Iir_Kind_Simple_Name_Attribute => 2293,
+ Iir_Kind_Instance_Name_Attribute => 2298,
+ Iir_Kind_Path_Name_Attribute => 2303,
+ Iir_Kind_Left_Array_Attribute => 2310,
+ Iir_Kind_Right_Array_Attribute => 2317,
+ Iir_Kind_High_Array_Attribute => 2324,
+ Iir_Kind_Low_Array_Attribute => 2331,
+ Iir_Kind_Length_Array_Attribute => 2338,
+ Iir_Kind_Ascending_Array_Attribute => 2345,
+ Iir_Kind_Range_Array_Attribute => 2352,
+ Iir_Kind_Reverse_Range_Array_Attribute => 2359,
+ Iir_Kind_Attribute_Name => 2368
);
function Get_Fields_First (K : Iir_Kind) return Fields_Index is
@@ -8534,6 +8540,8 @@ package body Vhdl.Nodes_Meta is
| Iir_Kind_Component_Declaration
| Iir_Kind_Function_Declaration
| Iir_Kind_Procedure_Declaration
+ | Iir_Kind_Function_Instantiation_Declaration
+ | Iir_Kind_Procedure_Instantiation_Declaration
| Iir_Kind_Interface_Package_Declaration =>
return True;
when others =>
@@ -9493,6 +9501,8 @@ package body Vhdl.Nodes_Meta is
| Iir_Kind_Enumeration_Literal
| Iir_Kind_Function_Declaration
| Iir_Kind_Procedure_Declaration
+ | Iir_Kind_Function_Instantiation_Declaration
+ | Iir_Kind_Procedure_Instantiation_Declaration
| Iir_Kind_Terminal_Declaration
| Iir_Kind_Object_Alias_Declaration
| Iir_Kind_Free_Quantity_Declaration
@@ -10687,6 +10697,8 @@ package body Vhdl.Nodes_Meta is
begin
case K is
when Iir_Kind_Package_Instantiation_Declaration
+ | Iir_Kind_Function_Instantiation_Declaration
+ | Iir_Kind_Procedure_Instantiation_Declaration
| Iir_Kind_Interface_Package_Declaration =>
return True;
when others =>