diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/synth/synth-expr.adb | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb index 8320f2897..bfaef8f17 100644 --- a/src/synth/synth-expr.adb +++ b/src/synth/synth-expr.adb @@ -946,9 +946,14 @@ package body Synth.Expr is        function Synth_Compare (Id : Compare_Module_Id) return Value_Acc        is           N : Net; +         L, R : Value_Acc; +         Typ : Type_Acc;        begin -         N := Build_Compare (Build_Context, Id, -                             Get_Net (Left), Get_Net (Right)); +         pragma Assert (Left_Type = Right_Type); +         Typ := Get_Value_Type (Syn_Inst, Left_Type); +         L := Synth_Subtype_Conversion (Left, Typ, Expr); +         R := Synth_Subtype_Conversion (Right, Typ, Expr); +         N := Build_Compare (Build_Context, Id, Get_Net (L), Get_Net (R));           Set_Location (N, Expr);           return Create_Value_Net (N, Boolean_Type);        end Synth_Compare; | 
