Open asmwarrior opened 4 years ago
This means so much to me, especially coming from you. I'm a long-time fan of your work, actually. Thank you!
Aaaand there it is. Anyway, ignore him.
I'm still in the middle of knocking some dust off of this project and getting support for the features from C++11 and 17 in. I have the latest C++20 draft in front of me, for that reason.
The biggest discrepancy between these two projects (Code::Blocks' parser and JDI) has to do with inspecting actual logic. The original JDI ignored actual function implementations completely. It passed right over them under the assumption that anything between { and } could not affect the set of definitions.
While that looks like an opportunity to allow Code::Blocks' to take over directly, unfortunately JDI doesn't get to be that lazy: I now need accurate evaluation of arbitrary logic in order to evaluate constexpr values, which can change how types are assigned to things entirely.
I have had the Code::Blocks (or general IDE) use case in mind for some time, now. It covers two of my three primary use cases for this project's design:
There's definitely tons of overlap between the tools, but I don't know of a clean cut we can make between them, and the approaches look quite different. What do you have in mind?
I just want to say your project is great. I see this project is similar to Code::Blocks' internal CodeCompletion C/C++ parser, I hope those two can help each other in the future.