diff options
Diffstat (limited to 'src/checker_set.rs')
| -rw-r--r-- | src/checker_set.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/checker_set.rs b/src/checker_set.rs index 1a89631..83d97a1 100644 --- a/src/checker_set.rs +++ b/src/checker_set.rs @@ -103,13 +103,15 @@ impl CheckerState { } Element::Var(v) => { let lookup = self.lookup_element(&v)?; + let container = self.check_set(&lookup.container)?; // TODO: necessary why? + // we have previously done the work to discover the type of // this element, so what we're claiming now must match! - if !self.equal(set, &lookup.container) { + if !self.equal(set, &container) { return Err(CheckerError::WrongSetForElement { value: element.clone().into(), claimed: set.clone(), - real: lookup.container.clone(), + real: container, }); } // If we found a formal binding, we have no value to report. |
