Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-12-20 | context: Escape the dyn keyword properly. | Emilio Cobos Álvarez | |
Fixes #1946 | |||
2020-12-19 | var: Avoid a bit of duplication with fit_macro_constants. | Emilio Cobos Álvarez | |
2020-12-19 | Add option to fit macro consts into smaller types | Antoni 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-15 | Remove unsued mutable field logic. | Weston Carvalho | |
2020-12-02 | dyngen: Pass null-terminated byte strings to libloading. | Emilio Cobos Álvarez | |
Fixes #1938. | |||
2020-12-02 | cli: 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-28 | struct_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-26 | lib: Use if let on recently-introduced code. | Emilio Cobos Álvarez | |
2020-11-26 | lib: 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-26 | Add --no-default <regex> flag | Varphone 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-25 | Remove cfg-if dependency. | Emilio Cobos Álvarez | |
We use it so little that it's not worth it. | |||
2020-11-25 | dyngen: 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-25 | codegen: Minor nits for dynamic function generation. | Emilio Cobos Álvarez | |
2020-11-25 | Add dynamic loading support | Joe Ellis | |
Closes #1541. Closes #1846. Co-authored-by: Michael-F-Bryan <michaelfbryan@gmail.com> | |||
2020-11-25 | Rustfmt to green up CI. | Emilio Cobos Álvarez | |
2020-10-16 | codegen: 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-09-16 | codegen: Use shorthand struct initialization when possible. | Emilio Cobos Álvarez | |
2020-09-16 | codegen: Deindent a bit some recently-introduced objective-c code. | Emilio Cobos Álvarez | |
2020-09-16 | Updates for CI | Sebastian Imlay | |
2020-09-16 | Updates from PR comments | Sebastian Imlay | |
2020-09-16 | ran cargo fmt | Sebastian Imlay | |
2020-09-16 | Updates base on comments | Sebastian Imlay | |
* Added TryInto trait implementation from parent to child interfaces. * Added HashSet for protocols so that the protocol inheritance works as well. | |||
2020-09-16 | Initial stuff for changing ownership and adding inheritance | Sebastian Imlay | |
2020-09-15 | Use path_for_whitelisting instead of canonical_path when matching for enum ↵ | Youmu | |
type specification and template opaque type specification | |||
2020-08-29 | codegen: Use shorthand initialization in VTable::new. | Emilio Cobos Álvarez | |
2020-08-25 | Added constructor return type for wasm32 target (#1877) | Emilio Cobos Álvarez | |
2020-08-25 | codegen: Do generate unnamed enums, as they can be referred to by members. | Emilio Cobos Álvarez | |
Fixes #1880 | |||
2020-08-24 | Optimized condition order, added regression test | Audrius | |
2020-08-24 | lib: Fix inferred target when clang target differs from rust target. | Emilio Cobos Álvarez | |
Fixes #1211. | |||
2020-08-21 | Added constructor return type for wasm32 target | Audrius | |
2020-08-15 | codegen: Simplify a bit the code in #1847 | Emilio Cobos Álvarez | |
2020-08-15 | Added Bindgen names to objective-c pointer return types | Sebastian Imlay | |
* Took advantage of the repr transparent to use Bindgen return type names. * Updated unit tests and book | |||
2020-08-14 | Add --target to the clang args earlier | Mike Hommey | |
Because the --target was passed after the include path detection, in cases of cross-compilation, the include path detection would add paths relevant to the host (e.g. /usr/include/x86_64_linux-gnu on x86_64 linux while targeting something else), possibly breaking things along the way. | |||
2020-08-13 | context: Don't pass --target=rust-target to clang when building for the host. | Emilio Cobos Álvarez | |
This will prevent common issues in platforms where the Rust target is not the clang target, like aarch64-apple-darwin (Rust) vs. arm64-apple-darwin. We may want to special-case those too when cross-compiling. | |||
2020-08-09 | Cleanup some `clippy::unused_io_amount` errors | Varphone Wong | |
2020-08-09 | Add --default-macro-constant-type | Chih-Hung Hsieh | |
* --default-macro-constant-type could be 'signed' or 'unsigned' * Its default value is 'unsigned' to use u32/u64 for C macro constants that fit into the u32/u64 ranges. * For old C libraries that use macros as int/long parameter and/or return value types, their macros are better declared as i32/i64 if the values fit the i32/i64 ranges, to be compatible with c_int/c_long types. They can use "--default-macro-constant-type signed" | |||
2020-08-04 | Move `__bindgen_anon_` to constant `DEFAULT_ANON_FIELDS_PREFIX` | Varphone Wong | |
2020-08-04 | Fix “warning: irrefutable if-let pattern” on add to output_vector | Varphone Wong | |
2020-08-04 | Make anon-fields-prefix non-optional | Darren Kulp | |
2020-08-04 | Add --anon-fields-prefix option | Varphone Wong | |
Allow to use the given prefix for the anon fields instead of `__bindgen_anon_`. | |||
2020-08-04 | Fixed const-ness of multidimensional arrays | Joseph Angelo | |
2020-08-03 | codegen: Use shorthand initialization in EnumBuilder. | Emilio Cobos Álvarez | |
This was introduced in #1850. | |||
2020-08-03 | Add --no-debug <regex> flag | Varphone Wong | |
2020-08-03 | Improves bindings for typed and anonymous enums | Cameron Mulhern | |
2020-07-21 | Change non-fatal errors to warnings | leo60228 | |
2020-07-20 | Remove obsoleted `is_loaded` checks | Darren Kulp | |
It is not clear what version of libclang these supported. Refer to #1321, #1304, #916, #915. | |||
2020-07-20 | Remove testing_only_libclang_3_8 and expectations | Darren Kulp | |
2020-07-20 | Simplify handle_function_macro for clang 3.9+ | Darren Kulp | |
2020-07-20 | Stop accommodating libclang 3.8 | Darren Kulp | |
2020-07-20 | Stop accommodating libclang < 3.8 | Darren Kulp | |