aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/nodes_meta.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2017-01-23 04:35:28 +0100
committerTristan Gingold <tgingold@free.fr>2017-01-23 04:35:28 +0100
commitd8bbd9bffcea30f71e984b7ba27769b14afe67a2 (patch)
tree3a6e420bda0803f6fc9270a09ee14058fded3710 /src/vhdl/nodes_meta.adb
parentb329c6823455e151fa85c42393973809729a1f88 (diff)
downloadghdl-d8bbd9bffcea30f71e984b7ba27769b14afe67a2.tar.gz
ghdl-d8bbd9bffcea30f71e984b7ba27769b14afe67a2.tar.bz2
ghdl-d8bbd9bffcea30f71e984b7ba27769b14afe67a2.zip
iirs: add base_element_declaration to record_element_constraint.
Diffstat (limited to 'src/vhdl/nodes_meta.adb')
-rw-r--r--src/vhdl/nodes_meta.adb461
1 files changed, 234 insertions, 227 deletions
diff --git a/src/vhdl/nodes_meta.adb b/src/vhdl/nodes_meta.adb
index 67b2290dd..b594c984e 100644
--- a/src/vhdl/nodes_meta.adb
+++ b/src/vhdl/nodes_meta.adb
@@ -2454,6 +2454,7 @@ package body Nodes_Meta is
Field_Parent,
Field_Type,
Field_Element_Declaration,
+ Field_Base_Element_Declaration,
-- Iir_Kind_Array_Element_Resolution
Field_Resolution_Indication,
Field_Element_Subtype_Indication,
@@ -4384,232 +4385,232 @@ package body Nodes_Meta is
Iir_Kind_Signature => 201,
Iir_Kind_Aggregate_Info => 208,
Iir_Kind_Procedure_Call => 212,
- Iir_Kind_Record_Element_Constraint => 218,
- Iir_Kind_Array_Element_Resolution => 220,
- Iir_Kind_Record_Resolution => 221,
- Iir_Kind_Record_Element_Resolution => 224,
- Iir_Kind_Attribute_Specification => 232,
- Iir_Kind_Disconnection_Specification => 238,
- Iir_Kind_Configuration_Specification => 244,
- Iir_Kind_Access_Type_Definition => 252,
- Iir_Kind_Incomplete_Type_Definition => 260,
- Iir_Kind_Interface_Type_Definition => 267,
- Iir_Kind_File_Type_Definition => 274,
- Iir_Kind_Protected_Type_Declaration => 283,
- Iir_Kind_Record_Type_Definition => 293,
- Iir_Kind_Array_Type_Definition => 305,
- Iir_Kind_Array_Subtype_Definition => 320,
- Iir_Kind_Record_Subtype_Definition => 331,
- Iir_Kind_Access_Subtype_Definition => 339,
- Iir_Kind_Physical_Subtype_Definition => 349,
- Iir_Kind_Floating_Subtype_Definition => 360,
- Iir_Kind_Integer_Subtype_Definition => 370,
- Iir_Kind_Enumeration_Subtype_Definition => 380,
- Iir_Kind_Enumeration_Type_Definition => 390,
- Iir_Kind_Integer_Type_Definition => 398,
- Iir_Kind_Floating_Type_Definition => 406,
- Iir_Kind_Physical_Type_Definition => 417,
- Iir_Kind_Range_Expression => 425,
- Iir_Kind_Protected_Type_Body => 432,
- Iir_Kind_Wildcard_Type_Definition => 437,
- Iir_Kind_Subtype_Definition => 442,
- Iir_Kind_Scalar_Nature_Definition => 446,
- Iir_Kind_Overload_List => 447,
- Iir_Kind_Type_Declaration => 454,
- Iir_Kind_Anonymous_Type_Declaration => 460,
- Iir_Kind_Subtype_Declaration => 467,
- Iir_Kind_Nature_Declaration => 473,
- Iir_Kind_Subnature_Declaration => 479,
- Iir_Kind_Package_Declaration => 493,
- Iir_Kind_Package_Instantiation_Declaration => 506,
- Iir_Kind_Package_Body => 514,
- Iir_Kind_Configuration_Declaration => 523,
- Iir_Kind_Entity_Declaration => 535,
- Iir_Kind_Architecture_Body => 547,
- Iir_Kind_Context_Declaration => 553,
- Iir_Kind_Package_Header => 555,
- Iir_Kind_Unit_Declaration => 563,
- Iir_Kind_Library_Declaration => 570,
- Iir_Kind_Component_Declaration => 580,
- Iir_Kind_Attribute_Declaration => 587,
- Iir_Kind_Group_Template_Declaration => 593,
- Iir_Kind_Group_Declaration => 600,
- Iir_Kind_Element_Declaration => 607,
- Iir_Kind_Non_Object_Alias_Declaration => 615,
- Iir_Kind_Psl_Declaration => 623,
- Iir_Kind_Psl_Endpoint_Declaration => 637,
- Iir_Kind_Terminal_Declaration => 643,
- Iir_Kind_Free_Quantity_Declaration => 652,
- Iir_Kind_Across_Quantity_Declaration => 664,
- Iir_Kind_Through_Quantity_Declaration => 676,
- Iir_Kind_Enumeration_Literal => 687,
- Iir_Kind_Function_Declaration => 712,
- Iir_Kind_Procedure_Declaration => 736,
- Iir_Kind_Function_Body => 746,
- Iir_Kind_Procedure_Body => 757,
- Iir_Kind_Object_Alias_Declaration => 768,
- Iir_Kind_File_Declaration => 782,
- Iir_Kind_Guard_Signal_Declaration => 795,
- Iir_Kind_Signal_Declaration => 812,
- Iir_Kind_Variable_Declaration => 825,
- Iir_Kind_Constant_Declaration => 839,
- Iir_Kind_Iterator_Declaration => 850,
- Iir_Kind_Interface_Constant_Declaration => 866,
- Iir_Kind_Interface_Variable_Declaration => 882,
- Iir_Kind_Interface_Signal_Declaration => 903,
- Iir_Kind_Interface_File_Declaration => 919,
- Iir_Kind_Interface_Type_Declaration => 929,
- Iir_Kind_Interface_Package_Declaration => 940,
- Iir_Kind_Interface_Function_Declaration => 957,
- Iir_Kind_Interface_Procedure_Declaration => 970,
- Iir_Kind_Signal_Attribute_Declaration => 973,
- Iir_Kind_Identity_Operator => 977,
- Iir_Kind_Negation_Operator => 981,
- Iir_Kind_Absolute_Operator => 985,
- Iir_Kind_Not_Operator => 989,
- Iir_Kind_Condition_Operator => 993,
- Iir_Kind_Reduction_And_Operator => 997,
- Iir_Kind_Reduction_Or_Operator => 1001,
- Iir_Kind_Reduction_Nand_Operator => 1005,
- Iir_Kind_Reduction_Nor_Operator => 1009,
- Iir_Kind_Reduction_Xor_Operator => 1013,
- Iir_Kind_Reduction_Xnor_Operator => 1017,
- Iir_Kind_And_Operator => 1022,
- Iir_Kind_Or_Operator => 1027,
- Iir_Kind_Nand_Operator => 1032,
- Iir_Kind_Nor_Operator => 1037,
- Iir_Kind_Xor_Operator => 1042,
- Iir_Kind_Xnor_Operator => 1047,
- Iir_Kind_Equality_Operator => 1052,
- Iir_Kind_Inequality_Operator => 1057,
- Iir_Kind_Less_Than_Operator => 1062,
- Iir_Kind_Less_Than_Or_Equal_Operator => 1067,
- Iir_Kind_Greater_Than_Operator => 1072,
- Iir_Kind_Greater_Than_Or_Equal_Operator => 1077,
- Iir_Kind_Match_Equality_Operator => 1082,
- Iir_Kind_Match_Inequality_Operator => 1087,
- Iir_Kind_Match_Less_Than_Operator => 1092,
- Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1097,
- Iir_Kind_Match_Greater_Than_Operator => 1102,
- Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1107,
- Iir_Kind_Sll_Operator => 1112,
- Iir_Kind_Sla_Operator => 1117,
- Iir_Kind_Srl_Operator => 1122,
- Iir_Kind_Sra_Operator => 1127,
- Iir_Kind_Rol_Operator => 1132,
- Iir_Kind_Ror_Operator => 1137,
- Iir_Kind_Addition_Operator => 1142,
- Iir_Kind_Substraction_Operator => 1147,
- Iir_Kind_Concatenation_Operator => 1152,
- Iir_Kind_Multiplication_Operator => 1157,
- Iir_Kind_Division_Operator => 1162,
- Iir_Kind_Modulus_Operator => 1167,
- Iir_Kind_Remainder_Operator => 1172,
- Iir_Kind_Exponentiation_Operator => 1177,
- Iir_Kind_Function_Call => 1185,
- Iir_Kind_Aggregate => 1192,
- Iir_Kind_Parenthesis_Expression => 1195,
- Iir_Kind_Qualified_Expression => 1199,
- Iir_Kind_Type_Conversion => 1204,
- Iir_Kind_Allocator_By_Expression => 1208,
- Iir_Kind_Allocator_By_Subtype => 1213,
- Iir_Kind_Selected_Element => 1219,
- Iir_Kind_Dereference => 1224,
- Iir_Kind_Implicit_Dereference => 1229,
- Iir_Kind_Slice_Name => 1236,
- Iir_Kind_Indexed_Name => 1242,
- Iir_Kind_Psl_Expression => 1244,
- Iir_Kind_Sensitized_Process_Statement => 1265,
- Iir_Kind_Process_Statement => 1285,
- Iir_Kind_Concurrent_Simple_Signal_Assignment => 1296,
- Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1307,
- Iir_Kind_Concurrent_Selected_Signal_Assignment => 1319,
- Iir_Kind_Concurrent_Assertion_Statement => 1327,
- Iir_Kind_Concurrent_Procedure_Call_Statement => 1334,
- Iir_Kind_Psl_Assert_Statement => 1347,
- Iir_Kind_Psl_Cover_Statement => 1360,
- Iir_Kind_Block_Statement => 1373,
- Iir_Kind_If_Generate_Statement => 1383,
- Iir_Kind_Case_Generate_Statement => 1392,
- Iir_Kind_For_Generate_Statement => 1401,
- Iir_Kind_Component_Instantiation_Statement => 1411,
- Iir_Kind_Psl_Default_Clock => 1415,
- Iir_Kind_Simple_Simultaneous_Statement => 1422,
- Iir_Kind_Generate_Statement_Body => 1433,
- Iir_Kind_If_Generate_Else_Clause => 1438,
- Iir_Kind_Simple_Signal_Assignment_Statement => 1447,
- Iir_Kind_Conditional_Signal_Assignment_Statement => 1456,
- Iir_Kind_Selected_Waveform_Assignment_Statement => 1466,
- Iir_Kind_Null_Statement => 1470,
- Iir_Kind_Assertion_Statement => 1477,
- Iir_Kind_Report_Statement => 1483,
- Iir_Kind_Wait_Statement => 1491,
- Iir_Kind_Variable_Assignment_Statement => 1497,
- Iir_Kind_Conditional_Variable_Assignment_Statement => 1503,
- Iir_Kind_Return_Statement => 1509,
- Iir_Kind_For_Loop_Statement => 1518,
- Iir_Kind_While_Loop_Statement => 1526,
- Iir_Kind_Next_Statement => 1532,
- Iir_Kind_Exit_Statement => 1538,
- Iir_Kind_Case_Statement => 1546,
- Iir_Kind_Procedure_Call_Statement => 1552,
- Iir_Kind_If_Statement => 1561,
- Iir_Kind_Elsif => 1566,
- Iir_Kind_Character_Literal => 1574,
- Iir_Kind_Simple_Name => 1582,
- Iir_Kind_Selected_Name => 1591,
- Iir_Kind_Operator_Symbol => 1597,
- Iir_Kind_Reference_Name => 1600,
- Iir_Kind_Selected_By_All_Name => 1606,
- Iir_Kind_Parenthesis_Name => 1611,
- Iir_Kind_External_Constant_Name => 1619,
- Iir_Kind_External_Signal_Name => 1627,
- Iir_Kind_External_Variable_Name => 1635,
- Iir_Kind_Package_Pathname => 1639,
- Iir_Kind_Absolute_Pathname => 1640,
- Iir_Kind_Relative_Pathname => 1641,
- Iir_Kind_Pathname_Element => 1646,
- Iir_Kind_Base_Attribute => 1648,
- Iir_Kind_Subtype_Attribute => 1653,
- Iir_Kind_Element_Attribute => 1658,
- Iir_Kind_Left_Type_Attribute => 1663,
- Iir_Kind_Right_Type_Attribute => 1668,
- Iir_Kind_High_Type_Attribute => 1673,
- Iir_Kind_Low_Type_Attribute => 1678,
- Iir_Kind_Ascending_Type_Attribute => 1683,
- Iir_Kind_Image_Attribute => 1689,
- Iir_Kind_Value_Attribute => 1695,
- Iir_Kind_Pos_Attribute => 1701,
- Iir_Kind_Val_Attribute => 1707,
- Iir_Kind_Succ_Attribute => 1713,
- Iir_Kind_Pred_Attribute => 1719,
- Iir_Kind_Leftof_Attribute => 1725,
- Iir_Kind_Rightof_Attribute => 1731,
- Iir_Kind_Delayed_Attribute => 1740,
- Iir_Kind_Stable_Attribute => 1749,
- Iir_Kind_Quiet_Attribute => 1758,
- Iir_Kind_Transaction_Attribute => 1767,
- Iir_Kind_Event_Attribute => 1771,
- Iir_Kind_Active_Attribute => 1775,
- Iir_Kind_Last_Event_Attribute => 1779,
- Iir_Kind_Last_Active_Attribute => 1783,
- Iir_Kind_Last_Value_Attribute => 1787,
- Iir_Kind_Driving_Attribute => 1791,
- Iir_Kind_Driving_Value_Attribute => 1795,
- Iir_Kind_Behavior_Attribute => 1795,
- Iir_Kind_Structure_Attribute => 1795,
- Iir_Kind_Simple_Name_Attribute => 1802,
- Iir_Kind_Instance_Name_Attribute => 1807,
- Iir_Kind_Path_Name_Attribute => 1812,
- Iir_Kind_Left_Array_Attribute => 1819,
- Iir_Kind_Right_Array_Attribute => 1826,
- Iir_Kind_High_Array_Attribute => 1833,
- Iir_Kind_Low_Array_Attribute => 1840,
- Iir_Kind_Length_Array_Attribute => 1847,
- Iir_Kind_Ascending_Array_Attribute => 1854,
- Iir_Kind_Range_Array_Attribute => 1861,
- Iir_Kind_Reverse_Range_Array_Attribute => 1868,
- Iir_Kind_Attribute_Name => 1877
+ Iir_Kind_Record_Element_Constraint => 219,
+ Iir_Kind_Array_Element_Resolution => 221,
+ Iir_Kind_Record_Resolution => 222,
+ Iir_Kind_Record_Element_Resolution => 225,
+ Iir_Kind_Attribute_Specification => 233,
+ Iir_Kind_Disconnection_Specification => 239,
+ Iir_Kind_Configuration_Specification => 245,
+ Iir_Kind_Access_Type_Definition => 253,
+ Iir_Kind_Incomplete_Type_Definition => 261,
+ Iir_Kind_Interface_Type_Definition => 268,
+ Iir_Kind_File_Type_Definition => 275,
+ Iir_Kind_Protected_Type_Declaration => 284,
+ Iir_Kind_Record_Type_Definition => 294,
+ Iir_Kind_Array_Type_Definition => 306,
+ Iir_Kind_Array_Subtype_Definition => 321,
+ Iir_Kind_Record_Subtype_Definition => 332,
+ Iir_Kind_Access_Subtype_Definition => 340,
+ Iir_Kind_Physical_Subtype_Definition => 350,
+ Iir_Kind_Floating_Subtype_Definition => 361,
+ Iir_Kind_Integer_Subtype_Definition => 371,
+ Iir_Kind_Enumeration_Subtype_Definition => 381,
+ Iir_Kind_Enumeration_Type_Definition => 391,
+ Iir_Kind_Integer_Type_Definition => 399,
+ Iir_Kind_Floating_Type_Definition => 407,
+ Iir_Kind_Physical_Type_Definition => 418,
+ Iir_Kind_Range_Expression => 426,
+ Iir_Kind_Protected_Type_Body => 433,
+ Iir_Kind_Wildcard_Type_Definition => 438,
+ Iir_Kind_Subtype_Definition => 443,
+ Iir_Kind_Scalar_Nature_Definition => 447,
+ Iir_Kind_Overload_List => 448,
+ Iir_Kind_Type_Declaration => 455,
+ Iir_Kind_Anonymous_Type_Declaration => 461,
+ Iir_Kind_Subtype_Declaration => 468,
+ Iir_Kind_Nature_Declaration => 474,
+ Iir_Kind_Subnature_Declaration => 480,
+ Iir_Kind_Package_Declaration => 494,
+ Iir_Kind_Package_Instantiation_Declaration => 507,
+ Iir_Kind_Package_Body => 515,
+ Iir_Kind_Configuration_Declaration => 524,
+ Iir_Kind_Entity_Declaration => 536,
+ Iir_Kind_Architecture_Body => 548,
+ Iir_Kind_Context_Declaration => 554,
+ Iir_Kind_Package_Header => 556,
+ Iir_Kind_Unit_Declaration => 564,
+ Iir_Kind_Library_Declaration => 571,
+ Iir_Kind_Component_Declaration => 581,
+ Iir_Kind_Attribute_Declaration => 588,
+ Iir_Kind_Group_Template_Declaration => 594,
+ Iir_Kind_Group_Declaration => 601,
+ Iir_Kind_Element_Declaration => 608,
+ Iir_Kind_Non_Object_Alias_Declaration => 616,
+ Iir_Kind_Psl_Declaration => 624,
+ Iir_Kind_Psl_Endpoint_Declaration => 638,
+ Iir_Kind_Terminal_Declaration => 644,
+ Iir_Kind_Free_Quantity_Declaration => 653,
+ Iir_Kind_Across_Quantity_Declaration => 665,
+ Iir_Kind_Through_Quantity_Declaration => 677,
+ Iir_Kind_Enumeration_Literal => 688,
+ Iir_Kind_Function_Declaration => 713,
+ Iir_Kind_Procedure_Declaration => 737,
+ Iir_Kind_Function_Body => 747,
+ Iir_Kind_Procedure_Body => 758,
+ Iir_Kind_Object_Alias_Declaration => 769,
+ Iir_Kind_File_Declaration => 783,
+ Iir_Kind_Guard_Signal_Declaration => 796,
+ Iir_Kind_Signal_Declaration => 813,
+ Iir_Kind_Variable_Declaration => 826,
+ Iir_Kind_Constant_Declaration => 840,
+ Iir_Kind_Iterator_Declaration => 851,
+ Iir_Kind_Interface_Constant_Declaration => 867,
+ Iir_Kind_Interface_Variable_Declaration => 883,
+ Iir_Kind_Interface_Signal_Declaration => 904,
+ Iir_Kind_Interface_File_Declaration => 920,
+ Iir_Kind_Interface_Type_Declaration => 930,
+ Iir_Kind_Interface_Package_Declaration => 941,
+ Iir_Kind_Interface_Function_Declaration => 958,
+ Iir_Kind_Interface_Procedure_Declaration => 971,
+ Iir_Kind_Signal_Attribute_Declaration => 974,
+ Iir_Kind_Identity_Operator => 978,
+ Iir_Kind_Negation_Operator => 982,
+ Iir_Kind_Absolute_Operator => 986,
+ Iir_Kind_Not_Operator => 990,
+ Iir_Kind_Condition_Operator => 994,
+ Iir_Kind_Reduction_And_Operator => 998,
+ Iir_Kind_Reduction_Or_Operator => 1002,
+ Iir_Kind_Reduction_Nand_Operator => 1006,
+ Iir_Kind_Reduction_Nor_Operator => 1010,
+ Iir_Kind_Reduction_Xor_Operator => 1014,
+ Iir_Kind_Reduction_Xnor_Operator => 1018,
+ Iir_Kind_And_Operator => 1023,
+ Iir_Kind_Or_Operator => 1028,
+ Iir_Kind_Nand_Operator => 1033,
+ Iir_Kind_Nor_Operator => 1038,
+ Iir_Kind_Xor_Operator => 1043,
+ Iir_Kind_Xnor_Operator => 1048,
+ Iir_Kind_Equality_Operator => 1053,
+ Iir_Kind_Inequality_Operator => 1058,
+ Iir_Kind_Less_Than_Operator => 1063,
+ Iir_Kind_Less_Than_Or_Equal_Operator => 1068,
+ Iir_Kind_Greater_Than_Operator => 1073,
+ Iir_Kind_Greater_Than_Or_Equal_Operator => 1078,
+ Iir_Kind_Match_Equality_Operator => 1083,
+ Iir_Kind_Match_Inequality_Operator => 1088,
+ Iir_Kind_Match_Less_Than_Operator => 1093,
+ Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1098,
+ Iir_Kind_Match_Greater_Than_Operator => 1103,
+ Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1108,
+ Iir_Kind_Sll_Operator => 1113,
+ Iir_Kind_Sla_Operator => 1118,
+ Iir_Kind_Srl_Operator => 1123,
+ Iir_Kind_Sra_Operator => 1128,
+ Iir_Kind_Rol_Operator => 1133,
+ Iir_Kind_Ror_Operator => 1138,
+ Iir_Kind_Addition_Operator => 1143,
+ Iir_Kind_Substraction_Operator => 1148,
+ Iir_Kind_Concatenation_Operator => 1153,
+ Iir_Kind_Multiplication_Operator => 1158,
+ Iir_Kind_Division_Operator => 1163,
+ Iir_Kind_Modulus_Operator => 1168,
+ Iir_Kind_Remainder_Operator => 1173,
+ Iir_Kind_Exponentiation_Operator => 1178,
+ Iir_Kind_Function_Call => 1186,
+ Iir_Kind_Aggregate => 1193,
+ Iir_Kind_Parenthesis_Expression => 1196,
+ Iir_Kind_Qualified_Expression => 1200,
+ Iir_Kind_Type_Conversion => 1205,
+ Iir_Kind_Allocator_By_Expression => 1209,
+ Iir_Kind_Allocator_By_Subtype => 1214,
+ Iir_Kind_Selected_Element => 1220,
+ Iir_Kind_Dereference => 1225,
+ Iir_Kind_Implicit_Dereference => 1230,
+ Iir_Kind_Slice_Name => 1237,
+ Iir_Kind_Indexed_Name => 1243,
+ Iir_Kind_Psl_Expression => 1245,
+ Iir_Kind_Sensitized_Process_Statement => 1266,
+ Iir_Kind_Process_Statement => 1286,
+ Iir_Kind_Concurrent_Simple_Signal_Assignment => 1297,
+ Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1308,
+ Iir_Kind_Concurrent_Selected_Signal_Assignment => 1320,
+ Iir_Kind_Concurrent_Assertion_Statement => 1328,
+ Iir_Kind_Concurrent_Procedure_Call_Statement => 1335,
+ Iir_Kind_Psl_Assert_Statement => 1348,
+ Iir_Kind_Psl_Cover_Statement => 1361,
+ Iir_Kind_Block_Statement => 1374,
+ Iir_Kind_If_Generate_Statement => 1384,
+ Iir_Kind_Case_Generate_Statement => 1393,
+ Iir_Kind_For_Generate_Statement => 1402,
+ Iir_Kind_Component_Instantiation_Statement => 1412,
+ Iir_Kind_Psl_Default_Clock => 1416,
+ Iir_Kind_Simple_Simultaneous_Statement => 1423,
+ Iir_Kind_Generate_Statement_Body => 1434,
+ Iir_Kind_If_Generate_Else_Clause => 1439,
+ Iir_Kind_Simple_Signal_Assignment_Statement => 1448,
+ Iir_Kind_Conditional_Signal_Assignment_Statement => 1457,
+ Iir_Kind_Selected_Waveform_Assignment_Statement => 1467,
+ Iir_Kind_Null_Statement => 1471,
+ Iir_Kind_Assertion_Statement => 1478,
+ Iir_Kind_Report_Statement => 1484,
+ Iir_Kind_Wait_Statement => 1492,
+ Iir_Kind_Variable_Assignment_Statement => 1498,
+ Iir_Kind_Conditional_Variable_Assignment_Statement => 1504,
+ Iir_Kind_Return_Statement => 1510,
+ Iir_Kind_For_Loop_Statement => 1519,
+ Iir_Kind_While_Loop_Statement => 1527,
+ Iir_Kind_Next_Statement => 1533,
+ Iir_Kind_Exit_Statement => 1539,
+ Iir_Kind_Case_Statement => 1547,
+ Iir_Kind_Procedure_Call_Statement => 1553,
+ Iir_Kind_If_Statement => 1562,
+ Iir_Kind_Elsif => 1567,
+ Iir_Kind_Character_Literal => 1575,
+ Iir_Kind_Simple_Name => 1583,
+ Iir_Kind_Selected_Name => 1592,
+ Iir_Kind_Operator_Symbol => 1598,
+ Iir_Kind_Reference_Name => 1601,
+ Iir_Kind_Selected_By_All_Name => 1607,
+ Iir_Kind_Parenthesis_Name => 1612,
+ Iir_Kind_External_Constant_Name => 1620,
+ Iir_Kind_External_Signal_Name => 1628,
+ Iir_Kind_External_Variable_Name => 1636,
+ Iir_Kind_Package_Pathname => 1640,
+ Iir_Kind_Absolute_Pathname => 1641,
+ Iir_Kind_Relative_Pathname => 1642,
+ Iir_Kind_Pathname_Element => 1647,
+ Iir_Kind_Base_Attribute => 1649,
+ Iir_Kind_Subtype_Attribute => 1654,
+ Iir_Kind_Element_Attribute => 1659,
+ Iir_Kind_Left_Type_Attribute => 1664,
+ Iir_Kind_Right_Type_Attribute => 1669,
+ Iir_Kind_High_Type_Attribute => 1674,
+ Iir_Kind_Low_Type_Attribute => 1679,
+ Iir_Kind_Ascending_Type_Attribute => 1684,
+ Iir_Kind_Image_Attribute => 1690,
+ Iir_Kind_Value_Attribute => 1696,
+ Iir_Kind_Pos_Attribute => 1702,
+ Iir_Kind_Val_Attribute => 1708,
+ Iir_Kind_Succ_Attribute => 1714,
+ Iir_Kind_Pred_Attribute => 1720,
+ Iir_Kind_Leftof_Attribute => 1726,
+ Iir_Kind_Rightof_Attribute => 1732,
+ Iir_Kind_Delayed_Attribute => 1741,
+ Iir_Kind_Stable_Attribute => 1750,
+ Iir_Kind_Quiet_Attribute => 1759,
+ Iir_Kind_Transaction_Attribute => 1768,
+ Iir_Kind_Event_Attribute => 1772,
+ Iir_Kind_Active_Attribute => 1776,
+ Iir_Kind_Last_Event_Attribute => 1780,
+ Iir_Kind_Last_Active_Attribute => 1784,
+ Iir_Kind_Last_Value_Attribute => 1788,
+ Iir_Kind_Driving_Attribute => 1792,
+ Iir_Kind_Driving_Value_Attribute => 1796,
+ Iir_Kind_Behavior_Attribute => 1796,
+ Iir_Kind_Structure_Attribute => 1796,
+ Iir_Kind_Simple_Name_Attribute => 1803,
+ Iir_Kind_Instance_Name_Attribute => 1808,
+ Iir_Kind_Path_Name_Attribute => 1813,
+ Iir_Kind_Left_Array_Attribute => 1820,
+ Iir_Kind_Right_Array_Attribute => 1827,
+ Iir_Kind_High_Array_Attribute => 1834,
+ Iir_Kind_Low_Array_Attribute => 1841,
+ Iir_Kind_Length_Array_Attribute => 1848,
+ Iir_Kind_Ascending_Array_Attribute => 1855,
+ Iir_Kind_Range_Array_Attribute => 1862,
+ Iir_Kind_Reverse_Range_Array_Attribute => 1869,
+ Iir_Kind_Attribute_Name => 1878
);
function Get_Fields (K : Iir_Kind) return Fields_Array
@@ -7795,7 +7796,13 @@ package body Nodes_Meta is
function Has_Base_Element_Declaration (K : Iir_Kind) return Boolean is
begin
- return K = Iir_Kind_Element_Declaration;
+ case K is
+ when Iir_Kind_Record_Element_Constraint
+ | Iir_Kind_Element_Declaration =>
+ return True;
+ when others =>
+ return False;
+ end case;
end Has_Base_Element_Declaration;
function Has_Element_Declaration (K : Iir_Kind) return Boolean is