Analyzed why 9 parsers failed during size testing. Failures were NOT
bugs but rather fundamental cross-dependencies between parsers:
Cross-parser dependencies (highlight queries):
- C++ depends on C's HIGHLIGHT_QUERY
- TypeScript depends on JavaScript's HIGHLIGHT_QUERY
- QML depends on both JavaScript and TypeScript queries
Sub-language dependencies:
- HTML embeds JavaScript (for <script>) and CSS (for <style>)
- Make embeds Bash (for shell commands)
Multi-variant languages:
- OCaml provides both OCaml and OCamlInterface from one crate
This is VALUABLE information for feature flag design - dependent
parsers should be grouped together since they can't be removed
independently anyway.
Recommended feature bundles:
- Web: JavaScript + TypeScript + HTML + CSS (interdependent)
- C/C++: Must stay together
- Build: Bash + Make (linked)