Skip to content

Add ixx to recognized C++ extensions. - #794

Merged
yogthos merged 2 commits into
dirge-code:mainfrom
chriselrod:ixx
Aug 16, 2026
Merged

Add ixx to recognized C++ extensions.#794
yogthos merged 2 commits into
dirge-code:mainfrom
chriselrod:ixx

Conversation

@chriselrod

Copy link
Copy Markdown
Contributor

ixx is the MSVC's standard for C++ module interfaces.
I use it with clang because I prefer it over clang's default of cppm, which isn't on the list either.

@yogthos

yogthos commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Thanks, I'll push this out in the next release.

Claiming an extension for a semantic adapter is not free: gate_coverage derives
from the adapter registry and fails until the extension is either gated or named
in GATE_EXCLUSIONS. That's what broke every test job here.

.ixx has to stay off the gate. tree-sitter-cpp 0.23 has no module grammar at
all, so `export module M;` and `import std;` parse as ERROR — and the gate is a
hard write block, so gating .ixx would refuse writes to every valid module
interface unit. The exclusion says so, with a test that fails when the grammar
learns modules and the entry can go.

Same reason .ixx stays out of minify and the skeleton trimmer, both of which
need a clean parse. The two lists with no parser behind them were simply
missing it: the highlighter now paints .ixx as C++, and CODE_EXTS counts an
.ixx edit as editing code so the verify nudge sees it.

Also the rustfmt wrap on clangd's extension list.
@yogthos
yogthos merged commit 4f9df57 into dirge-code:main Aug 16, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants