aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/translate/trans_analyzes.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/vhdl/translate/trans_analyzes.adb')
-rw-r--r--src/vhdl/translate/trans_analyzes.adb10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/vhdl/translate/trans_analyzes.adb b/src/vhdl/translate/trans_analyzes.adb
index 8fce7c2bc..427989935 100644
--- a/src/vhdl/translate/trans_analyzes.adb
+++ b/src/vhdl/translate/trans_analyzes.adb
@@ -97,13 +97,7 @@ package body Trans_Analyzes is
Inter := Get_Interface_Declaration_Chain
(Get_Implementation (Call));
while Assoc /= Null_Iir loop
- Formal := Get_Formal (Assoc);
- if Formal = Null_Iir then
- Formal := Inter;
- Inter := Get_Chain (Inter);
- else
- Formal := Get_Association_Interface (Assoc);
- end if;
+ Formal := Get_Association_Interface (Assoc, Inter);
if Get_Kind (Assoc)
= Iir_Kind_Association_Element_By_Expression
and then
@@ -112,7 +106,7 @@ package body Trans_Analyzes is
then
Status := Extract_Driver_Target (Get_Actual (Assoc));
end if;
- Assoc := Get_Chain (Assoc);
+ Next_Association_Interface (Assoc, Inter);
end loop;
end;
when others =>