aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-vhdl_insts.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2022-02-17 07:49:59 +0100
committerTristan Gingold <tgingold@free.fr>2022-02-17 07:51:02 +0100
commit7257b70ca6a7380a3c739e62bf3c9ca69f0dd223 (patch)
tree727cfbc01d4737e19c4d79f14de96e458f71a0ed /src/synth/synth-vhdl_insts.adb
parenta4f663eb442310aa17d895d267a9e212c54c5efe (diff)
downloadghdl-7257b70ca6a7380a3c739e62bf3c9ca69f0dd223.tar.gz
ghdl-7257b70ca6a7380a3c739e62bf3c9ca69f0dd223.tar.bz2
ghdl-7257b70ca6a7380a3c739e62bf3c9ca69f0dd223.zip
synth: properly propagate bound errors. Fix #1972
Diffstat (limited to 'src/synth/synth-vhdl_insts.adb')
-rw-r--r--src/synth/synth-vhdl_insts.adb5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/synth/synth-vhdl_insts.adb b/src/synth/synth-vhdl_insts.adb
index b02d2df69..cd6f55e2a 100644
--- a/src/synth/synth-vhdl_insts.adb
+++ b/src/synth/synth-vhdl_insts.adb
@@ -638,11 +638,12 @@ package body Synth.Vhdl_Insts is
declare
Voff : Net;
Arr_Off : Value_Offsets;
+ Err : Boolean;
begin
Synth_Individual_Prefix
(Syn_Inst, Inter_Inst, Get_Prefix (Formal), Off, Typ);
- Synth_Indexed_Name (Syn_Inst, Formal, Typ, Voff, Arr_Off);
- if Voff /= No_Net then
+ Synth_Indexed_Name (Syn_Inst, Formal, Typ, Voff, Arr_Off, Err);
+ if Voff /= No_Net or Err then
raise Internal_Error;
end if;
Off := Off + Arr_Off.Net_Off;