Age | Commit message (Collapse) | Author | |
---|---|---|---|
2017-01-23 | Unify under the `bindgen` name. | Emilio Cobos Álvarez | |
2017-01-22 | Auto merge of #413 - emilio:debug-array-unaligned, r=fitzgen | bors-servo | |
codegen: Avoid generating invalid Rust code when a struct is not properly aligned. r? @fitzgen cc #412 | |||
2017-01-21 | codegen: Avoid generating invalid Rust code when a struct is not properly ↵ | Emilio Cobos Álvarez | |
aligned. | |||
2017-01-19 | Auto merge of #403 - emilio:variadic-fn, r=fitzgen | bors-servo | |
codegen: Don't implement variadic methods. Fixes #402 r? @fitzgen | |||
2017-01-19 | Auto merge of #401 - emilio:function-checks, r=fitzgen | bors-servo | |
ir: Unify function checks so they apply to non-methods. Fixes #399 r? @fitzgen | |||
2017-01-19 | Auto merge of #397 - emilio:trace-vars, r=fitzgen | bors-servo | |
ir: Trace types across vars. r? @fitzgen | |||
2017-01-19 | ir: Fix the assert no danging items traversal to avoid getting hung on a ↵ | Emilio Cobos Álvarez | |
cyclic reference caused by inner_const.hpp. | |||
2017-01-18 | codegen: Don't implement variadic methods. | Emilio Cobos Álvarez | |
Fixes #402 | |||
2017-01-16 | ir: Unify function checks so they apply to non-methods. | Emilio Cobos Álvarez | |
2017-01-15 | ir: Trace types across vars. | Emilio Cobos Álvarez | |
2017-01-13 | codegen: Fix use generation for non-root module. | Emilio Cobos Álvarez | |
2017-01-13 | codegen: Prefer use instead of type aliases. | Emilio Cobos Álvarez | |
2017-01-13 | Update aster and syntex. | Emilio Cobos Álvarez | |
2017-01-11 | ir: Handle inline namespaces. | Emilio Cobos Álvarez | |
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io> | |||
2017-01-11 | codegen: Don't make auto-opaque types without template params. | Emilio Cobos Álvarez | |
2017-01-11 | ir: Trace through some types while collecting automatically. | Emilio Cobos Álvarez | |
This makes sense because there's no special meaning for some of them to be opaque. | |||
2017-01-11 | ir: Define a set of items we want to collect types through unconditionally. | Emilio Cobos Álvarez | |
2017-01-11 | Auto merge of #393 - emilio:enum-const-api, r=upsuper | bors-servo | |
Provide an API to constify enum variants. r? @upsuper | |||
2017-01-11 | ir: Support hiding enum variants. | Emilio Cobos Álvarez | |
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io> | |||
2017-01-11 | codegen: Constify enum variants. | Emilio Cobos Álvarez | |
2017-01-10 | Auto merge of #383 - emilio:virtual-base, r=fitzgen | bors-servo | |
Tidy up and test virtual inheritance handling. Done while investigating #380. r? @fitzgen | |||
2017-01-10 | ir: Parse whether we should constify an enum variant. | Emilio Cobos Álvarez | |
2017-01-10 | ir: Add an annotation API to constify enum variants. | Emilio Cobos Álvarez | |
2017-01-10 | chooser: Add a programmatic API for choosing whether to constify an enum ↵ | Emilio Cobos Álvarez | |
variant. | |||
2017-01-10 | ir: Add a helper to the context to access the user-provided type chooser. | Emilio Cobos Álvarez | |
2017-01-09 | ir: Evaluate constant strings too. | Emilio Cobos Álvarez | |
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io> | |||
2017-01-06 | Update to regex 0.2; use regex::RegexSet for matching | Jeremy 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-06 | codegen: Properly handle virtual bases. | Emilio Cobos Álvarez | |
2017-01-06 | ir: More appropriately track whether we're inheriting virtually. | Emilio Cobos Álvarez | |
2017-01-06 | ir: 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-05 | Allow regexps for --blacklist_type and --opaque_type | Jeremy Fitzhardinge | |
2016-12-30 | Auto merge of #374 - fitzgen:derive-debug-with-array-too-big, r=emilio | bors-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-30 | Relax opaque layout trait deriving and take alignment into account | Nick Fitzgerald | |
2016-12-29 | Run `cargo fmt` on `libbindgen` | Nick Fitzgerald | |
2016-12-29 | Do not derive Copy/Debug for some opaque types | Nick 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-29 | Auto merge of #371 - emilio:pointer, r=fitzgen | bors-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-29 | codegen: 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-29 | Replace all non-fatal `error!`s with `warn!`s | Tetsuharu OHZEKI | |
2016-12-28 | ir: More generic handling of non-deductible auto types. | Emilio Cobos Álvarez | |
2016-12-28 | ir: Skip function template earlier. | Xidorn Quan | |
This should fix #364. | |||
2016-12-23 | lib: Remove unused libc dependency. | Emilio Cobos Álvarez | |
2016-12-23 | ir: Don't assume that base classes are already resolved. | Emilio Cobos Álvarez | |
Fixes #359 | |||
2016-12-23 | ir: Don't parse default template parameter types. | Emilio Cobos Álvarez | |
It's a bunch of complexity we don't use nor need. | |||
2016-12-23 | libbindgen: run `cargo fmt`. | Emilio Cobos Álvarez | |
2016-12-23 | ir: Be more resistent to failure when parsing enums. | Emilio Cobos Álvarez | |
2016-12-23 | codegen: Use the canonical type to generate function signatures. | Emilio Cobos Álvarez | |
2016-12-22 | Auto merge of #354 - Nashenas88:master, r=emilio | bors-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-21 | Run `cargo fmt` on the sources | Nick Fitzgerald | |
2016-12-21 | Ensure 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-21 | Followed Resolved Type Ref instead of panicking | Paul Faria | |