summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-06Merge branch 'master' into generated_name_overrideJustin Smith
2022-10-05context: Fix tokenization of C++20 inline namespace. (#2294)Emilio Cobos Álvarez
Fixes #2293
2022-10-04Merge pull request #2284 from ferrous-systems/bindgen-as-workspaceChristian Poveda
Bindgen as a workspace
2022-10-04split the repo into a workspaceChristian Poveda
remove `clap` dependency :tada: update the book installation instructions
2022-10-03Merge pull request #2291 from ferrous-systems/fix-clippy-lintsChristian Poveda
Address clippy lints
2022-10-03address clippy lintsChristian Poveda
2022-10-03Merge pull request #2285 from ferrous-systems/clone-optionsChristian Poveda
Make `BindgenOptions` clonable
2022-10-03remove referenceChristian Poveda
2022-10-02Enables blocklisting of Objective-C methodsCameron Mulhern
2022-09-28Merge pull request #2287 from goffrie/dont-traverse-stdintChristian Poveda
Don't traverse through special-cased <stdint.h> types.
2022-09-28Don't traverse through special-cased <stdint.h> types.Geoffry Song
2022-09-27Merge pull request #2282 from ferrous-systems/sovereign-module-of-synChristian Poveda
Move codegen postprocessing to its own module
2022-09-27split `processing` moduleChristian Poveda
2022-09-26make `BindgenOptions` clonableChristian Poveda
2022-09-26s/static/constChristian Poveda
2022-09-26update CONTRIBUTING.mdChristian Poveda
2022-09-26Merge remote-tracking branch 'emilio/less-macro-magic' into ↵Christian Poveda
sovereign-module-of-syn
2022-09-23Clean-up postprocessing to use less macro magic.Emilio Cobos Álvarez
2022-09-23update `CONTRIBUTING.md` section about `syn`Christian Poveda
2022-09-23move codegen postprocessing to its own moduleChristian Poveda
2022-09-23Merge pull request #2283 from ferrous-systems/remove-fileChristian Poveda
Remove file added by mistake
2022-09-23remove file added by mistakeChristian Poveda
2022-09-23Merge pull request #2278 from ferrous-systems/size_tChristian Poveda
Map size_t to usize by default and check compatibility [Rebased]
2022-09-23Map size_t to usize by default and check compatibility (fixes #1901, #1903)Geoffrey Thomas
This addresses the underlying issue identified in #1671, that size_t (integer that can hold any object size) isn't guaranteed to match usize, which is defined more like uintptr_t (integer that can hold any pointer). However, on almost all platforms, this is true, and in fact Rust already uses usize extensively in contexts where size_t would be more appropriate, such as slice indexing. So, it's better for ergonomics when interfacing with C code to map the C size_t type to usize. (See also discussion in rust-lang/rust#65473 about how usize really should be defined as size_t, not uintptr_t.) The previous fix for #1671 removed the special case for size_t and defaulted to binding it as a normal typedef. This change effectively reverts that and goes back to mapping size_t to usize (and ssize_t to isize), but also ensures that if size_t is emitted, the typedef'd type of size_t in fact is compatible with usize (defined by checking that the size and alignment match the target pointer width). For (hypothetical) platforms where this is not true, or for compatibility with the default behavior of bindgen between 0.53 and this commit, onwards, you can disable this mapping with --no-size_t-is-usize.
2022-09-23update `CONTRIBUTING.md` section about `syn`Christian Poveda
2022-09-23move codegen postprocessing to its own moduleChristian Poveda
2022-09-22features: Bump LATEST_STABLE_RUST after #2267.Emilio Cobos Álvarez
2022-09-22update to rust 1.64Christian Poveda
2022-09-22put tests behind the `nightly` featureChristian Poveda
2022-09-22use `#[feature(core_ffi_c)]` when availableChristian Poveda
2022-09-22test: add test for GH-422Amanjeev Sethi
GitHub issue 422 was fixed but needs a test. https://github.com/rust-lang/rust-bindgen/issues/422 Signed-off-by: Amanjeev Sethi <aj@amanjeev.com>
2022-09-22codegen: Implement manuallydrop fields better.Emilio Cobos Álvarez
This doesn't change behavior but makes the code make more sense.
2022-09-23Add option to deduplicate extern blocks (#2258)Christian Poveda
2022-09-23Option to wrap union members in ManuallyDrop (#2185)Poliorcetics
2022-09-22add the `-- -std=c++11` flagChristian Poveda
2022-09-22handle `__attribute__((noreturn))` attributeChristian Poveda
2022-09-22handle c++ `[[noreturn]]` attributeChristian Poveda
2022-09-22bring back optional cursor kindChristian Poveda
2022-09-22document `has_attrs`Christian Poveda
2022-09-22document `Attribute`Christian Poveda
2022-09-22find all attributes in a single passChristian Poveda
2022-09-22gate `_Noreturn` detection behind `--enable-fucntion-attribute-detection`Christian Poveda
2022-09-22add `CxTokenKind` argument to `has_attr`Christian Poveda
2022-09-22add testsChristian Poveda
2022-09-22check for noreturn attributeChristian Poveda
2022-09-22add `is_divergent` fieldChristian Poveda
2022-09-18fix `--newtype-global-enum` optionChristian Poveda
2022-09-11add `--newtype-global-enum` optionChristian Poveda
2022-09-09document usage of `syn` in `CONTRIBUTING.md`Christian Poveda
2022-09-09add `BindgenOptions::require_syn` methodChristian Poveda