diff options
author | Tristan Gingold <tgingold@free.fr> | 2016-10-13 03:50:25 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2016-10-13 03:50:25 +0200 |
commit | 8f3289b8f2f336c892cb62033b7ac4c991a22040 (patch) | |
tree | c575537154c0261bd306bc1c8d652ae35c8af7bb /src/vhdl | |
parent | ce2f79483d893bf79b2c9634af7a1174fc39dd8b (diff) | |
download | ghdl-8f3289b8f2f336c892cb62033b7ac4c991a22040.tar.gz ghdl-8f3289b8f2f336c892cb62033b7ac4c991a22040.tar.bz2 ghdl-8f3289b8f2f336c892cb62033b7ac4c991a22040.zip |
sem_expr: add a missing free in sem_array_aggregate_type.
Diffstat (limited to 'src/vhdl')
-rw-r--r-- | src/vhdl/sem_expr.adb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vhdl/sem_expr.adb b/src/vhdl/sem_expr.adb index 636c23188..892fbfc7a 100644 --- a/src/vhdl/sem_expr.adb +++ b/src/vhdl/sem_expr.adb @@ -3478,9 +3478,12 @@ package body Sem_Expr is for I in Infos'Range loop declare St : constant Iir := Infos (I).Index_Subtype; + Rng : Iir; begin if St /= Null_Iir then - Free_Iir (Get_Range_Constraint (St)); + Rng := Get_Range_Constraint (St); + Free_Iir (Get_Right_Limit_Expr (Rng)); + Free_Iir (Rng); Free_Iir (St); end if; end; |