diff options
author | Tristan Gingold | 2015-08-29 07:57:12 +0200 |
---|---|---|
committer | Tristan Gingold | 2015-08-29 07:57:12 +0200 |
commit | b75d703676ab830ea3e5731e1965d1d89879a456 (patch) | |
tree | 1a0a21ba1cce6385715bd2823853ee4ad47905ee /src/vhdl/nodes_meta.adb | |
parent | 64fa65e1395bef4f05c51bc19d9a46d6003339ee (diff) | |
download | ghdl-b75d703676ab830ea3e5731e1965d1d89879a456.tar.gz ghdl-b75d703676ab830ea3e5731e1965d1d89879a456.tar.bz2 ghdl-b75d703676ab830ea3e5731e1965d1d89879a456.zip |
Replace fat accesses by bounds accesses
translate: separate info for signals from object.
Improve some error messages.
Diffstat (limited to 'src/vhdl/nodes_meta.adb')
-rw-r--r-- | src/vhdl/nodes_meta.adb | 182 |
1 files changed, 92 insertions, 90 deletions
diff --git a/src/vhdl/nodes_meta.adb b/src/vhdl/nodes_meta.adb index c10ad33..3dbef4c 100644 --- a/src/vhdl/nodes_meta.adb +++ b/src/vhdl/nodes_meta.adb @@ -3276,6 +3276,7 @@ package body Nodes_Meta is Field_Type, Field_Allocator_Designated_Type, -- Iir_Kind_Allocator_By_Subtype + Field_Is_Ref, Field_Expr_Staticness, Field_Subtype_Indication, Field_Type, @@ -4118,96 +4119,96 @@ package body Nodes_Meta is Iir_Kind_Qualified_Expression => 1082, Iir_Kind_Type_Conversion => 1087, Iir_Kind_Allocator_By_Expression => 1091, - Iir_Kind_Allocator_By_Subtype => 1095, - Iir_Kind_Selected_Element => 1101, - Iir_Kind_Dereference => 1106, - Iir_Kind_Implicit_Dereference => 1111, - Iir_Kind_Slice_Name => 1118, - Iir_Kind_Indexed_Name => 1124, - Iir_Kind_Psl_Expression => 1126, - Iir_Kind_Sensitized_Process_Statement => 1146, - Iir_Kind_Process_Statement => 1166, - Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1177, - Iir_Kind_Concurrent_Selected_Signal_Assignment => 1189, - Iir_Kind_Concurrent_Assertion_Statement => 1197, - Iir_Kind_Psl_Default_Clock => 1201, - Iir_Kind_Psl_Assert_Statement => 1210, - Iir_Kind_Psl_Cover_Statement => 1219, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1226, - Iir_Kind_Block_Statement => 1239, - Iir_Kind_If_Generate_Statement => 1249, - Iir_Kind_For_Generate_Statement => 1258, - Iir_Kind_Component_Instantiation_Statement => 1268, - Iir_Kind_Simple_Simultaneous_Statement => 1275, - Iir_Kind_Generate_Statement_Body => 1286, - Iir_Kind_If_Generate_Else_Clause => 1291, - Iir_Kind_Signal_Assignment_Statement => 1300, - Iir_Kind_Null_Statement => 1304, - Iir_Kind_Assertion_Statement => 1311, - Iir_Kind_Report_Statement => 1317, - Iir_Kind_Wait_Statement => 1324, - Iir_Kind_Variable_Assignment_Statement => 1330, - Iir_Kind_Return_Statement => 1336, - Iir_Kind_For_Loop_Statement => 1345, - Iir_Kind_While_Loop_Statement => 1353, - Iir_Kind_Next_Statement => 1359, - Iir_Kind_Exit_Statement => 1365, - Iir_Kind_Case_Statement => 1373, - Iir_Kind_Procedure_Call_Statement => 1379, - Iir_Kind_If_Statement => 1388, - Iir_Kind_Elsif => 1393, - Iir_Kind_Character_Literal => 1400, - Iir_Kind_Simple_Name => 1407, - Iir_Kind_Selected_Name => 1415, - Iir_Kind_Operator_Symbol => 1420, - Iir_Kind_Selected_By_All_Name => 1425, - Iir_Kind_Parenthesis_Name => 1429, - Iir_Kind_External_Constant_Name => 1438, - Iir_Kind_External_Signal_Name => 1447, - Iir_Kind_External_Variable_Name => 1456, - Iir_Kind_Package_Pathname => 1459, - Iir_Kind_Absolute_Pathname => 1460, - Iir_Kind_Relative_Pathname => 1461, - Iir_Kind_Pathname_Element => 1465, - Iir_Kind_Base_Attribute => 1467, - Iir_Kind_Left_Type_Attribute => 1472, - Iir_Kind_Right_Type_Attribute => 1477, - Iir_Kind_High_Type_Attribute => 1482, - Iir_Kind_Low_Type_Attribute => 1487, - Iir_Kind_Ascending_Type_Attribute => 1492, - Iir_Kind_Image_Attribute => 1498, - Iir_Kind_Value_Attribute => 1504, - Iir_Kind_Pos_Attribute => 1510, - Iir_Kind_Val_Attribute => 1516, - Iir_Kind_Succ_Attribute => 1522, - Iir_Kind_Pred_Attribute => 1528, - Iir_Kind_Leftof_Attribute => 1534, - Iir_Kind_Rightof_Attribute => 1540, - Iir_Kind_Delayed_Attribute => 1548, - Iir_Kind_Stable_Attribute => 1556, - Iir_Kind_Quiet_Attribute => 1564, - Iir_Kind_Transaction_Attribute => 1572, - Iir_Kind_Event_Attribute => 1576, - Iir_Kind_Active_Attribute => 1580, - Iir_Kind_Last_Event_Attribute => 1584, - Iir_Kind_Last_Active_Attribute => 1588, - Iir_Kind_Last_Value_Attribute => 1592, - Iir_Kind_Driving_Attribute => 1596, - Iir_Kind_Driving_Value_Attribute => 1600, - Iir_Kind_Behavior_Attribute => 1600, - Iir_Kind_Structure_Attribute => 1600, - Iir_Kind_Simple_Name_Attribute => 1607, - Iir_Kind_Instance_Name_Attribute => 1612, - Iir_Kind_Path_Name_Attribute => 1617, - Iir_Kind_Left_Array_Attribute => 1624, - Iir_Kind_Right_Array_Attribute => 1631, - Iir_Kind_High_Array_Attribute => 1638, - Iir_Kind_Low_Array_Attribute => 1645, - Iir_Kind_Length_Array_Attribute => 1652, - Iir_Kind_Ascending_Array_Attribute => 1659, - Iir_Kind_Range_Array_Attribute => 1666, - Iir_Kind_Reverse_Range_Array_Attribute => 1673, - Iir_Kind_Attribute_Name => 1681 + Iir_Kind_Allocator_By_Subtype => 1096, + Iir_Kind_Selected_Element => 1102, + Iir_Kind_Dereference => 1107, + Iir_Kind_Implicit_Dereference => 1112, + Iir_Kind_Slice_Name => 1119, + Iir_Kind_Indexed_Name => 1125, + Iir_Kind_Psl_Expression => 1127, + Iir_Kind_Sensitized_Process_Statement => 1147, + Iir_Kind_Process_Statement => 1167, + Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1178, + Iir_Kind_Concurrent_Selected_Signal_Assignment => 1190, + Iir_Kind_Concurrent_Assertion_Statement => 1198, + Iir_Kind_Psl_Default_Clock => 1202, + Iir_Kind_Psl_Assert_Statement => 1211, + Iir_Kind_Psl_Cover_Statement => 1220, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1227, + Iir_Kind_Block_Statement => 1240, + Iir_Kind_If_Generate_Statement => 1250, + Iir_Kind_For_Generate_Statement => 1259, + Iir_Kind_Component_Instantiation_Statement => 1269, + Iir_Kind_Simple_Simultaneous_Statement => 1276, + Iir_Kind_Generate_Statement_Body => 1287, + Iir_Kind_If_Generate_Else_Clause => 1292, + Iir_Kind_Signal_Assignment_Statement => 1301, + Iir_Kind_Null_Statement => 1305, + Iir_Kind_Assertion_Statement => 1312, + Iir_Kind_Report_Statement => 1318, + Iir_Kind_Wait_Statement => 1325, + Iir_Kind_Variable_Assignment_Statement => 1331, + Iir_Kind_Return_Statement => 1337, + Iir_Kind_For_Loop_Statement => 1346, + Iir_Kind_While_Loop_Statement => 1354, + Iir_Kind_Next_Statement => 1360, + Iir_Kind_Exit_Statement => 1366, + Iir_Kind_Case_Statement => 1374, + Iir_Kind_Procedure_Call_Statement => 1380, + Iir_Kind_If_Statement => 1389, + Iir_Kind_Elsif => 1394, + Iir_Kind_Character_Literal => 1401, + Iir_Kind_Simple_Name => 1408, + Iir_Kind_Selected_Name => 1416, + Iir_Kind_Operator_Symbol => 1421, + Iir_Kind_Selected_By_All_Name => 1426, + Iir_Kind_Parenthesis_Name => 1430, + Iir_Kind_External_Constant_Name => 1439, + Iir_Kind_External_Signal_Name => 1448, + Iir_Kind_External_Variable_Name => 1457, + Iir_Kind_Package_Pathname => 1460, + Iir_Kind_Absolute_Pathname => 1461, + Iir_Kind_Relative_Pathname => 1462, + Iir_Kind_Pathname_Element => 1466, + Iir_Kind_Base_Attribute => 1468, + Iir_Kind_Left_Type_Attribute => 1473, + Iir_Kind_Right_Type_Attribute => 1478, + Iir_Kind_High_Type_Attribute => 1483, + Iir_Kind_Low_Type_Attribute => 1488, + Iir_Kind_Ascending_Type_Attribute => 1493, + Iir_Kind_Image_Attribute => 1499, + Iir_Kind_Value_Attribute => 1505, + Iir_Kind_Pos_Attribute => 1511, + Iir_Kind_Val_Attribute => 1517, + Iir_Kind_Succ_Attribute => 1523, + Iir_Kind_Pred_Attribute => 1529, + Iir_Kind_Leftof_Attribute => 1535, + Iir_Kind_Rightof_Attribute => 1541, + Iir_Kind_Delayed_Attribute => 1549, + Iir_Kind_Stable_Attribute => 1557, + Iir_Kind_Quiet_Attribute => 1565, + Iir_Kind_Transaction_Attribute => 1573, + Iir_Kind_Event_Attribute => 1577, + Iir_Kind_Active_Attribute => 1581, + Iir_Kind_Last_Event_Attribute => 1585, + Iir_Kind_Last_Active_Attribute => 1589, + Iir_Kind_Last_Value_Attribute => 1593, + Iir_Kind_Driving_Attribute => 1597, + Iir_Kind_Driving_Value_Attribute => 1601, + Iir_Kind_Behavior_Attribute => 1601, + Iir_Kind_Structure_Attribute => 1601, + Iir_Kind_Simple_Name_Attribute => 1608, + Iir_Kind_Instance_Name_Attribute => 1613, + Iir_Kind_Path_Name_Attribute => 1618, + Iir_Kind_Left_Array_Attribute => 1625, + Iir_Kind_Right_Array_Attribute => 1632, + Iir_Kind_High_Array_Attribute => 1639, + Iir_Kind_Low_Array_Attribute => 1646, + Iir_Kind_Length_Array_Attribute => 1653, + Iir_Kind_Ascending_Array_Attribute => 1660, + Iir_Kind_Range_Array_Attribute => 1667, + Iir_Kind_Reverse_Range_Array_Attribute => 1674, + Iir_Kind_Attribute_Name => 1682 ); function Get_Fields (K : Iir_Kind) return Fields_Array @@ -9588,6 +9589,7 @@ package body Nodes_Meta is | Iir_Kind_Interface_Variable_Declaration | Iir_Kind_Interface_Signal_Declaration | Iir_Kind_Interface_File_Declaration + | Iir_Kind_Allocator_By_Subtype | Iir_Kind_External_Constant_Name | Iir_Kind_External_Signal_Name | Iir_Kind_External_Variable_Name => |