bindgen spells the log callback's va_list parameter the way the host that ran it does. The bindings are generated once and compiled everywhere, so that spelling only happens to be right on the generating host. This was alright for most hosts but is fragile on aarch64 where va_list is a plain 32 bytes struct. Given we only forward the list to vsnprintf, extracting and simplifying the cross-platform rust implementation from the unstable std-lib is cheap and sound. We will just have to re-export the official type once it's stablilized. |
||
|---|---|---|
| .. | ||
| lib.rs | ||
| valist.rs | ||