Message ID | 20210207212707.3958570-1-sjg@chromium.org |
---|---|
Headers | show |
Series | Fix compiler warnings for 32-bit ARM | expand |
On 07.02.21 22:27, Simon Glass wrote: > These were noticed when building sandbox on a Raspberry Pi 400, which uses > 32-bit linux. > > To make this work, I enabled CONFIG_HOST_32BIT in 'make menuconfig'. It > would be nice if that were automatic, since we have the logic already in > arch/sandbox/config.mk > > There are still many errors of the form: > > /usr/bin/ld: warning: arch/sandbox/cpu/start.o uses 2-byte wchar_t yet the > output is to use 4-byte wchar_t; use of wchar_t values across objects > may fail For the compiler we use -fshort-wchar. https://stackoverflow.com/questions/19489354/how-to-set-2-byte-wchar-t-output/23896853 discusses the warning. It can be suppressed with a linker flag. The best thing to do would be to replace all L"" constants by u"" constants and eliminate -fshort-wchar from our compiler flags. This requires C11 which we already use since 2018. Best regards Heinrich > > I am not sure how to fix those, but they are not fatal (sandbox still > runs). > > > Simon Glass (7): > mkeficapsule: Correct printf() strings > efi: Fix compiler warnings > pci: swap_case: Allow compilation on 32-bit machines > tpm: Correct warning on 32-bit build > test: acpi: Fix warnings on 32-bit build > doc: sandbox: Fix up dependencies > doc: sandbox: Update instructions on quitting > > cmd/efidebug.c | 2 +- > doc/arch/sandbox.rst | 11 ++++++----- > drivers/misc/swap_case.c | 13 +++++++++++-- > drivers/tpm/tpm2_tis_sandbox.c | 2 +- > lib/efi_loader/efi_capsule.c | 4 ++-- > lib/efi_loader/efi_firmware.c | 4 ++-- > test/dm/acpi.c | 12 ++++++------ > tools/mkeficapsule.c | 14 +++++++------- > 8 files changed, 36 insertions(+), 26 deletions(-) >