aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth')
-rw-r--r--src/synth/synth-expr.adb5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/synth/synth-expr.adb b/src/synth/synth-expr.adb
index f8f9e0911..500d587d7 100644
--- a/src/synth/synth-expr.adb
+++ b/src/synth/synth-expr.adb
@@ -1367,7 +1367,10 @@ package body Synth.Expr is
Val := Synth_Expression_With_Basetype (Syn_Inst, Expr);
case Get_Kind (Conv_Type) is
when Iir_Kind_Integer_Subtype_Definition =>
- if Val.Typ.Kind = Type_Float then
+ if Val.Typ.Kind = Type_Discrete then
+ -- Int to int.
+ return Val;
+ elsif Val.Typ.Kind = Type_Float then
return Create_Value_Discrete (Int64 (Val.Fp), Conv_Typ);
else
Error_Msg_Synth (+Conv, "unhandled type conversion (to int)");