1.5 KiB
1.5 KiB
Sprint 48 Plan: C++ Semantic Raising from Core IR
Context
Sprint 48 implements the first production target backend for the new IR: modern C++. The goal is to generate reviewable, idiomatic C++ while preserving behavior contracts and memory safety intent from Rust lowering.
Goals
- Raise IR ownership semantics into RAII-centric C++
- Generate idiomatic type, error, and algorithmic constructs
- Produce compilable project artifacts (headers, sources, CMake)
- Emit explicit risk annotations where semantics are weaker than Rust
Steps
Step 709: Ownership mapping policy engine (unique_ptr/shared_ptr/value) (12 tests)
Step 710: Borrow semantics to references/views strategy (10 tests)
Step 711: Trait-to-interface/composition raising (10 tests)
Step 712: Generics/template raising policy (10 tests)
Step 713: Error model mapping (Result policy profiles) (10 tests)
Step 714: Async mapping strategy (coroutines/task runtime profiles) (10 tests)
Step 715: STL algorithm lifting from IR intent tags (8 tests)
Step 716: Build artifact generator (CMake targets + layout) (8 tests)
Step 717: whetstone_generate_cpp_from_ir MCP tool (8 tests)
Step 718: Sprint 48 integration summary + regression (8 tests)
Output Profiles
safe-first: explicit checks, conservative ownership, clearer diagnosticsperf-first: low-overhead defaults, reduced abstraction layersinterop-first: ABI-friendly shapes for mixed-language systems