Computable2Guarded's diagnostics: a single defense-in-depth catch-all. Every case it reports
is one this pass's own invariants rule out (๐_cflow finding a while not at block-front, say);
the pass introduces no user-facing restriction of its own.
Computable2Guarded's errors.
- internalInvariantViolated
(pos : SourceSpan)
(description : String)
: GuardedError
Defense-in-depth: an input shape this pass's own invariants guarantee can't occur (e.g. a
whilenot immediately preceded by a labelled block) still turned up. No proof of unreachability exists yet, so this stays a runtime check rather thanabsurd/nomatch.posisSourceSpan.placeholderat callers past the point where a real position is still available (ElaboratedPlusCal/GuardedPlusCal.Statementcarry none), matchingTyped2Computable.lean's own precedent.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[implicit_reducible]
Equations
- instReprGuardedError = { reprPrec := instReprGuardedError.repr }
@[implicit_reducible]
Equations
@[implicit_reducible]
Equations
Equations
- instBEqGuardedError.beq (GuardedError.internalInvariantViolated a a_1) (GuardedError.internalInvariantViolated b b_1) = (a == b && a_1 == b_1)
- instBEqGuardedError.beq xโยน xโ = false
Instances For
@[implicit_reducible]
Equations
- One or more equations did not get rendered due to their size.