diff options
author | Tristan Gingold <tgingold@free.fr> | 2021-12-15 08:18:10 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2021-12-15 08:18:10 +0100 |
commit | 9df3cb21ad765f38561fff0a568ce94359d4d977 (patch) | |
tree | 162232a463e986d01e65fc476c40093596b84e09 /src/vhdl/vhdl-annotations.adb | |
parent | c661e58db492f14b22e2ab59e58a8abde6e74c10 (diff) | |
download | ghdl-9df3cb21ad765f38561fff0a568ce94359d4d977.tar.gz ghdl-9df3cb21ad765f38561fff0a568ce94359d4d977.tar.bz2 ghdl-9df3cb21ad765f38561fff0a568ce94359d4d977.zip |
synth: handle interface type in generics. For #412
Diffstat (limited to 'src/vhdl/vhdl-annotations.adb')
-rw-r--r-- | src/vhdl/vhdl-annotations.adb | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/vhdl/vhdl-annotations.adb b/src/vhdl/vhdl-annotations.adb index b1a36646e..13aa8bf3b 100644 --- a/src/vhdl/vhdl-annotations.adb +++ b/src/vhdl/vhdl-annotations.adb @@ -431,7 +431,8 @@ package body Vhdl.Annotations is when Iir_Kind_Protected_Type_Declaration => Annotate_Protected_Type_Declaration (Block_Info, Def); - when Iir_Kind_Incomplete_Type_Definition => + when Iir_Kind_Incomplete_Type_Definition + | Iir_Kind_Subtype_Attribute => null; when Iir_Kind_Foreign_Vector_Type_Definition => @@ -509,8 +510,12 @@ package body Vhdl.Annotations is Create_Object_Info (Block_Info, Decl); when Iir_Kind_Interface_Package_Declaration => Annotate_Interface_Package_Declaration (Block_Info, Decl); - when Iir_Kinds_Interface_Subprogram_Declaration - | Iir_Kind_Interface_Type_Declaration => + when Iir_Kind_Interface_Type_Declaration => + if Flag_Synthesis then + -- Create an info on the interface_type_definition + Create_Object_Info (Block_Info, Get_Type (Decl)); + end if; + when Iir_Kinds_Interface_Subprogram_Declaration => -- Macro-expanded null; when others => |