112a9d9c8Sopenharmony_ci<!-- Thanks for filing a bindgen issue! We appreciate it :-) --> 212a9d9c8Sopenharmony_ci 312a9d9c8Sopenharmony_ci### Input C/C++ Header 412a9d9c8Sopenharmony_ci 512a9d9c8Sopenharmony_ci```C++ 612a9d9c8Sopenharmony_ci// Insert your minimal C or C++ header here. 712a9d9c8Sopenharmony_ci// 812a9d9c8Sopenharmony_ci// It should *NOT* have any `#include`s! Not all systems have the same header 912a9d9c8Sopenharmony_ci// files, and therefore any `#include` harms reproducibility. Additionally, 1012a9d9c8Sopenharmony_ci// the test case isn't minimal since the included file almost assuredly 1112a9d9c8Sopenharmony_ci// contains things that aren't necessary to reproduce the bug, and makes 1212a9d9c8Sopenharmony_ci// tracking it down much more difficult. 1312a9d9c8Sopenharmony_ci// 1412a9d9c8Sopenharmony_ci// Use the `--dump-preprocessed-input` flag or the 1512a9d9c8Sopenharmony_ci// `bindgen::Builder::dump_preprocessed_input` method to make your test case 1612a9d9c8Sopenharmony_ci// standalone and without `#include`s, and then use C-Reduce to minimize it: 1712a9d9c8Sopenharmony_ci// https://github.com/rust-lang/rust-bindgen/blob/master/CONTRIBUTING.md#using-creduce-to-minimize-test-cases 1812a9d9c8Sopenharmony_ci``` 1912a9d9c8Sopenharmony_ci 2012a9d9c8Sopenharmony_ci### Bindgen Invocation 2112a9d9c8Sopenharmony_ci 2212a9d9c8Sopenharmony_ci<!-- Place either the `bindgen::Builder` or the command line flags used here. --> 2312a9d9c8Sopenharmony_ci 2412a9d9c8Sopenharmony_ci```Rust 2512a9d9c8Sopenharmony_cibindgen::Builder::default() 2612a9d9c8Sopenharmony_ci .header("input.h") 2712a9d9c8Sopenharmony_ci .generate() 2812a9d9c8Sopenharmony_ci .unwrap() 2912a9d9c8Sopenharmony_ci``` 3012a9d9c8Sopenharmony_ci 3112a9d9c8Sopenharmony_cior 3212a9d9c8Sopenharmony_ci 3312a9d9c8Sopenharmony_ci``` 3412a9d9c8Sopenharmony_ci$ bindgen input.h --whatever --flags 3512a9d9c8Sopenharmony_ci``` 3612a9d9c8Sopenharmony_ci 3712a9d9c8Sopenharmony_ci### Actual Results 3812a9d9c8Sopenharmony_ci 3912a9d9c8Sopenharmony_ci``` 4012a9d9c8Sopenharmony_ciInsert panic message and backtrace (set the `RUST_BACKTRACE=1` env var) here. 4112a9d9c8Sopenharmony_ci``` 4212a9d9c8Sopenharmony_ci 4312a9d9c8Sopenharmony_ciand/or 4412a9d9c8Sopenharmony_ci 4512a9d9c8Sopenharmony_ci```rust 4612a9d9c8Sopenharmony_ci// Insert the (incorrect/buggy) generated bindings here 4712a9d9c8Sopenharmony_ci``` 4812a9d9c8Sopenharmony_ci 4912a9d9c8Sopenharmony_ciand/or 5012a9d9c8Sopenharmony_ci 5112a9d9c8Sopenharmony_ci``` 5212a9d9c8Sopenharmony_ciInsert compilation errors generated when compiling the bindings with rustc here 5312a9d9c8Sopenharmony_ci``` 5412a9d9c8Sopenharmony_ci 5512a9d9c8Sopenharmony_ci### Expected Results 5612a9d9c8Sopenharmony_ci 5712a9d9c8Sopenharmony_ci<!-- 5812a9d9c8Sopenharmony_ciReplace this with a description of what you expected instead of the actual 5912a9d9c8Sopenharmony_ciresults. The more precise, the better! For example, if a struct in the generated 6012a9d9c8Sopenharmony_cibindings is missing a field that exists in the C/C++ struct, note that here. 6112a9d9c8Sopenharmony_ci--> 62