mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-04 20:28:02 +00:00
Correctly compile subChecked for Dec
This commit is contained in:
parent
b3966a588a
commit
25f3190d33
2 changed files with 20 additions and 5 deletions
|
@ -1965,7 +1965,10 @@ fn build_dec_binop<'a, 'ctx>(
|
|||
let val = dec_binop_with_overflow(env, bitcode::DEC_ADD_WITH_OVERFLOW, lhs, rhs);
|
||||
cast_with_overflow_dec_to_roc_type(env, layout_interner, val.into(), return_layout)
|
||||
}
|
||||
NumSubChecked => call_bitcode_fn(env, &[lhs, rhs], bitcode::DEC_SUB_WITH_OVERFLOW),
|
||||
NumSubChecked => {
|
||||
let val = dec_binop_with_overflow(env, bitcode::DEC_SUB_WITH_OVERFLOW, lhs, rhs);
|
||||
cast_with_overflow_dec_to_roc_type(env, layout_interner, val.into(), return_layout)
|
||||
}
|
||||
NumMulChecked => call_bitcode_fn(env, &[lhs, rhs], bitcode::DEC_MUL_WITH_OVERFLOW),
|
||||
NumAdd => build_dec_binop_throw_on_overflow(
|
||||
env,
|
||||
|
|
|
@ -3927,13 +3927,25 @@ fn bool_in_switch() {
|
|||
|
||||
#[test]
|
||||
#[cfg(any(feature = "gen-llvm", feature = "gen-dev", feature = "gen-wasm"))]
|
||||
fn add_checked_frac_infer() {
|
||||
fn add_checked_dec() {
|
||||
assert_evals_to!(
|
||||
indoc!(
|
||||
r#"
|
||||
app "test" provides [main] to "./platform"
|
||||
|
||||
main = Num.addChecked 2.0dec 4.0dec == Ok 6.0dec
|
||||
Num.addChecked 2.0dec 4.0dec == Ok 6.0dec
|
||||
"#
|
||||
),
|
||||
true,
|
||||
bool
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
#[cfg(any(feature = "gen-llvm", feature = "gen-dev", feature = "gen-wasm"))]
|
||||
fn sub_checked_dec() {
|
||||
assert_evals_to!(
|
||||
indoc!(
|
||||
r#"
|
||||
Num.subChecked 5.0dec 2.0dec == Ok 3.0dec
|
||||
"#
|
||||
),
|
||||
true,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue