From 651a67cb568d80e72f8c6a650b985991f4b129d8 Mon Sep 17 00:00:00 2001 From: tslil Date: Wed, 29 Apr 2026 10:56:16 +0100 Subject: fix parser bug, fix beta reduction for setcoerce, disambiguate set coerce in parser --- src/checker_signature.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/checker_signature.rs') diff --git a/src/checker_signature.rs b/src/checker_signature.rs index 36b11ca..15203b2 100644 --- a/src/checker_signature.rs +++ b/src/checker_signature.rs @@ -58,7 +58,11 @@ impl CheckerState { }); }; let set = Box::new(self.check_set(*set.clone())?); - Ok(Instance::SetCoerce(set)) + if let Set::ClaimedSet(inner) = *set { + Ok(inner) + } else { + Ok(Instance::SetCoerce(set)) + } } Instance::Var(ref v) => { // Exactly the same discipline as for Element::Var, see there @@ -158,7 +162,7 @@ impl CheckerState { Ok(sub_element) } _ => panic!( - "invariant violation: check_element returned neither a record or stuck computation for record set" + "invariant violation: check_instance returned neither a record or stuck computation for record set" ), } } -- cgit v1.3.1