diff options
| author | tslil <tslil@posteo.de> | 2026-04-29 10:56:16 +0100 |
|---|---|---|
| committer | tslil <tslil@posteo.de> | 2026-04-29 12:18:13 +0100 |
| commit | 651a67cb568d80e72f8c6a650b985991f4b129d8 (patch) | |
| tree | 4feab93c76d729db04a80fcf3ad1c1591dd125f4 /src/checker_signature.rs | |
| parent | 67e3285ae6c7b94adc1983dcff18a009455bc582 (diff) | |
fix parser bug, fix beta reduction for setcoerce, disambiguate set coerce in parser
Diffstat (limited to 'src/checker_signature.rs')
| -rw-r--r-- | src/checker_signature.rs | 8 |
1 files changed, 6 insertions, 2 deletions
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" ), } } |
