aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-05-07 20:05:19 +0200
committerTristan Gingold <tgingold@free.fr>2019-05-07 20:05:19 +0200
commita5b13e2e4b25d8b1258fa2af19b8840b39a2942f (patch)
tree11ce8591c00cd060e40ff70942f809f76ffec3bf
parent4f2bc63cc7adac40622af38e543b2ad72fb0e593 (diff)
downloadghdl-a5b13e2e4b25d8b1258fa2af19b8840b39a2942f.tar.gz
ghdl-a5b13e2e4b25d8b1258fa2af19b8840b39a2942f.tar.bz2
ghdl-a5b13e2e4b25d8b1258fa2af19b8840b39a2942f.zip
vhdl: remove too strict assertion in canon. Fix #816
-rw-r--r--src/vhdl/vhdl-canon.adb14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/vhdl/vhdl-canon.adb b/src/vhdl/vhdl-canon.adb
index 85bc4190b..181e55217 100644
--- a/src/vhdl/vhdl-canon.adb
+++ b/src/vhdl/vhdl-canon.adb
@@ -562,20 +562,12 @@ package body Vhdl.Canon is
raise Internal_Error;
when Unknown =>
- -- Must be a subprogram declared in a different design unit.
+ -- Must be a subprogram declared in a different design unit,
+ -- or a subprogram calling such a subprogram.
-- Only a package can apply to this case.
-- Will be checked at elaboration.
pragma Assert (not Flags.Flag_Elaborate);
- declare
- Parent : Iir;
- begin
- Parent := Get_Parent (Callee);
- pragma Assert
- (Get_Kind (Parent) = Iir_Kind_Package_Declaration);
- Parent := Get_Parent (Parent);
- pragma Assert
- (Get_Kind (Parent) = Iir_Kind_Design_Unit);
- end;
+ null;
end case;
end if;
Next (It);