diff --git a/recursion/compiler/src/ir/types.rs b/recursion/compiler/src/ir/types.rs index b39ac662bb..f82d8734a3 100644 --- a/recursion/compiler/src/ir/types.rs +++ b/recursion/compiler/src/ir/types.rs @@ -1042,7 +1042,8 @@ impl> Ext { builder.push(DslIr::SubE(*self, *lhs, *rhs)); } (SymbolicExt::Val(lhs, _), SymbolicExt::Base(rhs, _)) => { - builder.push(DslIr::SubEF(*self, *lhs, *rhs)); + let rhs = builder.eval(rhs.clone()); + builder.push(DslIr::SubEF(*self, *lhs, rhs)); } (SymbolicExt::Val(lhs, _), rhs) => { let rhs_value = Self::uninit(builder);