diff options
Diffstat (limited to 'src/vhdl/vhdl-nodes_meta.adb')
-rw-r--r-- | src/vhdl/vhdl-nodes_meta.adb | 308 |
1 files changed, 156 insertions, 152 deletions
diff --git a/src/vhdl/vhdl-nodes_meta.adb b/src/vhdl/vhdl-nodes_meta.adb index 002b60cc0..9b3723c58 100644 --- a/src/vhdl/vhdl-nodes_meta.adb +++ b/src/vhdl/vhdl-nodes_meta.adb @@ -3344,6 +3344,7 @@ package body Vhdl.Nodes_Meta is Field_Identifier, Field_Is_Ref, Field_After_Drivers_Flag, + Field_Expr_Staticness, Field_Parent, Field_Chain, Field_Default_Value, @@ -4122,6 +4123,7 @@ package body Vhdl.Nodes_Meta is Field_Base_Name, -- Iir_Kind_Reference_Name Field_Is_Forward_Ref, + Field_Expr_Staticness, Field_Type, Field_Named_Entity, Field_Referenced_Name, @@ -4577,158 +4579,158 @@ package body Vhdl.Nodes_Meta is Iir_Kind_Interface_Package_Declaration => 969, Iir_Kind_Interface_Function_Declaration => 986, Iir_Kind_Interface_Procedure_Declaration => 999, - Iir_Kind_Anonymous_Signal_Declaration => 1007, - Iir_Kind_Signal_Attribute_Declaration => 1010, - Iir_Kind_Identity_Operator => 1014, - Iir_Kind_Negation_Operator => 1018, - Iir_Kind_Absolute_Operator => 1022, - Iir_Kind_Not_Operator => 1026, - Iir_Kind_Implicit_Condition_Operator => 1030, - Iir_Kind_Condition_Operator => 1034, - Iir_Kind_Reduction_And_Operator => 1038, - Iir_Kind_Reduction_Or_Operator => 1042, - Iir_Kind_Reduction_Nand_Operator => 1046, - Iir_Kind_Reduction_Nor_Operator => 1050, - Iir_Kind_Reduction_Xor_Operator => 1054, - Iir_Kind_Reduction_Xnor_Operator => 1058, - Iir_Kind_And_Operator => 1063, - Iir_Kind_Or_Operator => 1068, - Iir_Kind_Nand_Operator => 1073, - Iir_Kind_Nor_Operator => 1078, - Iir_Kind_Xor_Operator => 1083, - Iir_Kind_Xnor_Operator => 1088, - Iir_Kind_Equality_Operator => 1093, - Iir_Kind_Inequality_Operator => 1098, - Iir_Kind_Less_Than_Operator => 1103, - Iir_Kind_Less_Than_Or_Equal_Operator => 1108, - Iir_Kind_Greater_Than_Operator => 1113, - Iir_Kind_Greater_Than_Or_Equal_Operator => 1118, - Iir_Kind_Match_Equality_Operator => 1123, - Iir_Kind_Match_Inequality_Operator => 1128, - Iir_Kind_Match_Less_Than_Operator => 1133, - Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1138, - Iir_Kind_Match_Greater_Than_Operator => 1143, - Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1148, - Iir_Kind_Sll_Operator => 1153, - Iir_Kind_Sla_Operator => 1158, - Iir_Kind_Srl_Operator => 1163, - Iir_Kind_Sra_Operator => 1168, - Iir_Kind_Rol_Operator => 1173, - Iir_Kind_Ror_Operator => 1178, - Iir_Kind_Addition_Operator => 1183, - Iir_Kind_Substraction_Operator => 1188, - Iir_Kind_Concatenation_Operator => 1193, - Iir_Kind_Multiplication_Operator => 1198, - Iir_Kind_Division_Operator => 1203, - Iir_Kind_Modulus_Operator => 1208, - Iir_Kind_Remainder_Operator => 1213, - Iir_Kind_Exponentiation_Operator => 1218, - Iir_Kind_Function_Call => 1226, - Iir_Kind_Aggregate => 1233, - Iir_Kind_Parenthesis_Expression => 1236, - Iir_Kind_Qualified_Expression => 1240, - Iir_Kind_Type_Conversion => 1245, - Iir_Kind_Allocator_By_Expression => 1249, - Iir_Kind_Allocator_By_Subtype => 1254, - Iir_Kind_Selected_Element => 1262, - Iir_Kind_Dereference => 1267, - Iir_Kind_Implicit_Dereference => 1272, - Iir_Kind_Slice_Name => 1279, - Iir_Kind_Indexed_Name => 1285, - Iir_Kind_Psl_Expression => 1287, - Iir_Kind_Sensitized_Process_Statement => 1308, - Iir_Kind_Process_Statement => 1328, - Iir_Kind_Concurrent_Simple_Signal_Assignment => 1340, - Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1352, - Iir_Kind_Concurrent_Selected_Signal_Assignment => 1365, - Iir_Kind_Concurrent_Assertion_Statement => 1373, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1380, - Iir_Kind_Psl_Assert_Directive => 1393, - Iir_Kind_Psl_Assume_Directive => 1404, - Iir_Kind_Psl_Cover_Directive => 1416, - Iir_Kind_Psl_Restrict_Directive => 1427, - Iir_Kind_Block_Statement => 1441, - Iir_Kind_If_Generate_Statement => 1452, - Iir_Kind_Case_Generate_Statement => 1461, - Iir_Kind_For_Generate_Statement => 1470, - Iir_Kind_Component_Instantiation_Statement => 1481, - Iir_Kind_Psl_Default_Clock => 1485, - Iir_Kind_Simple_Simultaneous_Statement => 1492, - Iir_Kind_Generate_Statement_Body => 1503, - Iir_Kind_If_Generate_Else_Clause => 1509, - Iir_Kind_Simple_Signal_Assignment_Statement => 1519, - Iir_Kind_Conditional_Signal_Assignment_Statement => 1529, - Iir_Kind_Selected_Waveform_Assignment_Statement => 1540, - Iir_Kind_Null_Statement => 1544, - Iir_Kind_Assertion_Statement => 1551, - Iir_Kind_Report_Statement => 1557, - Iir_Kind_Wait_Statement => 1565, - Iir_Kind_Variable_Assignment_Statement => 1572, - Iir_Kind_Conditional_Variable_Assignment_Statement => 1579, - Iir_Kind_Return_Statement => 1585, - Iir_Kind_For_Loop_Statement => 1594, - Iir_Kind_While_Loop_Statement => 1603, - Iir_Kind_Next_Statement => 1610, - Iir_Kind_Exit_Statement => 1617, - Iir_Kind_Case_Statement => 1625, - Iir_Kind_Procedure_Call_Statement => 1631, - Iir_Kind_If_Statement => 1641, - Iir_Kind_Elsif => 1647, - Iir_Kind_Character_Literal => 1655, - Iir_Kind_Simple_Name => 1663, - Iir_Kind_Selected_Name => 1672, - Iir_Kind_Operator_Symbol => 1678, - Iir_Kind_Reference_Name => 1682, - Iir_Kind_External_Constant_Name => 1690, - Iir_Kind_External_Signal_Name => 1698, - Iir_Kind_External_Variable_Name => 1707, - Iir_Kind_Selected_By_All_Name => 1713, - Iir_Kind_Parenthesis_Name => 1718, - Iir_Kind_Package_Pathname => 1722, - Iir_Kind_Absolute_Pathname => 1723, - Iir_Kind_Relative_Pathname => 1724, - Iir_Kind_Pathname_Element => 1729, - Iir_Kind_Base_Attribute => 1731, - Iir_Kind_Subtype_Attribute => 1736, - Iir_Kind_Element_Attribute => 1741, - Iir_Kind_Left_Type_Attribute => 1746, - Iir_Kind_Right_Type_Attribute => 1751, - Iir_Kind_High_Type_Attribute => 1756, - Iir_Kind_Low_Type_Attribute => 1761, - Iir_Kind_Ascending_Type_Attribute => 1766, - Iir_Kind_Image_Attribute => 1772, - Iir_Kind_Value_Attribute => 1778, - Iir_Kind_Pos_Attribute => 1784, - Iir_Kind_Val_Attribute => 1790, - Iir_Kind_Succ_Attribute => 1796, - Iir_Kind_Pred_Attribute => 1802, - Iir_Kind_Leftof_Attribute => 1808, - Iir_Kind_Rightof_Attribute => 1814, - Iir_Kind_Delayed_Attribute => 1823, - Iir_Kind_Stable_Attribute => 1832, - Iir_Kind_Quiet_Attribute => 1841, - Iir_Kind_Transaction_Attribute => 1850, - Iir_Kind_Event_Attribute => 1854, - Iir_Kind_Active_Attribute => 1858, - Iir_Kind_Last_Event_Attribute => 1862, - Iir_Kind_Last_Active_Attribute => 1866, - Iir_Kind_Last_Value_Attribute => 1870, - Iir_Kind_Driving_Attribute => 1874, - Iir_Kind_Driving_Value_Attribute => 1878, - Iir_Kind_Behavior_Attribute => 1878, - Iir_Kind_Structure_Attribute => 1878, - Iir_Kind_Simple_Name_Attribute => 1885, - Iir_Kind_Instance_Name_Attribute => 1890, - Iir_Kind_Path_Name_Attribute => 1895, - Iir_Kind_Left_Array_Attribute => 1902, - Iir_Kind_Right_Array_Attribute => 1909, - Iir_Kind_High_Array_Attribute => 1916, - Iir_Kind_Low_Array_Attribute => 1923, - Iir_Kind_Length_Array_Attribute => 1930, - Iir_Kind_Ascending_Array_Attribute => 1937, - Iir_Kind_Range_Array_Attribute => 1944, - Iir_Kind_Reverse_Range_Array_Attribute => 1951, - Iir_Kind_Attribute_Name => 1960 + Iir_Kind_Anonymous_Signal_Declaration => 1008, + Iir_Kind_Signal_Attribute_Declaration => 1011, + Iir_Kind_Identity_Operator => 1015, + Iir_Kind_Negation_Operator => 1019, + Iir_Kind_Absolute_Operator => 1023, + Iir_Kind_Not_Operator => 1027, + Iir_Kind_Implicit_Condition_Operator => 1031, + Iir_Kind_Condition_Operator => 1035, + Iir_Kind_Reduction_And_Operator => 1039, + Iir_Kind_Reduction_Or_Operator => 1043, + Iir_Kind_Reduction_Nand_Operator => 1047, + Iir_Kind_Reduction_Nor_Operator => 1051, + Iir_Kind_Reduction_Xor_Operator => 1055, + Iir_Kind_Reduction_Xnor_Operator => 1059, + Iir_Kind_And_Operator => 1064, + Iir_Kind_Or_Operator => 1069, + Iir_Kind_Nand_Operator => 1074, + Iir_Kind_Nor_Operator => 1079, + Iir_Kind_Xor_Operator => 1084, + Iir_Kind_Xnor_Operator => 1089, + Iir_Kind_Equality_Operator => 1094, + Iir_Kind_Inequality_Operator => 1099, + Iir_Kind_Less_Than_Operator => 1104, + Iir_Kind_Less_Than_Or_Equal_Operator => 1109, + Iir_Kind_Greater_Than_Operator => 1114, + Iir_Kind_Greater_Than_Or_Equal_Operator => 1119, + Iir_Kind_Match_Equality_Operator => 1124, + Iir_Kind_Match_Inequality_Operator => 1129, + Iir_Kind_Match_Less_Than_Operator => 1134, + Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1139, + Iir_Kind_Match_Greater_Than_Operator => 1144, + Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1149, + Iir_Kind_Sll_Operator => 1154, + Iir_Kind_Sla_Operator => 1159, + Iir_Kind_Srl_Operator => 1164, + Iir_Kind_Sra_Operator => 1169, + Iir_Kind_Rol_Operator => 1174, + Iir_Kind_Ror_Operator => 1179, + Iir_Kind_Addition_Operator => 1184, + Iir_Kind_Substraction_Operator => 1189, + Iir_Kind_Concatenation_Operator => 1194, + Iir_Kind_Multiplication_Operator => 1199, + Iir_Kind_Division_Operator => 1204, + Iir_Kind_Modulus_Operator => 1209, + Iir_Kind_Remainder_Operator => 1214, + Iir_Kind_Exponentiation_Operator => 1219, + Iir_Kind_Function_Call => 1227, + Iir_Kind_Aggregate => 1234, + Iir_Kind_Parenthesis_Expression => 1237, + Iir_Kind_Qualified_Expression => 1241, + Iir_Kind_Type_Conversion => 1246, + Iir_Kind_Allocator_By_Expression => 1250, + Iir_Kind_Allocator_By_Subtype => 1255, + Iir_Kind_Selected_Element => 1263, + Iir_Kind_Dereference => 1268, + Iir_Kind_Implicit_Dereference => 1273, + Iir_Kind_Slice_Name => 1280, + Iir_Kind_Indexed_Name => 1286, + Iir_Kind_Psl_Expression => 1288, + Iir_Kind_Sensitized_Process_Statement => 1309, + Iir_Kind_Process_Statement => 1329, + Iir_Kind_Concurrent_Simple_Signal_Assignment => 1341, + Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1353, + Iir_Kind_Concurrent_Selected_Signal_Assignment => 1366, + Iir_Kind_Concurrent_Assertion_Statement => 1374, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1381, + Iir_Kind_Psl_Assert_Directive => 1394, + Iir_Kind_Psl_Assume_Directive => 1405, + Iir_Kind_Psl_Cover_Directive => 1417, + Iir_Kind_Psl_Restrict_Directive => 1428, + Iir_Kind_Block_Statement => 1442, + Iir_Kind_If_Generate_Statement => 1453, + Iir_Kind_Case_Generate_Statement => 1462, + Iir_Kind_For_Generate_Statement => 1471, + Iir_Kind_Component_Instantiation_Statement => 1482, + Iir_Kind_Psl_Default_Clock => 1486, + Iir_Kind_Simple_Simultaneous_Statement => 1493, + Iir_Kind_Generate_Statement_Body => 1504, + Iir_Kind_If_Generate_Else_Clause => 1510, + Iir_Kind_Simple_Signal_Assignment_Statement => 1520, + Iir_Kind_Conditional_Signal_Assignment_Statement => 1530, + Iir_Kind_Selected_Waveform_Assignment_Statement => 1541, + Iir_Kind_Null_Statement => 1545, + Iir_Kind_Assertion_Statement => 1552, + Iir_Kind_Report_Statement => 1558, + Iir_Kind_Wait_Statement => 1566, + Iir_Kind_Variable_Assignment_Statement => 1573, + Iir_Kind_Conditional_Variable_Assignment_Statement => 1580, + Iir_Kind_Return_Statement => 1586, + Iir_Kind_For_Loop_Statement => 1595, + Iir_Kind_While_Loop_Statement => 1604, + Iir_Kind_Next_Statement => 1611, + Iir_Kind_Exit_Statement => 1618, + Iir_Kind_Case_Statement => 1626, + Iir_Kind_Procedure_Call_Statement => 1632, + Iir_Kind_If_Statement => 1642, + Iir_Kind_Elsif => 1648, + Iir_Kind_Character_Literal => 1656, + Iir_Kind_Simple_Name => 1664, + Iir_Kind_Selected_Name => 1673, + Iir_Kind_Operator_Symbol => 1679, + Iir_Kind_Reference_Name => 1684, + Iir_Kind_External_Constant_Name => 1692, + Iir_Kind_External_Signal_Name => 1700, + Iir_Kind_External_Variable_Name => 1709, + Iir_Kind_Selected_By_All_Name => 1715, + Iir_Kind_Parenthesis_Name => 1720, + Iir_Kind_Package_Pathname => 1724, + Iir_Kind_Absolute_Pathname => 1725, + Iir_Kind_Relative_Pathname => 1726, + Iir_Kind_Pathname_Element => 1731, + Iir_Kind_Base_Attribute => 1733, + Iir_Kind_Subtype_Attribute => 1738, + Iir_Kind_Element_Attribute => 1743, + Iir_Kind_Left_Type_Attribute => 1748, + Iir_Kind_Right_Type_Attribute => 1753, + Iir_Kind_High_Type_Attribute => 1758, + Iir_Kind_Low_Type_Attribute => 1763, + Iir_Kind_Ascending_Type_Attribute => 1768, + Iir_Kind_Image_Attribute => 1774, + Iir_Kind_Value_Attribute => 1780, + Iir_Kind_Pos_Attribute => 1786, + Iir_Kind_Val_Attribute => 1792, + Iir_Kind_Succ_Attribute => 1798, + Iir_Kind_Pred_Attribute => 1804, + Iir_Kind_Leftof_Attribute => 1810, + Iir_Kind_Rightof_Attribute => 1816, + Iir_Kind_Delayed_Attribute => 1825, + Iir_Kind_Stable_Attribute => 1834, + Iir_Kind_Quiet_Attribute => 1843, + Iir_Kind_Transaction_Attribute => 1852, + Iir_Kind_Event_Attribute => 1856, + Iir_Kind_Active_Attribute => 1860, + Iir_Kind_Last_Event_Attribute => 1864, + Iir_Kind_Last_Active_Attribute => 1868, + Iir_Kind_Last_Value_Attribute => 1872, + Iir_Kind_Driving_Attribute => 1876, + Iir_Kind_Driving_Value_Attribute => 1880, + Iir_Kind_Behavior_Attribute => 1880, + Iir_Kind_Structure_Attribute => 1880, + Iir_Kind_Simple_Name_Attribute => 1887, + Iir_Kind_Instance_Name_Attribute => 1892, + Iir_Kind_Path_Name_Attribute => 1897, + Iir_Kind_Left_Array_Attribute => 1904, + Iir_Kind_Right_Array_Attribute => 1911, + Iir_Kind_High_Array_Attribute => 1918, + Iir_Kind_Low_Array_Attribute => 1925, + Iir_Kind_Length_Array_Attribute => 1932, + Iir_Kind_Ascending_Array_Attribute => 1939, + Iir_Kind_Range_Array_Attribute => 1946, + Iir_Kind_Reverse_Range_Array_Attribute => 1953, + Iir_Kind_Attribute_Name => 1962 ); function Get_Fields_First (K : Iir_Kind) return Fields_Index is @@ -9549,6 +9551,7 @@ package body Vhdl.Nodes_Meta is | Iir_Kind_Interface_Variable_Declaration | Iir_Kind_Interface_Signal_Declaration | Iir_Kind_Interface_File_Declaration + | Iir_Kind_Anonymous_Signal_Declaration | Iir_Kind_Identity_Operator | Iir_Kind_Negation_Operator | Iir_Kind_Absolute_Operator @@ -9608,6 +9611,7 @@ package body Vhdl.Nodes_Meta is | Iir_Kind_Character_Literal | Iir_Kind_Simple_Name | Iir_Kind_Selected_Name + | Iir_Kind_Reference_Name | Iir_Kind_External_Constant_Name | Iir_Kind_External_Signal_Name | Iir_Kind_External_Variable_Name |