Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-03-04 | codegen: Properly track alignment of unions. | Emilio Cobos Álvarez | |
This makes us not unnecessarily add repr(align) to unions. Closes #1498. | |||
2019-02-11 | fix one argument block pointer issue, #1378 | Flier Lu | |
2019-02-04 | codegen: Append implicit template parameters to base members. | Emilio Cobos Álvarez | |
Fixes #1514 | |||
2019-01-08 | Support #[repr(packed(N))] on Rust 1.33+ | Christian Legnitto | |
Fixes https://github.com/rust-lang/rust-bindgen/issues/537. | |||
2019-01-03 | Bitfield enums use #[repr(transparent)] on Rust 1.28+ | Christian Legnitto | |
Fixes https://github.com/rust-lang/rust-bindgen/issues/1474. | |||
2018-12-29 | Merge pull request #1473 from emilio/hash | Emilio Cobos Álvarez | |
Some perf tweaks | |||
2018-12-28 | codegen: Make zero-sized arrays affect alignment. | Emilio Cobos Álvarez | |
Fixes #684 | |||
2018-12-23 | codegen: We should not iterate over codegen_items. | Emilio Cobos Álvarez | |
This should allow making it a HashSet. | |||
2018-12-23 | Switch to hashbrown. | Emilio Cobos Álvarez | |
This wins between 2 and 5 milliseconds more in the test-case above, so no reason not to I guess. | |||
2018-12-23 | Switch to FxHash for hash maps and such. | Emilio Cobos Álvarez | |
This isn't such a massive win as I'd have hoped, but it is consistently faster, so there's no reason not to. > ./bindgen-old tests/stylo.hpp --no-rustfmt-bindings > /dev/null 2>&1 6.17s user 0.84s system 98% cpu 7.079 total > ./target/release/bindgen tests/stylo.hpp --no-rustfmt-bindings > /dev/null 2> 5.92s user 0.87s system 98% cpu 6.866 total Which isn't _that_ much but it's quite a bit. | |||
2018-12-02 | codegen: Properly detect bindgen unions. | Emilio Cobos Álvarez | |
The root cause of the issue was the missing: ``` self.saw_bindgen_union |= new.saw_bindgen_union; ``` But I also cleaned up a bit more and removed the unused saw_union. Fixes #1457 | |||
2018-11-30 | Update quote and proc-macro. | Bastien Orivel | |
I give up on the doc comments. This is a rebase of #1334 keeping the formatting of the comments and using TokenStream::from_str instead because one can hope. Fixes #1407. | |||
2018-11-28 | Add source annotation to express explicit derives for a type. | Porter Smith | |
This allows for explicit selection of which traits are derived for a type, e.g. deriving custom traits on particular types that need it. Example usage: ```C++ /// <div rustbindgen derive="Clone"></div> /// <div rustbindgen derive="MyDerivableTrait"></div> struct foo { ... }; ``` generates into ```Rust #[derive(Clone,MyDerivableTrait)] struct foo { ... } ``` | |||
2018-11-27 | Add #[must_use] to functions annotated with __attribute__((warn_unused_result)) | Porter Smith | |
2018-11-07 | Use canonical path for type alias loop detection | Seo Sanghyeon | |
2018-11-06 | codegen: Make the mangling name check work in presence of ↵ | Emilio Cobos Álvarez | |
attribute(overloadable). Fixes #1350 | |||
2018-10-29 | ir: Consistently append implicit template parameters when not using Rust unions. | Emilio Cobos Álvarez | |
Fixes #1429. | |||
2018-10-22 | codegen: Teach bindgen to respect constness of statics. | Emilio Cobos Álvarez | |
2018-10-11 | ir: Ensure everything agrees in which kind of variation an enum generates. | Emilio Cobos Álvarez | |
2018-10-07 | Skip bitfield unit tests on big-endian platforms. | Emilio Cobos Álvarez | |
Fixes #1412. | |||
2018-10-04 | Puts blocks behind a switch. | Emilio Cobos Álvarez | |
Since #1378 broke a bunch of OSX builds. Most people don't care about them and they're in some OSX system headers which means that this could break normal C and C++ stuff. This introduces --generate-block / generate_block to generate these signatures, and adds tests so that this is getting tested. | |||
2018-09-25 | Indicate the anonymous lifetime in Formatter. | jkozlowski | |
2018-09-24 | Auto merge of #1396 - tathanhdinh:master, r=emilio | bors-servo | |
PartialOrd and Ord for enum Hello all, This PR tries to fix #1395. Many thanks for any comment. | |||
2018-09-22 | PartialOrd and Ord for enum | TA Thanh Dinh | |
2018-09-22 | codegen: Explicitly align unions if needed. | Emilio Cobos Álvarez | |
Also adds a test header I missed from the previous PR. Fixes #1393 | |||
2018-09-19 | Teach the float code about u128. | Emilio Cobos Álvarez | |
2018-09-19 | Teach the blob code to generate i128 / u128 if available. | Emilio Cobos Álvarez | |
This is very mechanical and boring, but needed. | |||
2018-09-19 | codegen: Generate u128 / i128 when available. | Emilio Cobos Álvarez | |
2018-09-14 | Fix typo: s/unkown/unknown/ (missing 'n') | Daniel Holbert | |
2018-09-10 | generate type alias for the `block` type | Flier Lu | |
2018-08-28 | Debug implementation: use core if selected | chrysn | |
Contributes-To: https://github.com/rust-lang-nursery/rust-bindgen/issues/1100 | |||
2018-08-24 | Don't generate a __bindgen_align field if we support repr(align). | Emilio Cobos Álvarez | |
2018-08-19 | Not gnereate binding for variadic function with ms_abi | Jean-Philippe Dufraigne | |
rustc fail to compile variadic function with ms_abi: error[E0045]: variadic function must have C or cdecl calling convention As suggested in issue, this short term fix: not generate binding and emit a warning. Fixes #997 | |||
2018-08-14 | Auto merge of #1366 - gnzlbg:vec, r=emiliov0.38.0 | bors-servo | |
Map vector types to arrays and pass them by value This PR maps vector types to arrays and passes them by value (that is, they are passed to C as `[T; N]`. This already allows defining them as a blacklisted opaque type, such that the user can provide its own definition from e.g. `std::arch`. A subsequent PR should map vector types to unit structs with a private member: ```rust #[repr(align(16))] pub struct __m128([f32; 4]); ``` to make their alignment at least be correct. This should allow transmuting `std::arch` types to these types properly. Once that is done, we probably want to detect the canonical vector types (e.g. `__m128`) and pull in the type from `std`/`core`::arch instead. | |||
2018-08-14 | address review comments | gnzlbg | |
2018-08-14 | Minor stylistic nits after #1362. | Emilio Cobos Álvarez | |
2018-08-14 | address comments | Sébastien Duquette | |
2018-08-14 | Convert CodegenOptions to a bitfield. | Sébastien Duquette | |
2018-08-14 | map vector types to arrays and pass them by value | gnzlbg | |
2018-07-30 | Minor cleanup after #1355. | Emilio Cobos Álvarez | |
2018-07-29 | Use associated constants for rust enums when available | Josh Hejna | |
2018-07-05 | ir: Don't assume wchar is 2 bytes. | Emilio Cobos Álvarez | |
Fixes #1345 | |||
2018-06-13 | Fix typos. | Bruce Mitchener | |
2018-06-04 | add --constified-enum to output consts when the default is changed | Daniel Brooks | |
2018-06-04 | remove unnecessary as_ref | Daniel Brooks | |
2018-06-04 | Rename from "enum variant" to "enum style" | Daniel Brooks | |
2018-06-03 | Add an option to set the default codegen style for all enums | Daniel Brooks | |
2018-05-16 | Handle pointer constness at the right level. | Emilio Cobos Álvarez | |
2018-05-03 | codegen: Actually honor the new option for module_lines. | Emilio Cobos Álvarez | |
Only when modules are enabled of course. | |||
2018-04-08 | TemplateParameters.used_template_params doesn't return Option | Tamir Duberstein | |