diff options
Diffstat (limited to 'src/vhdl/vhdl-nodes_meta.adb')
-rw-r--r-- | src/vhdl/vhdl-nodes_meta.adb | 499 |
1 files changed, 256 insertions, 243 deletions
diff --git a/src/vhdl/vhdl-nodes_meta.adb b/src/vhdl/vhdl-nodes_meta.adb index ad17a56ee..91f1608d2 100644 --- a/src/vhdl/vhdl-nodes_meta.adb +++ b/src/vhdl/vhdl-nodes_meta.adb @@ -1088,6 +1088,8 @@ package body Vhdl.Nodes_Meta is return "entity_aspect_configuration"; when Iir_Kind_Entity_Aspect_Open => return "entity_aspect_open"; + when Iir_Kind_Psl_Hierarchical_Name => + return "psl_hierarchical_name"; when Iir_Kind_Block_Configuration => return "block_configuration"; when Iir_Kind_Block_Header => @@ -2458,6 +2460,9 @@ package body Vhdl.Nodes_Meta is -- Iir_Kind_Entity_Aspect_Configuration Field_Configuration_Name, -- Iir_Kind_Entity_Aspect_Open + -- Iir_Kind_Psl_Hierarchical_Name + Field_Entity_Name, + Field_Architecture, -- Iir_Kind_Block_Configuration Field_Parent, Field_Declaration_Chain, @@ -4546,248 +4551,249 @@ package body Vhdl.Nodes_Meta is Iir_Kind_Entity_Aspect_Entity => 182, Iir_Kind_Entity_Aspect_Configuration => 183, Iir_Kind_Entity_Aspect_Open => 183, - Iir_Kind_Block_Configuration => 189, - Iir_Kind_Block_Header => 193, - Iir_Kind_Component_Configuration => 200, - Iir_Kind_Binding_Indication => 204, - Iir_Kind_Entity_Class => 206, - Iir_Kind_Attribute_Value => 214, - Iir_Kind_Signature => 217, - Iir_Kind_Aggregate_Info => 224, - Iir_Kind_Procedure_Call => 228, - Iir_Kind_Record_Element_Constraint => 234, - Iir_Kind_Array_Element_Resolution => 236, - Iir_Kind_Record_Resolution => 237, - Iir_Kind_Record_Element_Resolution => 240, - Iir_Kind_Attribute_Specification => 248, - Iir_Kind_Disconnection_Specification => 254, - Iir_Kind_Configuration_Specification => 260, - Iir_Kind_Access_Type_Definition => 268, - Iir_Kind_Incomplete_Type_Definition => 276, - Iir_Kind_Interface_Type_Definition => 283, - Iir_Kind_File_Type_Definition => 290, - Iir_Kind_Protected_Type_Declaration => 299, - Iir_Kind_Record_Type_Definition => 310, - Iir_Kind_Array_Type_Definition => 322, - Iir_Kind_Array_Subtype_Definition => 337, - Iir_Kind_Record_Subtype_Definition => 350, - Iir_Kind_Access_Subtype_Definition => 358, - Iir_Kind_Physical_Subtype_Definition => 368, - Iir_Kind_Floating_Subtype_Definition => 379, - Iir_Kind_Integer_Subtype_Definition => 389, - Iir_Kind_Enumeration_Subtype_Definition => 399, - Iir_Kind_Enumeration_Type_Definition => 410, - Iir_Kind_Integer_Type_Definition => 418, - Iir_Kind_Floating_Type_Definition => 426, - Iir_Kind_Physical_Type_Definition => 437, - Iir_Kind_Range_Expression => 445, - Iir_Kind_Protected_Type_Body => 452, - Iir_Kind_Wildcard_Type_Definition => 457, - Iir_Kind_Subtype_Definition => 464, - Iir_Kind_Scalar_Nature_Definition => 468, - Iir_Kind_Overload_List => 469, - Iir_Kind_Entity_Declaration => 481, - Iir_Kind_Configuration_Declaration => 490, - Iir_Kind_Context_Declaration => 496, - Iir_Kind_Package_Declaration => 511, - Iir_Kind_Package_Instantiation_Declaration => 525, - Iir_Kind_Vmode_Declaration => 535, - Iir_Kind_Vprop_Declaration => 545, - Iir_Kind_Vunit_Declaration => 555, - Iir_Kind_Package_Body => 563, - Iir_Kind_Architecture_Body => 575, - Iir_Kind_Type_Declaration => 582, - Iir_Kind_Anonymous_Type_Declaration => 588, - Iir_Kind_Subtype_Declaration => 595, - Iir_Kind_Nature_Declaration => 601, - Iir_Kind_Subnature_Declaration => 607, - Iir_Kind_Package_Header => 609, - Iir_Kind_Unit_Declaration => 618, - Iir_Kind_Library_Declaration => 625, - Iir_Kind_Component_Declaration => 635, - Iir_Kind_Attribute_Declaration => 642, - Iir_Kind_Group_Template_Declaration => 648, - Iir_Kind_Group_Declaration => 655, - Iir_Kind_Element_Declaration => 662, - Iir_Kind_Non_Object_Alias_Declaration => 670, - Iir_Kind_Psl_Declaration => 678, - Iir_Kind_Psl_Endpoint_Declaration => 692, - Iir_Kind_Terminal_Declaration => 699, - Iir_Kind_Free_Quantity_Declaration => 710, - Iir_Kind_Across_Quantity_Declaration => 722, - Iir_Kind_Through_Quantity_Declaration => 734, - Iir_Kind_Enumeration_Literal => 745, - Iir_Kind_Function_Declaration => 770, - Iir_Kind_Procedure_Declaration => 794, - Iir_Kind_Function_Body => 804, - Iir_Kind_Procedure_Body => 815, - Iir_Kind_Object_Alias_Declaration => 826, - Iir_Kind_File_Declaration => 840, - Iir_Kind_Guard_Signal_Declaration => 853, - Iir_Kind_Signal_Declaration => 870, - Iir_Kind_Variable_Declaration => 883, - Iir_Kind_Constant_Declaration => 897, - Iir_Kind_Iterator_Declaration => 908, - Iir_Kind_Interface_Constant_Declaration => 924, - Iir_Kind_Interface_Variable_Declaration => 940, - Iir_Kind_Interface_Signal_Declaration => 961, - Iir_Kind_Interface_File_Declaration => 977, - Iir_Kind_Interface_Type_Declaration => 987, - Iir_Kind_Interface_Package_Declaration => 999, - Iir_Kind_Interface_Function_Declaration => 1016, - Iir_Kind_Interface_Procedure_Declaration => 1029, - Iir_Kind_Anonymous_Signal_Declaration => 1038, - Iir_Kind_Signal_Attribute_Declaration => 1041, - Iir_Kind_Identity_Operator => 1045, - Iir_Kind_Negation_Operator => 1049, - Iir_Kind_Absolute_Operator => 1053, - Iir_Kind_Not_Operator => 1057, - Iir_Kind_Implicit_Condition_Operator => 1061, - Iir_Kind_Condition_Operator => 1065, - Iir_Kind_Reduction_And_Operator => 1069, - Iir_Kind_Reduction_Or_Operator => 1073, - Iir_Kind_Reduction_Nand_Operator => 1077, - Iir_Kind_Reduction_Nor_Operator => 1081, - Iir_Kind_Reduction_Xor_Operator => 1085, - Iir_Kind_Reduction_Xnor_Operator => 1089, - Iir_Kind_And_Operator => 1094, - Iir_Kind_Or_Operator => 1099, - Iir_Kind_Nand_Operator => 1104, - Iir_Kind_Nor_Operator => 1109, - Iir_Kind_Xor_Operator => 1114, - Iir_Kind_Xnor_Operator => 1119, - Iir_Kind_Equality_Operator => 1124, - Iir_Kind_Inequality_Operator => 1129, - Iir_Kind_Less_Than_Operator => 1134, - Iir_Kind_Less_Than_Or_Equal_Operator => 1139, - Iir_Kind_Greater_Than_Operator => 1144, - Iir_Kind_Greater_Than_Or_Equal_Operator => 1149, - Iir_Kind_Match_Equality_Operator => 1154, - Iir_Kind_Match_Inequality_Operator => 1159, - Iir_Kind_Match_Less_Than_Operator => 1164, - Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1169, - Iir_Kind_Match_Greater_Than_Operator => 1174, - Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1179, - Iir_Kind_Sll_Operator => 1184, - Iir_Kind_Sla_Operator => 1189, - Iir_Kind_Srl_Operator => 1194, - Iir_Kind_Sra_Operator => 1199, - Iir_Kind_Rol_Operator => 1204, - Iir_Kind_Ror_Operator => 1209, - Iir_Kind_Addition_Operator => 1214, - Iir_Kind_Substraction_Operator => 1219, - Iir_Kind_Concatenation_Operator => 1224, - Iir_Kind_Multiplication_Operator => 1229, - Iir_Kind_Division_Operator => 1234, - Iir_Kind_Modulus_Operator => 1239, - Iir_Kind_Remainder_Operator => 1244, - Iir_Kind_Exponentiation_Operator => 1249, - Iir_Kind_Function_Call => 1257, - Iir_Kind_Aggregate => 1264, - Iir_Kind_Parenthesis_Expression => 1267, - Iir_Kind_Qualified_Expression => 1271, - Iir_Kind_Type_Conversion => 1276, - Iir_Kind_Allocator_By_Expression => 1280, - Iir_Kind_Allocator_By_Subtype => 1285, - Iir_Kind_Selected_Element => 1293, - Iir_Kind_Dereference => 1298, - Iir_Kind_Implicit_Dereference => 1303, - Iir_Kind_Slice_Name => 1310, - Iir_Kind_Indexed_Name => 1316, - Iir_Kind_Psl_Expression => 1318, - Iir_Kind_Sensitized_Process_Statement => 1339, - Iir_Kind_Process_Statement => 1359, - Iir_Kind_Concurrent_Simple_Signal_Assignment => 1371, - Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1383, - Iir_Kind_Concurrent_Selected_Signal_Assignment => 1396, - Iir_Kind_Concurrent_Assertion_Statement => 1404, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1411, - Iir_Kind_Psl_Assert_Directive => 1424, - Iir_Kind_Psl_Assume_Directive => 1435, - Iir_Kind_Psl_Cover_Directive => 1447, - Iir_Kind_Psl_Restrict_Directive => 1458, - Iir_Kind_Block_Statement => 1472, - Iir_Kind_If_Generate_Statement => 1483, - Iir_Kind_Case_Generate_Statement => 1492, - Iir_Kind_For_Generate_Statement => 1501, - Iir_Kind_Component_Instantiation_Statement => 1512, - Iir_Kind_Psl_Default_Clock => 1516, - Iir_Kind_Simple_Simultaneous_Statement => 1523, - Iir_Kind_Generate_Statement_Body => 1534, - Iir_Kind_If_Generate_Else_Clause => 1540, - Iir_Kind_Simple_Signal_Assignment_Statement => 1550, - Iir_Kind_Conditional_Signal_Assignment_Statement => 1560, - Iir_Kind_Selected_Waveform_Assignment_Statement => 1571, - Iir_Kind_Null_Statement => 1575, - Iir_Kind_Assertion_Statement => 1582, - Iir_Kind_Report_Statement => 1588, - Iir_Kind_Wait_Statement => 1596, - Iir_Kind_Variable_Assignment_Statement => 1603, - Iir_Kind_Conditional_Variable_Assignment_Statement => 1610, - Iir_Kind_Return_Statement => 1616, - Iir_Kind_For_Loop_Statement => 1625, - Iir_Kind_While_Loop_Statement => 1634, - Iir_Kind_Next_Statement => 1641, - Iir_Kind_Exit_Statement => 1648, - Iir_Kind_Case_Statement => 1656, - Iir_Kind_Procedure_Call_Statement => 1662, - Iir_Kind_If_Statement => 1672, - Iir_Kind_Elsif => 1678, - Iir_Kind_Character_Literal => 1686, - Iir_Kind_Simple_Name => 1694, - Iir_Kind_Selected_Name => 1703, - Iir_Kind_Operator_Symbol => 1709, - Iir_Kind_Reference_Name => 1714, - Iir_Kind_External_Constant_Name => 1722, - Iir_Kind_External_Signal_Name => 1730, - Iir_Kind_External_Variable_Name => 1739, - Iir_Kind_Selected_By_All_Name => 1745, - Iir_Kind_Parenthesis_Name => 1750, - Iir_Kind_Package_Pathname => 1754, - Iir_Kind_Absolute_Pathname => 1755, - Iir_Kind_Relative_Pathname => 1756, - Iir_Kind_Pathname_Element => 1761, - Iir_Kind_Base_Attribute => 1763, - Iir_Kind_Subtype_Attribute => 1768, - Iir_Kind_Element_Attribute => 1773, - Iir_Kind_Left_Type_Attribute => 1778, - Iir_Kind_Right_Type_Attribute => 1783, - Iir_Kind_High_Type_Attribute => 1788, - Iir_Kind_Low_Type_Attribute => 1793, - Iir_Kind_Ascending_Type_Attribute => 1798, - Iir_Kind_Image_Attribute => 1804, - Iir_Kind_Value_Attribute => 1810, - Iir_Kind_Pos_Attribute => 1816, - Iir_Kind_Val_Attribute => 1822, - Iir_Kind_Succ_Attribute => 1828, - Iir_Kind_Pred_Attribute => 1834, - Iir_Kind_Leftof_Attribute => 1840, - Iir_Kind_Rightof_Attribute => 1846, - Iir_Kind_Delayed_Attribute => 1855, - Iir_Kind_Stable_Attribute => 1864, - Iir_Kind_Quiet_Attribute => 1873, - Iir_Kind_Transaction_Attribute => 1882, - Iir_Kind_Event_Attribute => 1886, - Iir_Kind_Active_Attribute => 1890, - Iir_Kind_Last_Event_Attribute => 1894, - Iir_Kind_Last_Active_Attribute => 1898, - Iir_Kind_Last_Value_Attribute => 1902, - Iir_Kind_Driving_Attribute => 1906, - Iir_Kind_Driving_Value_Attribute => 1910, - Iir_Kind_Behavior_Attribute => 1910, - Iir_Kind_Structure_Attribute => 1910, - Iir_Kind_Simple_Name_Attribute => 1917, - Iir_Kind_Instance_Name_Attribute => 1922, - Iir_Kind_Path_Name_Attribute => 1927, - Iir_Kind_Left_Array_Attribute => 1934, - Iir_Kind_Right_Array_Attribute => 1941, - Iir_Kind_High_Array_Attribute => 1948, - Iir_Kind_Low_Array_Attribute => 1955, - Iir_Kind_Length_Array_Attribute => 1962, - Iir_Kind_Ascending_Array_Attribute => 1969, - Iir_Kind_Range_Array_Attribute => 1976, - Iir_Kind_Reverse_Range_Array_Attribute => 1983, - Iir_Kind_Attribute_Name => 1992 + Iir_Kind_Psl_Hierarchical_Name => 185, + Iir_Kind_Block_Configuration => 191, + Iir_Kind_Block_Header => 195, + Iir_Kind_Component_Configuration => 202, + Iir_Kind_Binding_Indication => 206, + Iir_Kind_Entity_Class => 208, + Iir_Kind_Attribute_Value => 216, + Iir_Kind_Signature => 219, + Iir_Kind_Aggregate_Info => 226, + Iir_Kind_Procedure_Call => 230, + Iir_Kind_Record_Element_Constraint => 236, + Iir_Kind_Array_Element_Resolution => 238, + Iir_Kind_Record_Resolution => 239, + Iir_Kind_Record_Element_Resolution => 242, + Iir_Kind_Attribute_Specification => 250, + Iir_Kind_Disconnection_Specification => 256, + Iir_Kind_Configuration_Specification => 262, + Iir_Kind_Access_Type_Definition => 270, + Iir_Kind_Incomplete_Type_Definition => 278, + Iir_Kind_Interface_Type_Definition => 285, + Iir_Kind_File_Type_Definition => 292, + Iir_Kind_Protected_Type_Declaration => 301, + Iir_Kind_Record_Type_Definition => 312, + Iir_Kind_Array_Type_Definition => 324, + Iir_Kind_Array_Subtype_Definition => 339, + Iir_Kind_Record_Subtype_Definition => 352, + Iir_Kind_Access_Subtype_Definition => 360, + Iir_Kind_Physical_Subtype_Definition => 370, + Iir_Kind_Floating_Subtype_Definition => 381, + Iir_Kind_Integer_Subtype_Definition => 391, + Iir_Kind_Enumeration_Subtype_Definition => 401, + Iir_Kind_Enumeration_Type_Definition => 412, + Iir_Kind_Integer_Type_Definition => 420, + Iir_Kind_Floating_Type_Definition => 428, + Iir_Kind_Physical_Type_Definition => 439, + Iir_Kind_Range_Expression => 447, + Iir_Kind_Protected_Type_Body => 454, + Iir_Kind_Wildcard_Type_Definition => 459, + Iir_Kind_Subtype_Definition => 466, + Iir_Kind_Scalar_Nature_Definition => 470, + Iir_Kind_Overload_List => 471, + Iir_Kind_Entity_Declaration => 483, + Iir_Kind_Configuration_Declaration => 492, + Iir_Kind_Context_Declaration => 498, + Iir_Kind_Package_Declaration => 513, + Iir_Kind_Package_Instantiation_Declaration => 527, + Iir_Kind_Vmode_Declaration => 537, + Iir_Kind_Vprop_Declaration => 547, + Iir_Kind_Vunit_Declaration => 557, + Iir_Kind_Package_Body => 565, + Iir_Kind_Architecture_Body => 577, + Iir_Kind_Type_Declaration => 584, + Iir_Kind_Anonymous_Type_Declaration => 590, + Iir_Kind_Subtype_Declaration => 597, + Iir_Kind_Nature_Declaration => 603, + Iir_Kind_Subnature_Declaration => 609, + Iir_Kind_Package_Header => 611, + Iir_Kind_Unit_Declaration => 620, + Iir_Kind_Library_Declaration => 627, + Iir_Kind_Component_Declaration => 637, + Iir_Kind_Attribute_Declaration => 644, + Iir_Kind_Group_Template_Declaration => 650, + Iir_Kind_Group_Declaration => 657, + Iir_Kind_Element_Declaration => 664, + Iir_Kind_Non_Object_Alias_Declaration => 672, + Iir_Kind_Psl_Declaration => 680, + Iir_Kind_Psl_Endpoint_Declaration => 694, + Iir_Kind_Terminal_Declaration => 701, + Iir_Kind_Free_Quantity_Declaration => 712, + Iir_Kind_Across_Quantity_Declaration => 724, + Iir_Kind_Through_Quantity_Declaration => 736, + Iir_Kind_Enumeration_Literal => 747, + Iir_Kind_Function_Declaration => 772, + Iir_Kind_Procedure_Declaration => 796, + Iir_Kind_Function_Body => 806, + Iir_Kind_Procedure_Body => 817, + Iir_Kind_Object_Alias_Declaration => 828, + Iir_Kind_File_Declaration => 842, + Iir_Kind_Guard_Signal_Declaration => 855, + Iir_Kind_Signal_Declaration => 872, + Iir_Kind_Variable_Declaration => 885, + Iir_Kind_Constant_Declaration => 899, + Iir_Kind_Iterator_Declaration => 910, + Iir_Kind_Interface_Constant_Declaration => 926, + Iir_Kind_Interface_Variable_Declaration => 942, + Iir_Kind_Interface_Signal_Declaration => 963, + Iir_Kind_Interface_File_Declaration => 979, + Iir_Kind_Interface_Type_Declaration => 989, + Iir_Kind_Interface_Package_Declaration => 1001, + Iir_Kind_Interface_Function_Declaration => 1018, + Iir_Kind_Interface_Procedure_Declaration => 1031, + Iir_Kind_Anonymous_Signal_Declaration => 1040, + Iir_Kind_Signal_Attribute_Declaration => 1043, + Iir_Kind_Identity_Operator => 1047, + Iir_Kind_Negation_Operator => 1051, + Iir_Kind_Absolute_Operator => 1055, + Iir_Kind_Not_Operator => 1059, + Iir_Kind_Implicit_Condition_Operator => 1063, + Iir_Kind_Condition_Operator => 1067, + Iir_Kind_Reduction_And_Operator => 1071, + Iir_Kind_Reduction_Or_Operator => 1075, + Iir_Kind_Reduction_Nand_Operator => 1079, + Iir_Kind_Reduction_Nor_Operator => 1083, + Iir_Kind_Reduction_Xor_Operator => 1087, + Iir_Kind_Reduction_Xnor_Operator => 1091, + Iir_Kind_And_Operator => 1096, + Iir_Kind_Or_Operator => 1101, + Iir_Kind_Nand_Operator => 1106, + Iir_Kind_Nor_Operator => 1111, + Iir_Kind_Xor_Operator => 1116, + Iir_Kind_Xnor_Operator => 1121, + Iir_Kind_Equality_Operator => 1126, + Iir_Kind_Inequality_Operator => 1131, + Iir_Kind_Less_Than_Operator => 1136, + Iir_Kind_Less_Than_Or_Equal_Operator => 1141, + Iir_Kind_Greater_Than_Operator => 1146, + Iir_Kind_Greater_Than_Or_Equal_Operator => 1151, + Iir_Kind_Match_Equality_Operator => 1156, + Iir_Kind_Match_Inequality_Operator => 1161, + Iir_Kind_Match_Less_Than_Operator => 1166, + Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1171, + Iir_Kind_Match_Greater_Than_Operator => 1176, + Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1181, + Iir_Kind_Sll_Operator => 1186, + Iir_Kind_Sla_Operator => 1191, + Iir_Kind_Srl_Operator => 1196, + Iir_Kind_Sra_Operator => 1201, + Iir_Kind_Rol_Operator => 1206, + Iir_Kind_Ror_Operator => 1211, + Iir_Kind_Addition_Operator => 1216, + Iir_Kind_Substraction_Operator => 1221, + Iir_Kind_Concatenation_Operator => 1226, + Iir_Kind_Multiplication_Operator => 1231, + Iir_Kind_Division_Operator => 1236, + Iir_Kind_Modulus_Operator => 1241, + Iir_Kind_Remainder_Operator => 1246, + Iir_Kind_Exponentiation_Operator => 1251, + Iir_Kind_Function_Call => 1259, + Iir_Kind_Aggregate => 1266, + Iir_Kind_Parenthesis_Expression => 1269, + Iir_Kind_Qualified_Expression => 1273, + Iir_Kind_Type_Conversion => 1278, + Iir_Kind_Allocator_By_Expression => 1282, + Iir_Kind_Allocator_By_Subtype => 1287, + Iir_Kind_Selected_Element => 1295, + Iir_Kind_Dereference => 1300, + Iir_Kind_Implicit_Dereference => 1305, + Iir_Kind_Slice_Name => 1312, + Iir_Kind_Indexed_Name => 1318, + Iir_Kind_Psl_Expression => 1320, + Iir_Kind_Sensitized_Process_Statement => 1341, + Iir_Kind_Process_Statement => 1361, + Iir_Kind_Concurrent_Simple_Signal_Assignment => 1373, + Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1385, + Iir_Kind_Concurrent_Selected_Signal_Assignment => 1398, + Iir_Kind_Concurrent_Assertion_Statement => 1406, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1413, + Iir_Kind_Psl_Assert_Directive => 1426, + Iir_Kind_Psl_Assume_Directive => 1437, + Iir_Kind_Psl_Cover_Directive => 1449, + Iir_Kind_Psl_Restrict_Directive => 1460, + Iir_Kind_Block_Statement => 1474, + Iir_Kind_If_Generate_Statement => 1485, + Iir_Kind_Case_Generate_Statement => 1494, + Iir_Kind_For_Generate_Statement => 1503, + Iir_Kind_Component_Instantiation_Statement => 1514, + Iir_Kind_Psl_Default_Clock => 1518, + Iir_Kind_Simple_Simultaneous_Statement => 1525, + Iir_Kind_Generate_Statement_Body => 1536, + Iir_Kind_If_Generate_Else_Clause => 1542, + Iir_Kind_Simple_Signal_Assignment_Statement => 1552, + Iir_Kind_Conditional_Signal_Assignment_Statement => 1562, + Iir_Kind_Selected_Waveform_Assignment_Statement => 1573, + Iir_Kind_Null_Statement => 1577, + Iir_Kind_Assertion_Statement => 1584, + Iir_Kind_Report_Statement => 1590, + Iir_Kind_Wait_Statement => 1598, + Iir_Kind_Variable_Assignment_Statement => 1605, + Iir_Kind_Conditional_Variable_Assignment_Statement => 1612, + Iir_Kind_Return_Statement => 1618, + Iir_Kind_For_Loop_Statement => 1627, + Iir_Kind_While_Loop_Statement => 1636, + Iir_Kind_Next_Statement => 1643, + Iir_Kind_Exit_Statement => 1650, + Iir_Kind_Case_Statement => 1658, + Iir_Kind_Procedure_Call_Statement => 1664, + Iir_Kind_If_Statement => 1674, + Iir_Kind_Elsif => 1680, + Iir_Kind_Character_Literal => 1688, + Iir_Kind_Simple_Name => 1696, + Iir_Kind_Selected_Name => 1705, + Iir_Kind_Operator_Symbol => 1711, + Iir_Kind_Reference_Name => 1716, + Iir_Kind_External_Constant_Name => 1724, + Iir_Kind_External_Signal_Name => 1732, + Iir_Kind_External_Variable_Name => 1741, + Iir_Kind_Selected_By_All_Name => 1747, + Iir_Kind_Parenthesis_Name => 1752, + Iir_Kind_Package_Pathname => 1756, + Iir_Kind_Absolute_Pathname => 1757, + Iir_Kind_Relative_Pathname => 1758, + Iir_Kind_Pathname_Element => 1763, + Iir_Kind_Base_Attribute => 1765, + Iir_Kind_Subtype_Attribute => 1770, + Iir_Kind_Element_Attribute => 1775, + Iir_Kind_Left_Type_Attribute => 1780, + Iir_Kind_Right_Type_Attribute => 1785, + Iir_Kind_High_Type_Attribute => 1790, + Iir_Kind_Low_Type_Attribute => 1795, + Iir_Kind_Ascending_Type_Attribute => 1800, + Iir_Kind_Image_Attribute => 1806, + Iir_Kind_Value_Attribute => 1812, + Iir_Kind_Pos_Attribute => 1818, + Iir_Kind_Val_Attribute => 1824, + Iir_Kind_Succ_Attribute => 1830, + Iir_Kind_Pred_Attribute => 1836, + Iir_Kind_Leftof_Attribute => 1842, + Iir_Kind_Rightof_Attribute => 1848, + Iir_Kind_Delayed_Attribute => 1857, + Iir_Kind_Stable_Attribute => 1866, + Iir_Kind_Quiet_Attribute => 1875, + Iir_Kind_Transaction_Attribute => 1884, + Iir_Kind_Event_Attribute => 1888, + Iir_Kind_Active_Attribute => 1892, + Iir_Kind_Last_Event_Attribute => 1896, + Iir_Kind_Last_Active_Attribute => 1900, + Iir_Kind_Last_Value_Attribute => 1904, + Iir_Kind_Driving_Attribute => 1908, + Iir_Kind_Driving_Value_Attribute => 1912, + Iir_Kind_Behavior_Attribute => 1912, + Iir_Kind_Structure_Attribute => 1912, + Iir_Kind_Simple_Name_Attribute => 1919, + Iir_Kind_Instance_Name_Attribute => 1924, + Iir_Kind_Path_Name_Attribute => 1929, + Iir_Kind_Left_Array_Attribute => 1936, + Iir_Kind_Right_Array_Attribute => 1943, + Iir_Kind_High_Array_Attribute => 1950, + Iir_Kind_Low_Array_Attribute => 1957, + Iir_Kind_Length_Array_Attribute => 1964, + Iir_Kind_Ascending_Array_Attribute => 1971, + Iir_Kind_Range_Array_Attribute => 1978, + Iir_Kind_Reverse_Range_Array_Attribute => 1985, + Iir_Kind_Attribute_Name => 1994 ); function Get_Fields_First (K : Iir_Kind) return Fields_Index is @@ -7249,7 +7255,13 @@ package body Vhdl.Nodes_Meta is function Has_Architecture (K : Iir_Kind) return Boolean is begin - return K = Iir_Kind_Entity_Aspect_Entity; + case K is + when Iir_Kind_Entity_Aspect_Entity + | Iir_Kind_Psl_Hierarchical_Name => + return True; + when others => + return False; + end case; end Has_Architecture; function Has_Block_Specification (K : Iir_Kind) return Boolean is @@ -7308,6 +7320,7 @@ package body Vhdl.Nodes_Meta is begin case K is when Iir_Kind_Entity_Aspect_Entity + | Iir_Kind_Psl_Hierarchical_Name | Iir_Kind_Configuration_Declaration | Iir_Kind_Architecture_Body => return True; |