-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problems with C variadics #177
Comments
I implemented the shortest solution I could come up with. It's not a full solution and it's not implemented in the proper place but it's provided in the case someone finds it useful. esp-1.72.1.0...karlri:rust:esp-1.72.1.0 Ideally the compiler should be updated to not use the llvm intrinsic va_arg, or the va_arg intrinsic in llvm should be fixed, but I'm not competent enough to implement it where it should be implemented. |
I think I traced this bug back to its source. I believe the bug to originate from here on line 340: Can't Expand ISD::VAARG since we have a custom struct, we need Custom implementation.
finally, the big job would be to implement |
I've opened a PR at #201 which should fix this. With it the code in the reproduction repository works as intended, and so does the esp-wifi syslog facility. |
This relates to esp-rs/esp-wifi-sys#16
In https://github.com/bjoernQ/xtensa-rust-variadics-problem-repo I have some very simple code to reproduce the problem.
What I do there
On RISCV it works as expected and outputs
On ESP32 it outputs
The text was updated successfully, but these errors were encountered: