aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/elab-vhdl_objtypes.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth/elab-vhdl_objtypes.adb')
-rw-r--r--src/synth/elab-vhdl_objtypes.adb3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/synth/elab-vhdl_objtypes.adb b/src/synth/elab-vhdl_objtypes.adb
index ebde9f28b..37c53c7f5 100644
--- a/src/synth/elab-vhdl_objtypes.adb
+++ b/src/synth/elab-vhdl_objtypes.adb
@@ -569,6 +569,9 @@ package body Elab.Vhdl_Objtypes is
end case;
if Len < 0 then
return 0;
+ elsif Len > Int64 (Uns32'Last) then
+ -- Truncate very large lengths, such objects should not exist.
+ return Uns32'Last;
else
return Uns32 (Len);
end if;