aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2018-02-25 07:33:48 +0100
committerTristan Gingold <tgingold@free.fr>2018-02-25 07:33:48 +0100
commit168286ce3158582f80fdd0c725bd48611033638f (patch)
tree48527d92720905bfa63a56d29599ffc677da8446 /src
parent5feee20fe54d646eba9f361c06be8cfeb5275dcb (diff)
downloadghdl-168286ce3158582f80fdd0c725bd48611033638f.tar.gz
ghdl-168286ce3158582f80fdd0c725bd48611033638f.tar.bz2
ghdl-168286ce3158582f80fdd0c725bd48611033638f.zip
Also consider interface function for implicit operators association.
Fix #535
Diffstat (limited to 'src')
-rw-r--r--src/vhdl/sem_assocs.adb10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/vhdl/sem_assocs.adb b/src/vhdl/sem_assocs.adb
index 13b9f1aea..3be3ba0a1 100644
--- a/src/vhdl/sem_assocs.adb
+++ b/src/vhdl/sem_assocs.adb
@@ -1483,9 +1483,13 @@ package body Sem_Assocs is
Inter : Iir;
begin
-- A function declaration.
- if Get_Kind (Decl) /= Iir_Kind_Function_Declaration then
- return False;
- end if;
+ case Get_Kind (Decl) is
+ when Iir_Kind_Function_Declaration
+ | Iir_Kind_Interface_Function_Declaration =>
+ null;
+ when others =>
+ return False;
+ end case;
-- That returns a boolean.
if (Get_Base_Type (Get_Return_Type (Decl))
/= Std_Package.Boolean_Type_Definition)