summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-01-10ir: Parse whether we should constify an enum variant.Emilio Cobos Álvarez
2017-01-10ir: Add an annotation API to constify enum variants.Emilio Cobos Álvarez
2017-01-10chooser: Add a programmatic API for choosing whether to constify an enum ↵Emilio Cobos Álvarez
variant.
2017-01-10ir: Add a helper to the context to access the user-provided type chooser.Emilio Cobos Álvarez
2017-01-09Auto merge of #391 - servo:bump, r=mbrubeckbors-servo
Bump to 0.1.6 None
2017-01-09Bump to 0.1.6Manish Goregaokar
2017-01-09Auto merge of #390 - emilio:str, r=Manishearthbors-servo
ir: Evaluate constant strings too. r? @Manishearth
2017-01-09ir: Evaluate constant strings too.Emilio Cobos Álvarez
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-06Auto merge of #385 - jsgf:master, r=emiliobors-servo
Update to regex 0.2; use regex::RegexSet for matching Rather than implementing a private RegexSet, implement it in terms of regex::RegexSet, which should be more efficient. Retain the existing RegexSet module and just reimplement its internals, in order to preserve the external API.
2017-01-06Update to regex 0.2; use regex::RegexSet for matchingJeremy Fitzhardinge
Rather than implementing a private RegexSet, implement it in terms of regex::RegexSet, which should be more efficient. Retain the existing RegexSet module and just reimplement its internals, in order to preserve the external API.
2017-01-06tests: Add virtual base tests.Emilio Cobos Álvarez
2017-01-06codegen: Properly handle virtual bases.Emilio Cobos Álvarez
2017-01-06ir: More appropriately track whether we're inheriting virtually.Emilio Cobos Álvarez
2017-01-06ir: Change our representation of base types so they also have a base kind.Emilio Cobos Álvarez
This still doesn't change behavior, but it's nice to split it for easier review. Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-05Auto merge of #382 - jsgf:master, r=fitzgenbors-servo
Allow regexps for --blacklist_type and --opaque_type
2017-01-05Allow regexps for --blacklist_type and --opaque_typeJeremy Fitzhardinge
2016-12-30Auto merge of #374 - fitzgen:derive-debug-with-array-too-big, r=emiliobors-servo
Derive debug with array too big See the first commit's message for details, second commit is just `rustfmt`. r? @emilio Not quite sure whether the `Opaque` struct is fully motivated... it seems like it would be useful later on in codegen, but might not be pulling its own weight without more usage...
2016-12-30Relax opaque layout trait deriving and take alignment into accountNick Fitzgerald
2016-12-29Run `cargo fmt` on `libbindgen`Nick Fitzgerald
2016-12-29Do not derive Copy/Debug for some opaque typesNick Fitzgerald
When we treat a type as opaque, either because it is explicitly annotated as such or because it is a template that has a non-type parameter, we need to check if the size is larger than RUST_DERIVE_IN_ARRAY_LIMIT. Performing this check requires information that is up the stack, in the `Item` rather than in the `CompInfo` or `Type`. Therefore, I introduced two traits to encapsulate whether a thing can derive `Debug` and `Copy` (the `CanDeriveDebug` and `CanDeriveCopy` traits, respectively) and implemented them for ALL THE THINGS. This allowes us to perform our various checks at the level where we have access to the necessary info, and to let sub-levels do their own checks with their sub-info. Fixes #372.
2016-12-29Auto merge of #371 - emilio:pointer, r=fitzgenbors-servo
codegen: Use the canonical type to determine whether we should conver… …t to a pointer an argument. Fixes https://github.com/Yamakaky/rust-bindgen/issues/407 r? @fitzgen
2016-12-29codegen: Use the canonical type to determine whether we should convert to a ↵Emilio Cobos Álvarez
pointer an argument. Fixes https://github.com/Yamakaky/rust-bindgen/issues/407
2016-12-28Auto merge of #369 - saneyuki:replace-error-to-warn, r=fitzgenbors-servo
Replace all non-fatal `error!`s with `warn!`s This fix https://github.com/servo/rust-bindgen/issues/368
2016-12-29Replace all non-fatal `error!`s with `warn!`sTetsuharu OHZEKI
2016-12-28Auto merge of #366 - upsuper:update-readme, r=emiliobors-servo
Update README.md to reflect the current situation There are several changes: * Announce that Clang 3.9 is the new default * Update the install steps for 3.9 * Add installing steps for Windows * Update stylo's usage of bindgen
2016-12-28Update README.md to reflect the current situationXidorn Quan
There are several changes: * Announce that Clang 3.9 is the new default * Update the install steps for 3.9 * Add installing steps for Windows * Update stylo's usage of bindgen
2016-12-28Auto merge of #367 - emilio:auto-redux, r=upsuperbors-servo
ir: More generic handling of non-deductible auto types. Also, merge auto-related tests in `auto.hpp`. r? @upsuper
2016-12-28ir: More generic handling of non-deductible auto types.Emilio Cobos Álvarez
2016-12-28Auto merge of #365 - upsuper:skip-functpl, r=emiliobors-servo
ir: Skip function template earlier. This fixes #364. r? @emilio
2016-12-28ir: Skip function template earlier.Xidorn Quan
This should fix #364.
2016-12-23Auto merge of #360 - emilio:base, r=fitzgenbors-servo
Don't assume that base classes are already resolved. Since it may not be the case. Fixes #359 Also fixes a few other test cases in the codebase that had the wrong namespace relationship. r? @fitzgen
2016-12-23Add test from #358.Emilio Cobos Álvarez
2016-12-23libbindgen: Bump version for crates.ioEmilio Cobos Álvarez
2016-12-23lib: Remove unused libc dependency.Emilio Cobos Álvarez
2016-12-23ir: Don't assume that base classes are already resolved.Emilio Cobos Álvarez
Fixes #359
2016-12-23ir: Don't parse default template parameter types.Emilio Cobos Álvarez
It's a bunch of complexity we don't use nor need.
2016-12-23Auto merge of #357 - emilio:auto, r=fitzgenbors-servo
Multiple cleanups and fix for #355 Fixes #355 Also improves the output of #354. r? @fitzgen
2016-12-23bindgen-integration: run `cargo fmt`Emilio Cobos Álvarez
2016-12-23libbindgen: run `cargo fmt`.Emilio Cobos Álvarez
2016-12-23ir: Be more resistent to failure when parsing enums.Emilio Cobos Álvarez
2016-12-23codegen: Use the canonical type to generate function signatures.Emilio Cobos Álvarez
2016-12-22Auto merge of #354 - Nashenas88:master, r=emiliobors-servo
Followed Resolved Type Ref instead of panicking This could fix #353, but I would really want everyone to review in case I'm missing something important. The compilation continues for the code I'm working with. Also, should I add a regression test for this? I could simply use the code in the referenced issue.
2016-12-22Auto merge of #356 - fitzgen:libclang-is-my-enemy, r=emiliobors-servo
Only load libclang once, and don't unload it See the first commit for details. Second commit is just `cargo fmt`. r? @emilio
2016-12-21Run `cargo fmt` on the sourcesNick Fitzgerald
2016-12-21Ensure that we only load `libclang` once across all threads, and that it is ↵Nick Fitzgerald
not prematurely dropped. Honestly, I'm still not 100% sure what the root cause of the Clang and LLVM issues I was seeing were, but when I ensure that we only have one libclang loaded across all threads and that it is never dropped, the assertions go away. Fixes #350.
2016-12-21Add test for following ResolvedTypeRefPaul Faria
2016-12-21Followed Resolved Type Ref instead of panickingPaul Faria
2016-12-21Auto merge of #352 - emilio:auto, r=fitzgenbors-servo
ir: Handle CXType_Auto. Fixes #351
2016-12-21ir: Handle CXType_Auto.Emilio Cobos Álvarez
2016-12-15Auto merge of #349 - emilio:stylo, r=upsuperbors-servo
Bump version. r? @upsuper