Skip to content

v0.0.175

Choose a tag to compare

@aallan aallan released this 21 Jun 14:59
e30b006

Per-monomorphization static verification for generic functions (#732, closes #555).

Generic (forall<T>) function bodies are now statically verified at each concrete instantiation, rather than silently downgraded to runtime (Tier 3). An @Nat underflow, a false ensures, or a refined-return obligation inside a generic is now caught at verify time. Discovery is shared with codegen, so the verifier covers every instantiation that actually runs, and a failing diagnostic names the offending instantiation.

Fixed

  • Eq-constrained generics over parameterized ADTs (e.g. @Box<Int>.0) are no longer spuriously rejected; Eq auto-derivation now validates concrete type arguments.
  • vera compile --wat is byte-stable across runs (deterministic monomorphization order).

Full detail in the CHANGELOG.