From fd92bd29c1f66db122a3de5dc31d3147ae4fe652 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Thu, 17 Jan 2019 06:43:15 +0100 Subject: translation: minor refactoring. --- src/vhdl/translate/trans-chap7.adb | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'src/vhdl') diff --git a/src/vhdl/translate/trans-chap7.adb b/src/vhdl/translate/trans-chap7.adb index 0b1888d31..726aed475 100644 --- a/src/vhdl/translate/trans-chap7.adb +++ b/src/vhdl/translate/trans-chap7.adb @@ -3499,20 +3499,21 @@ package body Trans.Chap7 is end Translate_Array_Aggregate; procedure Translate_Aggregate - (Target : Mnode; Target_Type : Iir; Aggr : Iir) - is - Aggr_Type : constant Iir := Get_Type (Aggr); - El : Iir; + (Target : Mnode; Target_Type : Iir; Aggr : Iir) is begin - case Iir_Kinds_Composite_Type_Definition (Get_Kind (Aggr_Type)) is + case Iir_Kinds_Composite_Type_Definition (Get_Kind (Target_Type)) is when Iir_Kind_Array_Subtype_Definition - | Iir_Kind_Array_Type_Definition => - El := Is_Aggregate_Others (Aggr); - if El /= Null_Iir then - Translate_Aggregate_Others (Target, Target_Type, El); - else - Translate_Array_Aggregate (Target, Target_Type, Aggr); - end if; + | Iir_Kind_Array_Type_Definition => + declare + El : Iir; + begin + El := Is_Aggregate_Others (Aggr); + if El /= Null_Iir then + Translate_Aggregate_Others (Target, Target_Type, El); + else + Translate_Array_Aggregate (Target, Target_Type, Aggr); + end if; + end; when Iir_Kind_Record_Type_Definition | Iir_Kind_Record_Subtype_Definition => Translate_Record_Aggregate (Target, Aggr); -- cgit v1.2.3