From d641f731b7430947a236b857985d6803f6ffda3f Mon Sep 17 00:00:00 2001 From: microproofs Date: Wed, 28 Jun 2023 15:54:59 -0400 Subject: [PATCH] fix: needed a stricter check for expect_pattern func on discard pattern --- crates/aiken-lang/src/gen_uplc.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/crates/aiken-lang/src/gen_uplc.rs b/crates/aiken-lang/src/gen_uplc.rs index 2791b22c..851b91ac 100644 --- a/crates/aiken-lang/src/gen_uplc.rs +++ b/crates/aiken-lang/src/gen_uplc.rs @@ -1765,16 +1765,19 @@ impl<'a> CodeGenerator<'a> { ); } Pattern::Discard { .. } => { - if matches!(assignment_properties.kind, AssignmentKind::Let) { - pattern_stack.let_assignment("_", value_stack); - } else { + if matches!(assignment_properties.kind, AssignmentKind::Expect) + && assignment_properties.value_type.is_data() + && !tipo.is_data() + { self.expect_pattern( pattern, pattern_stack, value_stack, tipo, assignment_properties, - ) + ); + } else { + pattern_stack.let_assignment("_", value_stack); } } list @ Pattern::List { .. } => {