The highlighting in my project was all screwed up like in the kdevelop codebase last week.
Now kdevelop seems fine parsing it's own code, but my codebase highlighting was still screwed up. Removing warnings as error in the parser fixed the problem.
Since warnings as error can be enabled with -Werror for all of them, and individually with -Werror=, I thought disabling both. So a list of argument like that:
$ clang++ -Wall -Werror -Werror=unreachable-code
Becomes:
$ clang++ -Wall -Wunreachable-code
Now the parser is no longer reporting warnings as error, but still reporting unreachable code.