summaryrefslogtreecommitdiff
path: root/src/vhdl/translate/trans-chap8.adb
diff options
context:
space:
mode:
authorTristan Gingold2015-08-29 22:11:08 +0200
committerTristan Gingold2015-08-29 22:11:08 +0200
commit2f497103dc5dd45f738f38a8a803ee8dd495d6d3 (patch)
treec81939b13c300f05dcbc5736f97c7ac010507f30 /src/vhdl/translate/trans-chap8.adb
parentb461845ffeb94e902d84c058238fcfcd4074f1a6 (diff)
downloadghdl-2f497103dc5dd45f738f38a8a803ee8dd495d6d3.tar.gz
ghdl-2f497103dc5dd45f738f38a8a803ee8dd495d6d3.tar.bz2
ghdl-2f497103dc5dd45f738f38a8a803ee8dd495d6d3.zip
Allow allocators in default value of subprograms
(Handle them in are_trees_equal).
Diffstat (limited to 'src/vhdl/translate/trans-chap8.adb')
-rw-r--r--src/vhdl/translate/trans-chap8.adb7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/vhdl/translate/trans-chap8.adb b/src/vhdl/translate/trans-chap8.adb
index ca05eb6..e291efe 100644
--- a/src/vhdl/translate/trans-chap8.adb
+++ b/src/vhdl/translate/trans-chap8.adb
@@ -29,6 +29,7 @@ with Trans.Chap3;
with Trans.Chap4;
with Trans.Chap6;
with Trans.Chap7;
+with Trans.Chap9;
with Trans.Chap14;
with Trans_Decls; use Trans_Decls;
with Translation; use Translation;
@@ -1978,6 +1979,12 @@ package body Trans.Chap8 is
New_Association (Constr, Val);
end if;
end if;
+
+ if Get_Kind (El) = Iir_Kind_Association_Element_Open then
+ -- Do not share nodes for default values: clean them.
+ Chap9.Destroy_Types (Get_Default_Value (Base_Formal));
+ end if;
+
El := Get_Chain (El);
Pos := Pos + 1;
end loop;