Repository navigation
brokk-tree-sitter-cpp 0.24.6
Changes
- Parse an unnamed enumeration with an underlying type, such as
enum : int { A, B };, without recovery. The underlying type is now in thebasefield, as it is for named enums. Before this release it parsed with an ERROR node and the type inname. Includes a corpus case for primitive, sized, typedef-name and qualified bases, a typedef and a field declaration. Thanks to @jbellis in #9. - Revert the 0.24.5 cast-type-descriptor change. 0.24.6 is 0.24.4 plus the enum change. 0.24.5 changed recovery trees in four Bifrost C++ tests and was never adopted, and that feature is parked. The narrower candidates stay on the branches
5452-leading-type-descriptor-macrosand5452-qualified-type-descriptor-macros. - Regenerate the parser and update package metadata to 0.24.6. Tree-sitter ABI 15 is unchanged.
node-types.jsonis unchanged.
Bifrost's 331 C and C++ fixtures, the libstdc++ 9 and 10 headers and /usr/include (900 files) give byte-identical trees under 0.24.4 and 0.24.6.
Verified publication
- Rust crate:
brokk-tree-sitter-cpp0.24.6 - Tag and published source commit:
f4b03909f1da6ff86b6a8d43e66567f153574448 - Crate SHA-256:
674f79e5a0d24788fea4086549cbc0ee6290fdfe142c7ac400ba3ae23542d6d8 - CI passed at this commit. It covers generated-parser consistency, the corpus and highlight tests, the bindings and the package-content checks.
- Crate publication succeeded. I verified these independently: the registry archive checksum matches the index;
.cargo_vcs_info.jsonrecords the tagged commit; andparser.c,scanner.c,grammar.json,node-types.jsonandgrammar.jsmatch the tag byte for byte.