aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/synth/netlists-inference.adb1
-rw-r--r--src/synth/synth-expr.adb7
2 files changed, 8 insertions, 0 deletions
diff --git a/src/synth/netlists-inference.adb b/src/synth/netlists-inference.adb
index ecd90bb22..58df1b556 100644
--- a/src/synth/netlists-inference.adb
+++ b/src/synth/netlists-inference.adb
@@ -361,6 +361,7 @@ package body Netlists.Inference is
-- Create the FF.
if Rst = No_Net then
+ -- No async reset
pragma Assert (Rst_Val = No_Net);
if Els = No_Net then
if Init /= No_Net then
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index 90c4c59b6..4b04060f4 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1210,6 +1210,13 @@ package body Synth.Expr is
-- Use the base type as the subtype of the index is not synth-ed.
Idx_Val := Synth_Expression_With_Basetype (Syn_Inst, Idx_Expr);
+ if Idx_Val = No_Valtyp then
+ -- Propagate errorc
+ Voff := No_Net;
+ Off := (0, 0);
+ return;
+ end if;
+
Strip_Const (Idx_Val);
Bnd := Get_Array_Bound (Pfx_Type, Dim_Type (I + 1));