-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
Feature: Rustc Contracts Backend
Implement an anodized backend that targets the upstream nightly rustc-contracts experiment.
- Expansion strategy:
requiresclauses map 1:1 to#[core::contracts::requires(...)].ensuresclauses map 1:1 to#[core::contracts::ensures(...)].maintainsclauses emit both attributes so invariants remain enforced on entry and exit.
- Unsupported today:
captureshave no equivalent in the nightly design, so the backend must fail with an error when encountering that. - Activation: exposed via a
backend-native-contractsfeature that only builds on nightly toolchains and switches code generation to emit the attributes of the nightly contracts experiment. - Testing: sample crate compiled with
-Zcontract-checksto prove parity with the language-team experiment.
Metadata
Metadata
Assignees
Labels
No labels