Repository navigation
Brokk C++ grammar 0.24.0
Synchronizes Brokk's C++ grammar with upstream master at c009222808634c1014f82438d4883753516a2c24 (41 upstream commits), retaining Brokk's Windows quoted include-path and split conditional extern "C" guard fixes.
Changes include C++ modules, reflection and splicing, annotations and expansion statements, updated lambda syntax, explicit object parameters, extern template instantiations, Microsoft calling conventions, and explicit calls to overloaded operators.
This starts the 0.24.x compatibility line: parser ABI 15 requires Tree-sitter 0.25 or newer. Generation is pinned to Tree-sitter CLI 0.26.3 and C grammar 0.24.1. The Rust package remains brokk-tree-sitter-cpp, with isolated native symbols. npm and Python package names remain source-only.
Validation covers all 207 corpus cases, both highlight files, Rust regressions and doctests (default and all features), Node/Python/Go/Swift bindings, CMake C builds, formatting/lint, reproducible generation, and Rust/npm/Python package checks. Compatibility with Tree-sitter 0.25.10 and coexistence with upstream tree-sitter-cpp were verified locally.
Implementation: #3
Rust package: https://crates.io/crates/brokk-tree-sitter-cpp/0.24.0