Does this also work for C?
I would say it may even be better suited for C to some extent since that is a much simpler language with less chances for the parser to get confused by some obscure corner case. C++ really is the worst case scenario for a parsing engine, so once it works reliably for that, support for other languages should also become much more feasible.
Ooof. restrict keyword enters the chat. C and C++ are two languages that evolve together, but one is not a superset of the other.