aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2016-12-08 04:59:07 +0100
committerTristan Gingold <tgingold@free.fr>2016-12-08 05:01:44 +0100
commit6e17825944e639625749a44088f9374652d92aad (patch)
tree5aaa446d3146d7f02a567f62363f0f74243ca6e1 /src
parentcacbbf89168ff6d693a809a8a4a79add27c651bc (diff)
downloadghdl-6e17825944e639625749a44088f9374652d92aad.tar.gz
ghdl-6e17825944e639625749a44088f9374652d92aad.tar.bz2
ghdl-6e17825944e639625749a44088f9374652d92aad.zip
sem_names: handle expanded name of interface subprograms.
Diffstat (limited to 'src')
-rw-r--r--src/vhdl/sem_names.adb9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vhdl/sem_names.adb b/src/vhdl/sem_names.adb
index df7fdf636..0d03b8d4f 100644
--- a/src/vhdl/sem_names.adb
+++ b/src/vhdl/sem_names.adb
@@ -386,7 +386,13 @@ package body Sem_Names is
| Iir_Kind_For_Generate_Statement =>
null;
when Iir_Kind_Package_Declaration =>
- null;
+ declare
+ Header : constant Iir := Get_Package_Header (Decl);
+ begin
+ if Is_Valid (Header) then
+ Iterator_Decl_Chain (Get_Generic_Chain (Header), Id);
+ end if;
+ end;
when Iir_Kind_Package_Instantiation_Declaration
| Iir_Kind_Interface_Package_Declaration =>
Iterator_Decl_Chain (Get_Generic_Chain (Decl), Id);
@@ -2116,6 +2122,7 @@ package body Sem_Names is
-- LRM93 §6.3
-- This form of expanded name is only allowed within the
-- construct itself.
+ -- FIXME: LRM08 12.3 Visibility h)
if not Kind_In (Prefix,
Iir_Kind_Package_Declaration,
Iir_Kind_Package_Instantiation_Declaration)