That's exactly what I'm thinking. You guys have done some great work fixing the parser, but we are still getting a lot of false positives in Codan and we are reaching the level of diminishing returns. Clang AST integration is going to be a lot of work
no matter how we slice it but it would be good to have a strategy around it, IMHO.
> There is no doubt LLVM is becoming a huge force. Though I'm more interested in it from the parser/indexer side. I wonder how we'd plug it in...
That's an interesting question.
For several of the parser bugs that I fixed, I looked at the C++ standard document to see what the exact behaviour should be. As I was reading parts of the standard document, a common reaction to reading many clauses was "uh... I'm pretty sure CDT's parser
doesn't handle this case". I think that getting the CDT parser to implement the standard to a tee would be a huge amount of work - and yet having a very accurate parser is important, in my opinion, for features like refactoring, static analysis, and giving
accurate errors.
Clang, on the other hand, comes very close to implementing the standard to a tee, and it would be really nice to be able to reuse the excellent work that clang developers have been doing (and will continue to do) in CDT. I'm not sure whether/how that's possible.
Regards,
Nate