Document: referencing a kernel base type from a user ADT ctor field requires full qualification #65
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
From series-step1 fieldtest (spec_gap). Bare
Seriesworks in type-position via kernel auto-import, but a user ADT whose ctor field references a kernel base type must fully-qualify it:(con raw_buf.RawBuf (con T))checks, while bare(con RawBuf (con T))is a type-mismatch and(own (RawBuf a))in a field is a parse error. The kernel-tierseriesmodule itself uses bare(con RawBuf a)(works because it is kernel-tier and the element is a type variable). This asymmetry (bare type-position OK, bare ctor-field-ref not OK) is not stated on the public surface. Document the rule in model 0007 or contract 0002-data-model. Entry path: ratify / tighten ledger.