diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/eval/mod.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/eval/mod.rs b/src/eval/mod.rs index 68163bf6..2719c298 100644 --- a/src/eval/mod.rs +++ b/src/eval/mod.rs @@ -1268,7 +1268,13 @@ impl ast::Pattern { ast::DestructuringKind::Named(named) => { bail!(named.span(), "cannot destructure named elements from an array") } - ast::DestructuringKind::Placeholder(_) => i += 1, + ast::DestructuringKind::Placeholder(underscore) => { + if i < value.len() { + i += 1 + } else { + bail!(underscore.span(), "not enough elements to destructure") + } + } } } if i < value.len() { |
