Extern on contract declarations only
Platform spec ADR
Extern on contract declarations only
Spec standingStandard
- Contract import syntax How extern contracts declare foreign imports and map to symbols and call shapes.
- Extern attribute schema Normative Extern and per-method interop attributes for contract imports (v0.3).
- FFI and extern — Verification and traceability Conformance strategy for v0.3 FFI spec (fixtures, diagnostics, ignored runtime tests).
0 revisions (git unavailable at build; counts may be empty)
No commits recorded for this path.
Full tree: run pnpm verify:platform-spec-layout (writes src/generated/platform-spec-layout-report.json).
Context
Section titled “Context”Bulk C-style surfaces need stable contract blocks; module-level extern was exploratory.
Decision
Section titled “Decision”Extern must apply only to contract declarations in v0.3 Standard. The reference compiler must reject Extern on non-contract declarations (E1510).
Consequences
Section titled “Consequences”Codegen collects ExternImport from contract metadata; mod-level extern remains non-Standard.
Verification anchors
Section titled “Verification anchors”compiler/crates/beskid_analysis/src/types/context/context.rs; extern attribute schema.