aboutsummaryrefslogtreecommitdiffstats
path: root/evaluation.adb
diff options
context:
space:
mode:
authorgingold <gingold@b72b5c32-5f01-0410-b925-b5c7b92870f7>2008-04-09 04:01:16 +0000
committergingold <gingold@b72b5c32-5f01-0410-b925-b5c7b92870f7>2008-04-09 04:01:16 +0000
commitf63038518ec0b89eb6170e372a2ad5d0a24d30d3 (patch)
treec2155355116acf3f90a2ff0079423cba36b6050d /evaluation.adb
parenteb4d862a6b8ac3991dac9a8bc2fb0b9d9830e951 (diff)
downloadghdl-f63038518ec0b89eb6170e372a2ad5d0a24d30d3.tar.gz
ghdl-f63038518ec0b89eb6170e372a2ad5d0a24d30d3.tar.bz2
ghdl-f63038518ec0b89eb6170e372a2ad5d0a24d30d3.zip
Improve macosX support.
Fix crashes in error handling.
Diffstat (limited to 'evaluation.adb')
-rw-r--r--evaluation.adb6
1 files changed, 6 insertions, 0 deletions
diff --git a/evaluation.adb b/evaluation.adb
index 44d7b4f3b..495e59abe 100644
--- a/evaluation.adb
+++ b/evaluation.adb
@@ -2020,6 +2020,10 @@ package body Evaluation is
-- Should check L <= R or L >= R according to direction.
--return Eval_Is_In_Bound (Get_Left_Limit (A_Range), Sub_Type)
-- and then Eval_Is_In_Bound (Get_Right_Limit (A_Range), Sub_Type);
+ exception
+ when Node_Error =>
+ -- Avoid error storms.
+ return True;
end Eval_Is_Range_In_Bound;
procedure Eval_Check_Range
@@ -2091,6 +2095,8 @@ package body Evaluation is
return Get_Physical_Value (Expr);
when Iir_Kind_Unit_Declaration =>
return Get_Value (Get_Physical_Unit_Value (Expr));
+ when Iir_Kind_Error =>
+ raise Node_Error;
when others =>
Error_Kind ("eval_pos", Expr);
end case;