cppast
cppast copied to clipboard
Library to parse and work with the C++ AST
* Platform : Mac OS Mojave * cppast version: latest * parser: `libclang_parser` * clang version: Apple clang version 11.0.0 (clang-1100.0.33.12) (but using llvm from brew version 7.0.1 to configure...
* cppast version: 55221f1536a1f21c3f0b0b4dbb28344185ec655c * parser: `libclang_parser` * clang version: 8.0 Can't compile cppast using MS VC++ compiler versions: 19.16, 19.21, 19.22. Input flags: `cmake -B build -S. -GNinja -DCMAKE_BUILD_TYPE=Release...
I think this is because `member_function_t` is not treated as a container in `detail::visit`, and simply the callback is called instead of recursive visitation. I'd assume standardese would need to...
Would it be possible to expose mangled names? It could be very helpful when generating API wrappers for foreign languages.
@foonathan: Have you considered extending cppast so that it can work not just with Clang, but with any C++ tool that supports Microsoft's [Language Server Protocol](https://github.com/Microsoft/language-server-protocol) — for example, [CQuery](https://github.com/jacobdufault/cquery/)? Just a...
* cppast version: latest one * parser: `libclang_parser` * clang version: 3.9.1+ The type `cpp_depedent_type` will never be created, instead a `cpp_unexposed_type`.
* cppast version: latest one * parser: `libclang_parser` * clang version: 3.9.1+ A C++14 variable template isn't exposed by libclang, so it won't be parsed as a `cpp_variable_template` but as...
* cppast version: latest one * parser: `libclang_parser` * clang version: 4.0 C++11 introduced a new syntax to mark types as friends, `friend foo` instead of `friend class foo`. When...
* cppast version: latest one * parser: `libclang_parser` * clang version: 3.9.1+ Due to a libclang limitation, the arguments in a template specialization are only available as a string unless...
* cppast version: latest one * parser: `libclang_parser` * clang version: 3.9.1+ Due to a libclang limitation, the expression inside a `noexcept()` is not exposed.