aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2020-04-12 16:01:42 +0200
committerTristan Gingold <tgingold@free.fr>2020-04-12 23:31:20 +0200
commitb968b5f8b3462947e4bf57b3448c3a91ac1efd1f (patch)
treed1e2508503740baf741163618dc2fd933cdf7f6b /src
parent0c5a56a8e880987fc1edb8dcf5a9ce5e01cb91b3 (diff)
downloadghdl-b968b5f8b3462947e4bf57b3448c3a91ac1efd1f.tar.gz
ghdl-b968b5f8b3462947e4bf57b3448c3a91ac1efd1f.tar.bz2
ghdl-b968b5f8b3462947e4bf57b3448c3a91ac1efd1f.zip
synth-expr: avoid a crash after error.
Diffstat (limited to 'src')
-rw-r--r--src/synth/synth-expr.adb4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index a12e8725b..2e70dafec 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1445,10 +1445,14 @@ package body Synth.Expr is
& "either constant or dynamic");
return;
end if;
+
Synth_Extract_Dyn_Suffix
(Get_Build (Syn_Inst), Name,
Pfx_Bnd, Get_Net (Left), Get_Net (Right), Inp, Step, Off.Net_Off,
Res_Bnd.Len);
+ if Inp = No_Net then
+ return;
+ end if;
Inp_W := Get_Width (Inp);
-- FIXME: convert range to offset.
-- Extract max from the range.