diff options
author | gingold <gingold@b72b5c32-5f01-0410-b925-b5c7b92870f7> | 2008-04-09 04:01:16 +0000 |
---|---|---|
committer | gingold <gingold@b72b5c32-5f01-0410-b925-b5c7b92870f7> | 2008-04-09 04:01:16 +0000 |
commit | f63038518ec0b89eb6170e372a2ad5d0a24d30d3 (patch) | |
tree | c2155355116acf3f90a2ff0079423cba36b6050d /evaluation.adb | |
parent | eb4d862a6b8ac3991dac9a8bc2fb0b9d9830e951 (diff) | |
download | ghdl-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.adb | 6 |
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; |