aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-expr.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth/synth-expr.adb')
-rw-r--r--src/synth/synth-expr.adb10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index 6c47d3e2a..239015f3c 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1844,6 +1844,16 @@ package body Synth.Expr is
Acc := Allocate_By_Type (T);
return Create_Value_Access (Expr_Type, Acc);
end;
+ when Iir_Kind_Allocator_By_Expression =>
+ declare
+ V : Value_Acc;
+ Acc : Heap_Index;
+ begin
+ V := Synth_Expression_With_Type
+ (Syn_Inst, Get_Expression (Expr), Expr_Type.Acc_Acc);
+ Acc := Allocate_By_Value (V);
+ return Create_Value_Access (Expr_Type, Acc);
+ end;
when Iir_Kind_Overflow_Literal =>
declare
N : Net;