Skip to content

Update bindgen to version 0.22 #16

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

Merged
merged 1 commit into from Feb 19, 2017
Merged

Update bindgen to version 0.22 #16

merged 1 commit into from Feb 19, 2017

Conversation

prokopyl
Copy link
Contributor

This commit updates bindgen to version 0.22, enabling support for newer Clang versions (3.6 to 3.9).

The transition to bindgen >= 0.20 brings a few changes, but the biggest one is the fact that the Builder::remove_prefix method has not been re-implemented (and it seems they don't plan to re-implement it, at least not this way, see rust-lang/rust-bindgen#428), therefore breaking the v8-sys API, as all the v8::function are now v8::v8_function.
However, I don't think this is a big deal, as the v8-sys API isn't stable yet, and a -sys crate isn't supposed to have a pretty API anyway. Obviously, this commit updates v8 crate in order to take this change into account, hence the pretty big diff.

The other (non-breaking) changes this transition brings are :

  • bindgen now understands that some parameters are actually booleans, so several 0s/1s have been replaced by trues/falses accordingly;
  • Similarily, some usize types are now u64.
  • Clang now emits clang::TypeKind::Elaborated (since 3.9 I believe), and recognises v8's Local<> types as such, so the build.rs script has been updated to handle both cases.

@dflemstr
Copy link
Owner

Looks good! 👍

@dflemstr dflemstr merged commit 02b123c into dflemstr:master Feb 19, 2017
@prokopyl prokopyl deleted the bindgen-0.20 branch February 19, 2017 21:54
@prokopyl prokopyl mentioned this pull request Feb 19, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants