Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-12-20 | Warn about unused whitelist options | Seo Sanghyeon | |
2018-12-19 | Store original strings in RegexSet | Seo Sanghyeon | |
2018-12-14 | ir: Put function attribute detection under an opt-in flag. | Emilio Cobos Álvarez | |
Given it was a considerable performance hit under some workloads. Closes #1465. | |||
2018-12-14 | clang: Tokenize more lazily. | Emilio Cobos Álvarez | |
Instead of converting all the tokens to utf-8 before-hand, which is costly, and allocating a new vector unconditionally (on top of the one clang already allocates), just do the tokenization more lazily. There's actually only one place in the codebase which needs the utf-8 string, all the others can just work with the byte slice from clang. This should have no behavior change, other than be faster. In particular, this halves the time on my machine spent on the test-case from #1465. I'm not completely sure that this is going to be enough to make it acceptable, but we should probably do it regardless. | |||
2018-12-10 | User-guide link update on docs.rs | Roy Buitenhuis | |
The link to the user guide pointed to https://rust-lang-nursery.github.io/rust-bindgen/ | |||
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 which as well. | Emilio Cobos Álvarez | |
2018-11-30 | Remove the hack now that rustfmt-nightly properly preserves the comments. | Emilio Cobos Álvarez | |
2018-11-30 | Use rustfmt's normalize_doc_attributes, to mostly preserve behavior re. doc ↵ | Emilio Cobos Álvarez | |
comments. | |||
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-30 | Merge pull request #1452 from emilio/whitelist-name | Emilio Cobos Álvarez | |
Don't mangle using the parse callbacks for whitelisting / blacklisting / etc. | |||
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-28 | Don't mangle using the parse callbacks for whitelisting / blacklisting / etc. | Emilio Cobos Álvarez | |
2018-11-27 | Add #[must_use] to functions annotated with __attribute__((warn_unused_result)) | Porter Smith | |
2018-11-26 | callbacks: Allow reporting string macros | chrysn | |
There is no useful action to take on those, but receiving their values (to re-export them as cfg() options) would be helpful right now in integrating with RIOT's build system. | |||
2018-11-13 | Auto merge of #1444 - scoopr:fix_noisy, r=emilio | bors-servo | |
Fix noisy errors This silences errors from template functions and dependant types. | |||
2018-11-14 | Fix noisy errors | Mikko Lehtonen | |
This silences errors from template functions and dependant types. | |||
2018-11-13 | Fix namespaces with macro names | Mikko Lehtonen | |
2018-11-10 | Auto merge of #1438 - ekse:item_name, r=emilio | bors-servo | |
Add item_name parse callback. Issue: #428 | |||
2018-11-10 | Add item_name parse callback. | Sébastien Duquette | |
2018-11-09 | Fix unit tests for `--generate functions` arg | Josh Channings | |
2018-11-08 | Fix Builder::command_line_args() --generate typo | Josh Channings | |
Looks like the accepted argument has always been "functions", and this output has always been "function". | |||
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-13 | Changed 'identifier' to 'item', added c++ test | Jason Reed | |
2018-10-12 | Re-add ability to blacklist arbitrary identifiers | Jason Reed | |
(regardless of which sort of Item they are) | |||
2018-10-11 | Minor cleanup after #1419.v0.42.2 | Emilio Cobos Álvarez | |
The previous PR ended up with a lot of just-called-once methods. Just inline them since they're confusing otherwise. Also avoid testing all the variants of an enum if there was a match already, or if the enum is not anonymous. This is mostly a minor optimization. | |||
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-10-04 | Update cexpr dependency | kpcyrd | |
2018-10-01 | ir: Fix tabs in context.rs. | Emilio Cobos Álvarez | |
2018-10-01 | adds 'async' to list of matches in 'rust_mangle' | Azi Crawford | |
2018-09-30 | Fix args_are_cpp to look for -x without = | David Vo | |
Clang doesn't allow `=` between `-x` and the language name. | |||
2018-09-26 | A better fix for the calling convention madness. | Emilio Cobos Álvarez | |
Seems like a better fix, which allows us to preserve typedefs properly, and also to find the calling convention. Fixes #1402. | |||
2018-09-26 | Better detect effective target. | Emilio Cobos Álvarez | |
I just realized that we don't really check for this but that clang does. | |||
2018-09-25 | Back out changes | jkozlowski | |
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 | Always force repr(align) attributes for stuff with alignment >= 16 | Emilio Cobos Álvarez | |
To work-around some cases of https://github.com/rust-lang/rust/issues/54341. Other cases where u128 and u64 are mixed in fields might not behave correctly, but the field offset assertions would catch them. Fixes #1370 | |||
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-19 | Add detection for i128 / u128 support. | Emilio Cobos Álvarez | |
2018-09-14 | Fix typo: s/unkown/unknown/ (missing 'n') | Daniel Holbert | |
2018-09-13 | Auto merge of #1384 - emilio:whitespace-comment, r=fitzgen | bors-servo | |
ir: Preserve better whitespace in comments. Fixes #1341. |