Skip to content

Decy v2.1.0

Choose a tag to compare

@noahgift noahgift released this 14 Feb 23:07
· 1124 commits to main since this release

Decy v2.1.0 — C99 _Bool Type Support

Highlights

  • C99 _Bool type fully supported through parser → HIR → codegen pipeline
  • _Bool functions are no longer silently dropped — they transpile to Rust bool
  • Rustc-style diagnostic tracebacks for C parse errors
  • S5 differential testing: compile C with gcc, Rust with rustc, compare outputs

What's New

C99 _Bool Type Support (Full Pipeline)

  • Parser: CXType_Bool (clang type code 3) → Type::Bool
  • HIR: HirType::Bool with correct from_ast_type mapping
  • Codegen: _Boolbool, defaults to false, Copy semantics
  • Un-falsified: c204_bool_type test passes — previously falsified

Diagnostic Improvements

  • Rustc-style error tracebacks with file, line, and column
  • Actionable error messages for syntax errors

Quality

  • 2,074 codegen deep coverage tests across 66 batches
  • 98.25% line coverage
  • 61 C construct tests un-falsified
  • decy-oracle now uses workspace version inheritance

Example

// C input
_Bool is_positive(int x) {
    return x > 0;
}
// Transpiled Rust output
fn is_positive(mut x: i32) -> bool {
    return x > 0;
}

Install

cargo install decy

All 16 Crates Published

decy, decy-agent, decy-analyzer, decy-book, decy-codegen, decy-core, decy-debugger, decy-hir, decy-llm, decy-mcp, decy-oracle, decy-ownership, decy-parser, decy-repo, decy-stdlib, decy-verify

Full Changelog: v1.0.2...v2.1.0