-
Notifications
You must be signed in to change notification settings - Fork 8.3k
compilers/xcc: Disable -fno-printf-return-value property #54392
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
compilers/xcc: Disable -fno-printf-return-value property #54392
Conversation
XCC doesn't support the -fno-printf-return-value compiler option Signed-off-by: Keith Packard <keithp@keithp.com>
|
@keith-packard We're getting closer, got this now: |
Ok, sounds like we may want to get picolibc running with xcc sometime later then; the GCC version of XCC seems to be quite different than what picolibc gets regular testing with, so my confidence in it generating working code is not as high. Some level of broader test coverage would be really helpful here; I'm open to suggestions on how to make that work. Picolibc has an internal test suite designed to run under emulation on 'bare metal' systems which is how the CI system currently works, testing on x86, arm, risc-v, and power that way. |
|
From what I can determine, the GCC based xt-xcc compiler uses a version of gcc before 4.5.0 as that version includes support for the deprecated("this is a message") form. We can try adding a version check in the one place which uses the deprecated attribute with a message. picolibc/picolibc#423 has the proposed change; I've verified that it doesn't break current GCC, but I don't have any GCC 4.4 or earlier compilers around to test with. You can test this change by using PR #54394, which I've marked DNM at least until it passes picolibc CI and perhaps until after the current Zephyr release is done. |
@keith-packard Yeah, that seems like a fair assessment. It's a weird toolchain 😅 (FYI @nashif) Btw, cherry-picked in your new PR and this was the output (I shortened some paths in this output text to make it easier to read): |
Ok, sounds like a reasonable solution is to just skip xcc for now. Note that if picolibc becomes the default C library, then xcc support would need to be supported, so we're not eliminating any work in the long term, just delaying it.
None of these are too surprising, nor are they going to be hard to fix, but we'll need to test those fixes, and Zephyr itself doesn't provide adequate C library test coverage to do that. Before promising support for this toolchain, I'd like see a plan for executing at least the picolibc test suite. |
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
XCC doesn't support the -fno-printf-return-value compiler option
This should fix the issue seen with clang in #54345 but with the xcc compiler.
Signed-off-by: Keith Packard keithp@keithp.com
Fixes #54345