-
Notifications
You must be signed in to change notification settings - Fork 682
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite Clang interface to use C++ libtooling API instead of libclang #1740
Commits on Feb 15, 2020
-
Initial implementation of clang tooling API
Bindgen builds and runs now, but does not produce any bindings yet.
Configuration menu - View commit details
-
Copy full SHA for bd73c08 - Browse repository at this point
Copy the full SHA bd73c08View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59e2432 - Browse repository at this point
Copy the full SHA 59e2432View commit details
Commits on Feb 17, 2020
-
Implement Eq correctly for ASTNode
We need to compare on variant contents, not just on variant equality
Configuration menu - View commit details
-
Copy full SHA for dea6a70 - Browse repository at this point
Copy the full SHA dea6a70View commit details -
Configuration menu - View commit details
-
Copy full SHA for d41bb18 - Browse repository at this point
Copy the full SHA d41bb18View commit details -
Do not return attributed or paren types from clang
Bindgen currently assumes that it won't see these types from libclang.
Configuration menu - View commit details
-
Copy full SHA for d6b1474 - Browse repository at this point
Copy the full SHA d6b1474View commit details -
Configuration menu - View commit details
-
Copy full SHA for b8926d9 - Browse repository at this point
Copy the full SHA b8926d9View commit details
Commits on Feb 19, 2020
-
Configuration menu - View commit details
-
Copy full SHA for b02deab - Browse repository at this point
Copy the full SHA b02deabView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7fb94d1 - Browse repository at this point
Copy the full SHA 7fb94d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2652681 - Browse repository at this point
Copy the full SHA 2652681View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8dd5154 - Browse repository at this point
Copy the full SHA 8dd5154View commit details -
Configuration menu - View commit details
-
Copy full SHA for ecdbf84 - Browse repository at this point
Copy the full SHA ecdbf84View commit details -
Configuration menu - View commit details
-
Copy full SHA for 93b975a - Browse repository at this point
Copy the full SHA 93b975aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ad220b0 - Browse repository at this point
Copy the full SHA ad220b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for b42adbd - Browse repository at this point
Copy the full SHA b42adbdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6668893 - Browse repository at this point
Copy the full SHA 6668893View commit details -
Configuration menu - View commit details
-
Copy full SHA for a1bdd75 - Browse repository at this point
Copy the full SHA a1bdd75View commit details -
Configuration menu - View commit details
-
Copy full SHA for f8dec45 - Browse repository at this point
Copy the full SHA f8dec45View commit details
Commits on Feb 20, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 1618ffc - Browse repository at this point
Copy the full SHA 1618ffcView commit details -
Add Attr to node and track node kinds correctly
Added some misc CXXBaseSpecifier accessors and fixed visiting CXXBaseSpecifiers
Configuration menu - View commit details
-
Copy full SHA for 9ce7939 - Browse repository at this point
Copy the full SHA 9ce7939View commit details -
Build stringref from llvm::StringRef
Needed for compatibility with latest Clang
Configuration menu - View commit details
-
Copy full SHA for e883c52 - Browse repository at this point
Copy the full SHA e883c52View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0317bfa - Browse repository at this point
Copy the full SHA 0317bfaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 832820e - Browse repository at this point
Copy the full SHA 832820eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fc7daf - Browse repository at this point
Copy the full SHA 3fc7dafView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7913cbd - Browse repository at this point
Copy the full SHA 7913cbdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e3a4ae - Browse repository at this point
Copy the full SHA 7e3a4aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for a68c996 - Browse repository at this point
Copy the full SHA a68c996View commit details -
Configuration menu - View commit details
-
Copy full SHA for d0e7d58 - Browse repository at this point
Copy the full SHA d0e7d58View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0446e60 - Browse repository at this point
Copy the full SHA 0446e60View commit details -
We should return true to continue traversal at invalid nodes. We should also recurse through Stmt nodes that aren't Exprs, since we don't handle them in bindgen.
Configuration menu - View commit details
-
Copy full SHA for fec0814 - Browse repository at this point
Copy the full SHA fec0814View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1e3af56 - Browse repository at this point
Copy the full SHA 1e3af56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7735a89 - Browse repository at this point
Copy the full SHA 7735a89View commit details -
We weren't returning results for anything but string literals. Fixes header_constant_evaluate_h
Configuration menu - View commit details
-
Copy full SHA for 19badfd - Browse repository at this point
Copy the full SHA 19badfdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0362eac - Browse repository at this point
Copy the full SHA 0362eacView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3523b23 - Browse repository at this point
Copy the full SHA 3523b23View commit details -
Adjust the end of the range given in tokenize
Clang uses source ranges which start at the first character of the first token and end at the first character of the last token, while libclang assumes that the end of the range has been adjusted to after the last character of the last token. tokenize is the only place we rely on this, so just adjust it here.
Configuration menu - View commit details
-
Copy full SHA for 0e76552 - Browse repository at this point
Copy the full SHA 0e76552View commit details
Commits on Feb 21, 2020
-
Configuration menu - View commit details
-
Copy full SHA for d09a320 - Browse repository at this point
Copy the full SHA d09a320View commit details -
Configuration menu - View commit details
-
Copy full SHA for f78bee2 - Browse repository at this point
Copy the full SHA f78bee2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9dc2346 - Browse repository at this point
Copy the full SHA 9dc2346View commit details -
Configuration menu - View commit details
-
Copy full SHA for fca9753 - Browse repository at this point
Copy the full SHA fca9753View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e034d1 - Browse repository at this point
Copy the full SHA 3e034d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for ae382f1 - Browse repository at this point
Copy the full SHA ae382f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ed0781 - Browse repository at this point
Copy the full SHA 1ed0781View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c0ffe3 - Browse repository at this point
Copy the full SHA 8c0ffe3View commit details -
Configuration menu - View commit details
-
Copy full SHA for e0ed47a - Browse repository at this point
Copy the full SHA e0ed47aView commit details -
Explicitly visit ObjCTypeParamDecls
RecursiveASTVisitor doesn't call TraverseDecl for these, it calls TraverseObjCTypeParamDecl directly, so we need to intercept this at the Visit function.
Configuration menu - View commit details
-
Copy full SHA for 137e47e - Browse repository at this point
Copy the full SHA 137e47eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 919124d - Browse repository at this point
Copy the full SHA 919124dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6115d41 - Browse repository at this point
Copy the full SHA 6115d41View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c28a58 - Browse repository at this point
Copy the full SHA 2c28a58View commit details -
Use command-line args to tell preprocessor to keep detailed records
We used to build a CompilerInvocation and directly set the preprocessor option to keep detailed records, but we can just tack on CLI args for the same thing.
Configuration menu - View commit details
-
Copy full SHA for 4ea4609 - Browse repository at this point
Copy the full SHA 4ea4609View commit details
Commits on Feb 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 5c2d4f9 - Browse repository at this point
Copy the full SHA 5c2d4f9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2334ffc - Browse repository at this point
Copy the full SHA 2334ffcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 272ef10 - Browse repository at this point
Copy the full SHA 272ef10View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9fc9974 - Browse repository at this point
Copy the full SHA 9fc9974View commit details -
Configuration menu - View commit details
-
Copy full SHA for 02cb226 - Browse repository at this point
Copy the full SHA 02cb226View commit details
Commits on Mar 2, 2020
-
Configuration menu - View commit details
-
Copy full SHA for a6ddacd - Browse repository at this point
Copy the full SHA a6ddacdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d82749 - Browse repository at this point
Copy the full SHA 8d82749View commit details -
Configuration menu - View commit details
-
Copy full SHA for 80fe522 - Browse repository at this point
Copy the full SHA 80fe522View commit details
Commits on Mar 3, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 4e6809b - Browse repository at this point
Copy the full SHA 4e6809bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d6d48c0 - Browse repository at this point
Copy the full SHA d6d48c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c1444d - Browse repository at this point
Copy the full SHA 2c1444dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7df04f4 - Browse repository at this point
Copy the full SHA 7df04f4View commit details -
Configuration menu - View commit details
-
Copy full SHA for bc57ed1 - Browse repository at this point
Copy the full SHA bc57ed1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e3c5dd - Browse repository at this point
Copy the full SHA 4e3c5ddView commit details -
Fix expectations for tests that now check struct field offsets
Before Clang 9 these tests did not emit field offset checks because libclang didn't expose information in these cases. This is fixed in the new interface now, so we can expect bindgen to emit these checks with all libclang versions.
Configuration menu - View commit details
-
Copy full SHA for d18d554 - Browse repository at this point
Copy the full SHA d18d554View commit details -
Update expectations for clang 3.9
Several bugs/limitations that existed with clang 3.9 are now gone.
Configuration menu - View commit details
-
Copy full SHA for da05e77 - Browse repository at this point
Copy the full SHA da05e77View commit details -
Configuration menu - View commit details
-
Copy full SHA for deea936 - Browse repository at this point
Copy the full SHA deea936View commit details -
Move CXEvalResultKind definition for LLVM <= 3.8 into impl header
I can't easily bindgen clang_interface.hpp if it includes C++ headers, but we don't need clang/basic/Version.h in that header anyway if we move this into clang_interface_impl.hpp instead.
Configuration menu - View commit details
-
Copy full SHA for 9ccb4d1 - Browse repository at this point
Copy the full SHA 9ccb4d1View commit details -
Do not visit children of implicit decls unless the decl is base
The libclang visitor will visit children of an implicit decl only if that decl is the top-level parent passed in `Decl_visitChildren`. Otherwise, we should skip traversal of implicit decls.
Configuration menu - View commit details
-
Copy full SHA for 94db32b - Browse repository at this point
Copy the full SHA 94db32bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 40ed73d - Browse repository at this point
Copy the full SHA 40ed73dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b7e161d - Browse repository at this point
Copy the full SHA b7e161dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b16276 - Browse repository at this point
Copy the full SHA 3b16276View commit details -
Configuration menu - View commit details
-
Copy full SHA for c11af74 - Browse repository at this point
Copy the full SHA c11af74View commit details -
Configuration menu - View commit details
-
Copy full SHA for 35b3d98 - Browse repository at this point
Copy the full SHA 35b3d98View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b222e1 - Browse repository at this point
Copy the full SHA 3b222e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for b4c7c2d - Browse repository at this point
Copy the full SHA b4c7c2dView commit details
Commits on Mar 4, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 22e39c2 - Browse repository at this point
Copy the full SHA 22e39c2View commit details
Commits on Mar 15, 2020
-
Configuration menu - View commit details
-
Copy full SHA for bf1155a - Browse repository at this point
Copy the full SHA bf1155aView commit details
Commits on Mar 18, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 8fa4e6a - Browse repository at this point
Copy the full SHA 8fa4e6aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 854d663 - Browse repository at this point
Copy the full SHA 854d663View commit details
Commits on Mar 19, 2020
-
Make clang interface C only to avoid C++ mangling issues
Platforms don't mangle C++ the same, so we should avoid depending on C++ mangling if we're going to embed a bindings file.
Configuration menu - View commit details
-
Copy full SHA for 79f7568 - Browse repository at this point
Copy the full SHA 79f7568View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd1d72a - Browse repository at this point
Copy the full SHA bd1d72aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a5d6d1 - Browse repository at this point
Copy the full SHA 8a5d6d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for d7dacc3 - Browse repository at this point
Copy the full SHA d7dacc3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 86c6cc5 - Browse repository at this point
Copy the full SHA 86c6cc5View commit details
Commits on Mar 20, 2020
-
Configuration menu - View commit details
-
Copy full SHA for ff7f76f - Browse repository at this point
Copy the full SHA ff7f76fView commit details -
Configuration menu - View commit details
-
Copy full SHA for e1748a7 - Browse repository at this point
Copy the full SHA e1748a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6dae240 - Browse repository at this point
Copy the full SHA 6dae240View commit details
Commits on Mar 23, 2020
-
Pass QualTypes to Rust as void* to avoid ABI issues
We can't pass C++ objects by value from C++ to Rust. QualType has an interface for converting back and forth to void*, so we can use that instead.
Configuration menu - View commit details
-
Copy full SHA for 1a5821f - Browse repository at this point
Copy the full SHA 1a5821fView commit details