aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-sem_expr.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-08-10 16:53:11 +0200
committerTristan Gingold <tgingold@free.fr>2022-08-10 16:53:11 +0200
commitaabb982856fed89ebb696127803577fcec036508 (patch)
tree69f2803b38b611701e1d26cf2ef2583e1256e554 /src/vhdl/vhdl-sem_expr.adb
parentcb3e7b0f954f91c7a1d4702006b18d0041d6eb0d (diff)
downloadghdl-aabb982856fed89ebb696127803577fcec036508.tar.gz
ghdl-aabb982856fed89ebb696127803577fcec036508.tar.bz2
ghdl-aabb982856fed89ebb696127803577fcec036508.zip
vhdl: add Determined_Aggregate_Flag field. For #2166
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 =>