mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-27 13:59:08 +00:00
Fix crash caused by number related type error
This fixes an issue where number related type errors cause a crash. For example, using a negative number for `Nat` like List.dropAt [1, 2, 3] -1` as in #5916. so as f64 number.
This commit is contained in:
parent
c5a6f058df
commit
75dff53cc8
1 changed files with 7 additions and 3 deletions
|
@ -9268,9 +9268,13 @@ fn assign_num_literal_expr<'a>(
|
|||
num_value: IntOrFloatValue,
|
||||
hole: &'a Stmt<'a>,
|
||||
) -> Stmt<'a> {
|
||||
let layout = layout_cache
|
||||
.from_var(env.arena, variable, env.subs)
|
||||
.unwrap();
|
||||
let layout = match layout_cache.from_var(env.arena, variable, env.subs) {
|
||||
Ok(layout) => layout,
|
||||
Err(_) => match num_value {
|
||||
IntOrFloatValue::Float(_) => Layout::default_float(),
|
||||
IntOrFloatValue::Int(_) => Layout::default_integer(),
|
||||
},
|
||||
};
|
||||
let literal =
|
||||
make_num_literal(&layout_cache.interner, layout, num_str, num_value).to_expr_literal();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue