aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-sem_expr.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/vhdl/vhdl-sem_expr.adb')
-rw-r--r--src/vhdl/vhdl-sem_expr.adb3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-sem_expr.adb b/src/vhdl/vhdl-sem_expr.adb
index d4a8ef84e..2c9bd8645 100644
--- a/src/vhdl/vhdl-sem_expr.adb
+++ b/src/vhdl/vhdl-sem_expr.adb
@@ -3887,6 +3887,7 @@ package body Vhdl.Sem_Expr is
Sub_Aggr := Get_Associated_Expr (Choice);
case Get_Kind (Sub_Aggr) is
when Iir_Kind_Aggregate =>
+ Set_Determined_Aggregate_Flag (Sub_Aggr, Constrained);
Sem_Array_Aggregate_1
(Sub_Aggr, A_Type, Infos, Constrained, Dim + 1);
if not Get_Aggregate_Expand_Flag (Sub_Aggr) then
@@ -4405,6 +4406,8 @@ package body Vhdl.Sem_Expr is
Set_Expr_Staticness (Expr, Globally);
end if;
+ Set_Determined_Aggregate_Flag (Expr, Constrained);
+
Set_Type (Expr, A_Type); -- FIXME: should free old type
case Get_Kind (A_Type) is
when Iir_Kind_Array_Subtype_Definition =>