diff options
author | Tristan Gingold <tgingold@free.fr> | 2016-08-27 16:55:58 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2016-08-27 16:55:58 +0200 |
commit | ad44f06c82d3a6f7a520e78a93d542b034579155 (patch) | |
tree | 8eaef96bdf41f3996bac5b582a4f999ecdee377c /src/vhdl/nodes_meta.adb | |
parent | 5dbdac34315ff4be500394903788c430ff9988a5 (diff) | |
download | ghdl-ad44f06c82d3a6f7a520e78a93d542b034579155.tar.gz ghdl-ad44f06c82d3a6f7a520e78a93d542b034579155.tar.bz2 ghdl-ad44f06c82d3a6f7a520e78a93d542b034579155.zip |
Avoid a crash with postponed assertions in vhdl08
Diffstat (limited to 'src/vhdl/nodes_meta.adb')
-rw-r--r-- | src/vhdl/nodes_meta.adb | 164 |
1 files changed, 84 insertions, 80 deletions
diff --git a/src/vhdl/nodes_meta.adb b/src/vhdl/nodes_meta.adb index ed62794cb..8145a986d 100644 --- a/src/vhdl/nodes_meta.adb +++ b/src/vhdl/nodes_meta.adb @@ -3507,6 +3507,7 @@ package body Nodes_Meta is Field_PSL_NFA, Field_PSL_Nbr_States, Field_PSL_EOS_Flag, + Field_Postponed_Flag, Field_Visible_Flag, Field_PSL_Clock_Sensitivity, Field_Chain, @@ -3520,6 +3521,7 @@ package body Nodes_Meta is Field_PSL_NFA, Field_PSL_Nbr_States, Field_PSL_EOS_Flag, + Field_Postponed_Flag, Field_Visible_Flag, Field_PSL_Clock_Sensitivity, Field_Chain, @@ -4270,86 +4272,86 @@ package body Nodes_Meta is Iir_Kind_Concurrent_Selected_Signal_Assignment => 1228, Iir_Kind_Concurrent_Assertion_Statement => 1236, Iir_Kind_Psl_Default_Clock => 1240, - Iir_Kind_Psl_Assert_Statement => 1252, - Iir_Kind_Psl_Cover_Statement => 1264, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1271, - Iir_Kind_Block_Statement => 1284, - Iir_Kind_If_Generate_Statement => 1294, - Iir_Kind_Case_Generate_Statement => 1303, - Iir_Kind_For_Generate_Statement => 1312, - Iir_Kind_Component_Instantiation_Statement => 1322, - Iir_Kind_Simple_Simultaneous_Statement => 1329, - Iir_Kind_Generate_Statement_Body => 1340, - Iir_Kind_If_Generate_Else_Clause => 1345, - Iir_Kind_Simple_Signal_Assignment_Statement => 1354, - Iir_Kind_Conditional_Signal_Assignment_Statement => 1363, - Iir_Kind_Null_Statement => 1367, - Iir_Kind_Assertion_Statement => 1374, - Iir_Kind_Report_Statement => 1380, - Iir_Kind_Wait_Statement => 1387, - Iir_Kind_Variable_Assignment_Statement => 1393, - Iir_Kind_Conditional_Variable_Assignment_Statement => 1399, - Iir_Kind_Return_Statement => 1405, - Iir_Kind_For_Loop_Statement => 1414, - Iir_Kind_While_Loop_Statement => 1422, - Iir_Kind_Next_Statement => 1428, - Iir_Kind_Exit_Statement => 1434, - Iir_Kind_Case_Statement => 1442, - Iir_Kind_Procedure_Call_Statement => 1448, - Iir_Kind_If_Statement => 1457, - Iir_Kind_Elsif => 1462, - Iir_Kind_Character_Literal => 1469, - Iir_Kind_Simple_Name => 1476, - Iir_Kind_Selected_Name => 1484, - Iir_Kind_Operator_Symbol => 1489, - Iir_Kind_Selected_By_All_Name => 1494, - Iir_Kind_Parenthesis_Name => 1498, - Iir_Kind_External_Constant_Name => 1507, - Iir_Kind_External_Signal_Name => 1516, - Iir_Kind_External_Variable_Name => 1525, - Iir_Kind_Package_Pathname => 1528, - Iir_Kind_Absolute_Pathname => 1529, - Iir_Kind_Relative_Pathname => 1530, - Iir_Kind_Pathname_Element => 1534, - Iir_Kind_Base_Attribute => 1536, - Iir_Kind_Left_Type_Attribute => 1541, - Iir_Kind_Right_Type_Attribute => 1546, - Iir_Kind_High_Type_Attribute => 1551, - Iir_Kind_Low_Type_Attribute => 1556, - Iir_Kind_Ascending_Type_Attribute => 1561, - Iir_Kind_Image_Attribute => 1567, - Iir_Kind_Value_Attribute => 1573, - Iir_Kind_Pos_Attribute => 1579, - Iir_Kind_Val_Attribute => 1585, - Iir_Kind_Succ_Attribute => 1591, - Iir_Kind_Pred_Attribute => 1597, - Iir_Kind_Leftof_Attribute => 1603, - Iir_Kind_Rightof_Attribute => 1609, - Iir_Kind_Delayed_Attribute => 1617, - Iir_Kind_Stable_Attribute => 1625, - Iir_Kind_Quiet_Attribute => 1633, - Iir_Kind_Transaction_Attribute => 1641, - Iir_Kind_Event_Attribute => 1645, - Iir_Kind_Active_Attribute => 1649, - Iir_Kind_Last_Event_Attribute => 1653, - Iir_Kind_Last_Active_Attribute => 1657, - Iir_Kind_Last_Value_Attribute => 1661, - Iir_Kind_Driving_Attribute => 1665, - Iir_Kind_Driving_Value_Attribute => 1669, - Iir_Kind_Behavior_Attribute => 1669, - Iir_Kind_Structure_Attribute => 1669, - Iir_Kind_Simple_Name_Attribute => 1676, - Iir_Kind_Instance_Name_Attribute => 1681, - Iir_Kind_Path_Name_Attribute => 1686, - Iir_Kind_Left_Array_Attribute => 1693, - Iir_Kind_Right_Array_Attribute => 1700, - Iir_Kind_High_Array_Attribute => 1707, - Iir_Kind_Low_Array_Attribute => 1714, - Iir_Kind_Length_Array_Attribute => 1721, - Iir_Kind_Ascending_Array_Attribute => 1728, - Iir_Kind_Range_Array_Attribute => 1735, - Iir_Kind_Reverse_Range_Array_Attribute => 1742, - Iir_Kind_Attribute_Name => 1750 + Iir_Kind_Psl_Assert_Statement => 1253, + Iir_Kind_Psl_Cover_Statement => 1266, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1273, + Iir_Kind_Block_Statement => 1286, + Iir_Kind_If_Generate_Statement => 1296, + Iir_Kind_Case_Generate_Statement => 1305, + Iir_Kind_For_Generate_Statement => 1314, + Iir_Kind_Component_Instantiation_Statement => 1324, + Iir_Kind_Simple_Simultaneous_Statement => 1331, + Iir_Kind_Generate_Statement_Body => 1342, + Iir_Kind_If_Generate_Else_Clause => 1347, + Iir_Kind_Simple_Signal_Assignment_Statement => 1356, + Iir_Kind_Conditional_Signal_Assignment_Statement => 1365, + Iir_Kind_Null_Statement => 1369, + Iir_Kind_Assertion_Statement => 1376, + Iir_Kind_Report_Statement => 1382, + Iir_Kind_Wait_Statement => 1389, + Iir_Kind_Variable_Assignment_Statement => 1395, + Iir_Kind_Conditional_Variable_Assignment_Statement => 1401, + Iir_Kind_Return_Statement => 1407, + Iir_Kind_For_Loop_Statement => 1416, + Iir_Kind_While_Loop_Statement => 1424, + Iir_Kind_Next_Statement => 1430, + Iir_Kind_Exit_Statement => 1436, + Iir_Kind_Case_Statement => 1444, + Iir_Kind_Procedure_Call_Statement => 1450, + Iir_Kind_If_Statement => 1459, + Iir_Kind_Elsif => 1464, + Iir_Kind_Character_Literal => 1471, + Iir_Kind_Simple_Name => 1478, + Iir_Kind_Selected_Name => 1486, + Iir_Kind_Operator_Symbol => 1491, + Iir_Kind_Selected_By_All_Name => 1496, + Iir_Kind_Parenthesis_Name => 1500, + Iir_Kind_External_Constant_Name => 1509, + Iir_Kind_External_Signal_Name => 1518, + Iir_Kind_External_Variable_Name => 1527, + Iir_Kind_Package_Pathname => 1530, + Iir_Kind_Absolute_Pathname => 1531, + Iir_Kind_Relative_Pathname => 1532, + Iir_Kind_Pathname_Element => 1536, + Iir_Kind_Base_Attribute => 1538, + Iir_Kind_Left_Type_Attribute => 1543, + Iir_Kind_Right_Type_Attribute => 1548, + Iir_Kind_High_Type_Attribute => 1553, + Iir_Kind_Low_Type_Attribute => 1558, + Iir_Kind_Ascending_Type_Attribute => 1563, + Iir_Kind_Image_Attribute => 1569, + Iir_Kind_Value_Attribute => 1575, + Iir_Kind_Pos_Attribute => 1581, + Iir_Kind_Val_Attribute => 1587, + Iir_Kind_Succ_Attribute => 1593, + Iir_Kind_Pred_Attribute => 1599, + Iir_Kind_Leftof_Attribute => 1605, + Iir_Kind_Rightof_Attribute => 1611, + Iir_Kind_Delayed_Attribute => 1619, + Iir_Kind_Stable_Attribute => 1627, + Iir_Kind_Quiet_Attribute => 1635, + Iir_Kind_Transaction_Attribute => 1643, + Iir_Kind_Event_Attribute => 1647, + Iir_Kind_Active_Attribute => 1651, + Iir_Kind_Last_Event_Attribute => 1655, + Iir_Kind_Last_Active_Attribute => 1659, + Iir_Kind_Last_Value_Attribute => 1663, + Iir_Kind_Driving_Attribute => 1667, + Iir_Kind_Driving_Value_Attribute => 1671, + Iir_Kind_Behavior_Attribute => 1671, + Iir_Kind_Structure_Attribute => 1671, + Iir_Kind_Simple_Name_Attribute => 1678, + Iir_Kind_Instance_Name_Attribute => 1683, + Iir_Kind_Path_Name_Attribute => 1688, + Iir_Kind_Left_Array_Attribute => 1695, + Iir_Kind_Right_Array_Attribute => 1702, + Iir_Kind_High_Array_Attribute => 1709, + Iir_Kind_Low_Array_Attribute => 1716, + Iir_Kind_Length_Array_Attribute => 1723, + Iir_Kind_Ascending_Array_Attribute => 1730, + Iir_Kind_Range_Array_Attribute => 1737, + Iir_Kind_Reverse_Range_Array_Attribute => 1744, + Iir_Kind_Attribute_Name => 1752 ); function Get_Fields (K : Iir_Kind) return Fields_Array @@ -8104,6 +8106,8 @@ package body Nodes_Meta is | Iir_Kind_Concurrent_Conditional_Signal_Assignment | Iir_Kind_Concurrent_Selected_Signal_Assignment | Iir_Kind_Concurrent_Assertion_Statement + | Iir_Kind_Psl_Assert_Statement + | Iir_Kind_Psl_Cover_Statement | Iir_Kind_Concurrent_Procedure_Call_Statement => return True; when others => |