Stephen Crane
Stephen Crane
The libclang API doesn't expose enough information about the AST for what bindgen really needs, which has spawned numerous workarounds and bugs in bindgen. This PR replaces the generic libclang...
I think reorg is now stable enough to be turned on by default. However, I'd like https://github.com/rust-lang/rust/issues/66464 to get fixed before we do. Large codebases (e.g. python2 & nginx) trigger...
We already support adding compiler flags to a transpiler run, so we can do without compile_commands.json if we're doing a one-off translation of a single file.
Rust 2018 allows `main` to return values that implement the `Termination` trait (i.e. that can be converted into an exit code. We should use this to exit cleanly from `main`...
We need to test on more codebases and make sure it won't cause compilation errors, but `--translate-const-macros` should at least be documented in the manual. Thanks for the suggestion, @jrmuizel
Clap3 deprecated YAML support, so we need to rewrite command-line parsing to use the new APIs.
We should be able to easily transpile all translation units in parallel, either in separate processes or threads. Just needs to be implemented at some point.
Same issue as https://github.com/alexcrichton/libz-sys/issues/49. It looks like you already call pkg_config twice, so would it be alright to not print system libs on the second invocation that emits cargo metadata?
Could we get something that tells us if we regress performance on a commit?
We are currently using the following nightly-only features: Unsafe pointer manipulation: - [ ] `#![feature(const_raw_ptr_to_usize_cast)]` - [ ] `#![feature(const_transmute)]` - [ ] `#![feature(ptr_wrapping_offset_from)]` C ABI: - [x] `#![feature(extern_types)]` Convenience, can...