summaryrefslogtreecommitdiff
path: root/src/vhdl/sem_names.adb
diff options
context:
space:
mode:
authorTristan Gingold2015-05-19 06:35:54 +0200
committerTristan Gingold2015-05-19 06:35:54 +0200
commite6155f916a818b1cad10f206e874f4857d871ce0 (patch)
tree030a175f31ce9aa5e69065e65604ee86e266a085 /src/vhdl/sem_names.adb
parentba52970ab95b84f5495f5c6e389f7bd503eec392 (diff)
downloadghdl-e6155f916a818b1cad10f206e874f4857d871ce0.tar.gz
ghdl-e6155f916a818b1cad10f206e874f4857d871ce0.tar.bz2
ghdl-e6155f916a818b1cad10f206e874f4857d871ce0.zip
Do not consider overriden implicit declaration is reference by selection.
Fix ticket 69.
Diffstat (limited to 'src/vhdl/sem_names.adb')
-rw-r--r--src/vhdl/sem_names.adb6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/vhdl/sem_names.adb b/src/vhdl/sem_names.adb
index 6d35467..571bc7c 100644
--- a/src/vhdl/sem_names.adb
+++ b/src/vhdl/sem_names.adb
@@ -331,7 +331,9 @@ package body Sem_Names is
end if;
end if;
when others =>
- if Get_Identifier (Decl) = Id then
+ -- Consider only visible declarations (case of an implicit
+ -- declaration that is overriden by explicit one).
+ if Get_Identifier (Decl) = Id and Get_Visible_Flag (Decl) then
Add_Result (Res, Decl);
end if;
end case;
@@ -790,7 +792,7 @@ package body Sem_Names is
Set_Implementation (Call, Get_Named_Entity (Prefix));
-- LRM08 8.1 Names
- -- The name is a simple name or seleted name that does NOT denote a
+ -- The name is a simple name or selected name that does NOT denote a
-- function call [...]
--
-- GHDL: so function calls are never static names.