summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-01-10Use absolute paths for unsaved files passed to clang and prepend -include ↵Andrey Pushkar
directives to them. Fixes #1771 Closes #1857
2021-01-04Update mdbookEric Huss
2020-12-26ci: update mdbook.Emilio Cobos Álvarez
2020-12-26book: Touch the book to ensure that GH actions deploy works.Emilio Cobos Álvarez
2020-12-26ci: Move the remaining CI tasks (updating the book) to GitHub actions.Emilio Cobos Álvarez
2020-12-26ci: Switch most CI to GitHub actions.Emilio Cobos Álvarez
2020-12-26tests: Remove unnecessary system header include that makes macos unhappyEmilio Cobos Álvarez
2020-12-26integration: Forward some features to bindgen.Emilio Cobos Álvarez
2020-12-26Allow log stubs to be unused.Emilio Cobos Álvarez
2020-12-20comp: Fix bitfields to allow underaligned fields after them to take padding ↵Emilio Cobos Álvarez
space. Fixes #1947. There are two separate issues here: First, the change in comp.rs ensures that we don't round up the amount of storage to the alignment of the bitfield. That generates the "expected" output in #1947 (`__BindgenBitfieldUnit<[u8; 3], u16>`). But that's still not enough to fix that test-case because __BindgenBitfieldUnit would be aligned and have padding, and Rust won't put the extra field in the padding. In order to ensure the bitfield starts at the right alignment, but that Rust can put stuff in the extra field, we need to make a breaking change and split the generated fields in two: One preceding that guarantees alignment, and the actual storage, bit-aligned. This keeps the existing behavior while fixing that test-case.
2020-12-20context: Escape the dyn keyword properly.Emilio Cobos Álvarez
Fixes #1946
2020-12-19tests: Add another fit-macro-constant-types test.Emilio Cobos Álvarez
2020-12-19var: Avoid a bit of duplication with fit_macro_constants.Emilio Cobos Álvarez
2020-12-19Add option to fit macro consts into smaller typesAntoni Simka
Add a `--fit-macro-constant-types` option to make bindgen try to fit macro integer constants into types smaller than u32/i32. Useful especially when dealing with 8/16-bit architectures. Closes #1945
2020-12-15Remove unsued mutable field logic.Weston Carvalho
2020-12-02dyngen: Pass null-terminated byte strings to libloading.Emilio Cobos Álvarez
Fixes #1938.
2020-12-02cli: Expose module_raw_lines to the CLI.Emilio Cobos Álvarez
This makes command_line_args properly return them, instead of dropping them on the floor.
2020-11-28struct_layout: Fix field offset computation for packed(n) structs.Emilio Cobos Álvarez
This can cause unnecessary padding to be computed otherwise at the end of the struct. With repr(packed(n)), a field can have padding to adjacent fields as long as its alignment is less than n. So reuse the code we have to align to a field layout, aligning to the struct layout instead. Fixes #1934
2020-11-26lib: Use if let on recently-introduced code.Emilio Cobos Álvarez
2020-11-26lib: Improve c++ auto-detection.Emilio Cobos Álvarez
Fixes #1919, as otherwise we peek the wrong include paths unless you pass "-x c++" or such.
2020-11-26v0.56.0v0.56.0Emilio Cobos Álvarez
2020-11-26Add --no-default <regex> flagVarphone Wong
Sometimes, we need customize the implement of `Default` for certain types, In these cases, the `nodefault` annotation can be used to prevent bindgen to autoderive the `Default` traits for a type.
2020-11-25Remove cfg-if dependency.Emilio Cobos Álvarez
We use it so little that it's not worth it.
2020-11-25dyngen: Handle variadic functions.Emilio Cobos Álvarez
Right now trying to generate a dynamic library with variadic functions panics because we don't account for the extra `...` in the arguments. Keeping the current interface for variadic functions is tricky, as we cannot "wrap" a variadic function (VaList[1] is nightly-only). However, we don't need to. We're already exposing the libloading error, so exposing the function pointer field as public is just fine and allows consumers to call the variadic function. At that point the can_call() / CheckFoo libraries become pointless (you can just do library.function.is_ok() or such), so we can simplify the code as well removing those. [1]: https://doc.rust-lang.org/std/ffi/struct.VaList.html
2020-11-25codegen: Minor nits for dynamic function generation.Emilio Cobos Álvarez
2020-11-25Add tests for dynamic binding generationJoe Ellis
2020-11-25Add dynamic loading supportJoe Ellis
Closes #1541. Closes #1846. Co-authored-by: Michael-F-Bryan <michaelfbryan@gmail.com>
2020-11-25tests: Added option to hand check test differences.Volker Weißmann
2020-11-25Rustfmt to green up CI.Emilio Cobos Álvarez
2020-11-25Update clang-sys dependencySamson Ootoovak
Version 1.0.2 of clang-sys fixes an issue that was causing upstream builds on macOS 11.0 to fail when it couldn't find LLVM configs properly. https://github.com/KyleMayes/clang-sys/blob/master/CHANGELOG.md#102---2020-11-17 https://github.com/KyleMayes/clang-sys/pull/118
2020-11-13Document that people can request releasesEmilio Cobos Álvarez
(and I'd be more than happy to make them happen :))
2020-11-13Document various changes that will get into the next release.Emilio Cobos Álvarez
2020-11-13Keep dependencies up-to-date.Emilio Cobos Álvarez
A few tests change some formatting, but that's fine.
2020-11-13Document 0.47 dot-release.Emilio Cobos Álvarez
2020-10-16codegen: Allow to not derive Debug on enums.Emilio Cobos Álvarez
Fixes #1899. This code predated all the derive machinery, and always hardcoded its derives. We could avoid hard-coding the other traits, but those seem usually-useful, so leave them there for backwards compat for now.
2020-10-07Bump clang-sys to 1.0.1Kyle Mayes
2020-09-16codegen: Use shorthand struct initialization when possible.Emilio Cobos Álvarez
2020-09-16codegen: Deindent a bit some recently-introduced objective-c code.Emilio Cobos Álvarez
2020-09-16Fix test for CISebastian Imlay
2020-09-16Update to fix CISebastian Imlay
2020-09-16Updates for CISebastian Imlay
2020-09-16Updated CHANGELOG.mdSebastian Imlay
2020-09-16Updates from PR commentsSebastian Imlay
2020-09-16Fix spacing issueSebastian Imlay
2020-09-16First attempt to fix CISebastian Imlay
2020-09-16ran cargo fmtSebastian Imlay
2020-09-16Updates base on commentsSebastian Imlay
* Added TryInto trait implementation from parent to child interfaces. * Added HashSet for protocols so that the protocol inheritance works as well.
2020-09-16Initial stuff for changing ownership and adding inheritanceSebastian Imlay
2020-09-15Add integration test for name matchingYoumu
2020-09-15Use path_for_whitelisting instead of canonical_path when matching for enum ↵Youmu
type specification and template opaque type specification