diff options
author | Tristan Gingold <tgingold@free.fr> | 2016-09-30 20:27:01 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2016-09-30 20:27:01 +0200 |
commit | 128c4a0f7d52116b4377aa6218f91066f1b20109 (patch) | |
tree | 6c087a445bdeb55069b23b4d3cbf7f8269f0a83f /src/vhdl/sem_expr.adb | |
parent | 0ecff214b82f61da149e51075254c3ecc4904d75 (diff) | |
download | ghdl-128c4a0f7d52116b4377aa6218f91066f1b20109.tar.gz ghdl-128c4a0f7d52116b4377aa6218f91066f1b20109.tar.bz2 ghdl-128c4a0f7d52116b4377aa6218f91066f1b20109.zip |
Rework range_expression and incomplete type for instantiation.
Diffstat (limited to 'src/vhdl/sem_expr.adb')
-rw-r--r-- | src/vhdl/sem_expr.adb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/vhdl/sem_expr.adb b/src/vhdl/sem_expr.adb index 027ed5e20..925c06826 100644 --- a/src/vhdl/sem_expr.adb +++ b/src/vhdl/sem_expr.adb @@ -553,8 +553,8 @@ package body Sem_Expr is Expr_Type : Iir; begin Expr_Type := Get_Type (Expr); - Left := Get_Left_Limit (Expr); - Right := Get_Right_Limit (Expr); + Left := Get_Left_Limit_Expr (Expr); + Right := Get_Right_Limit_Expr (Expr); if Expr_Type = Null_Iir then -- Pass 1. @@ -659,8 +659,13 @@ package body Sem_Expr is Left := Eval_Expr_If_Static (Left); Right := Eval_Expr_If_Static (Right); + + Set_Left_Limit_Expr (Expr, Left); + Set_Right_Limit_Expr (Expr, Right); + Set_Left_Limit (Expr, Left); Set_Right_Limit (Expr, Right); + Set_Expr_Staticness (Expr, Min (Get_Expr_Staticness (Left), Get_Expr_Staticness (Right))); |