Age | Commit message (Collapse) | Author |
|
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.
|
|
ir: Ensure everything agrees in which kind of variation an enum generates.
Fixes #1418.
|
|
|
|
|
|
Update clang-sys.
|
|
|
|
Skip bitfield unit tests on big-endian platforms.
Fixes #1412.
|
|
Fixes #1412.
|
|
Puts blocks behind a switch.
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.
|
|
|
|
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.
|
|
Update some crates
This lands #1390 with some test fixes and a clang-sys update.
Part of #1407.
Closes #1390.
|
|
|
|
|
|
|
|
|
|
adds 'async' to list of matches in 'rust_mangle'
r? @emilio
I'll need to install `rustfmt` before I do anything more elaborate
|
|
|
|
|
|
Fix args_are_cpp to look for -x without =
Clang doesn't allow `=` between `-x` and the language name.
|
|
Clang doesn't allow `=` between `-x` and the language name.
|
|
A better fix for the calling convention madness.
See the commit message for details.
|
|
Seems like a better fix, which allows us to preserve typedefs properly, and
also to find the calling convention.
Fixes #1402.
|
|
I just realized that we don't really check for this but that clang does.
|
|
|
|
|
|
PartialOrd and Ord for enum
Hello all,
This PR tries to fix #1395.
Many thanks for any comment.
|
|
|
|
Also adds a test header I missed from the previous PR.
Fixes #1393
|
|
codegen: Generate u128 / i128 when available.
This is the first step to fix #1370 / #1338 / etc.
Fix for that will build up on this.
|
|
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
|
|
|
|
This is very mechanical and boring, but needed.
|
|
|
|
|
|
Fix typo: s/unkown/unknown/ (missing 'n')
|
|
|
|
ir: Preserve better whitespace in comments.
Fixes #1341.
|
|
|
|
Update mdbook.
|
|
|
|
Fixes #1341.
|
|
ir: Handle overflowing integer constant evaluation properly.
Fixes #1380
|
|
|
|
|
|
Fixes #1380
|
|
before, bindgen -- -I blah would try to open `-I` as a header file.
|
|
This demonstrates the [...] abbreviation of large arrays in contrast to
the std variety. (Long (>32) arrays currently don't have a dedicated
test, but are piggy-backed on the derive-debug-bitfield and
derive-debug-function-pointer tests).
Note that the single occurrence of the `std` namespace in the
expectation is valid: No --ctypes-prefix was set, and ::std::os::raw is
the default value that needs to be overridden in most practical
--use-core applications.
|
|
As --use-core is typically given when the wrapped library is to be used
in a no_std environment, format! and String can not be used.
This is a quick fix that will cause regressions in the quality of the
debug output to users that use core but are not no_std, but enables the
use of bindgen with implemented Debug traits to no_std users.
Closes: https://github.com/rust-lang-nursery/rust-bindgen/issues/1100
|
|
Contributes-To: https://github.com/rust-lang-nursery/rust-bindgen/issues/1100
|