undefined reference to __ssputws_r with --specs=nano.specs

Torbjorn SVENSSON <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <[email protected]>
Hi,

I noticed that a lot of testcases fails when running the GCC testsuite 
with --specs=nano.specs.
Below is an example that fails with --specs=nano.specs:

$ /build/13-head-bin/bin/arm-none-eabi-g++ 
/build/gcc13_src/gcc/testsuite/g++.dg/coroutines/pr100611.C -std=c++20 
--specs=nosys.specs -o /dev/null --specs=nano.specs
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/lib/libc_nano.a(libc_a-svfwprintf.o): 
in function `_svfwprintf_r':
(.text._svfwprintf_r+0xd8): undefined reference to `__ssputws_r'
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
(.text._svfwprintf_r+0x834): undefined reference to `__ssputws_r'
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
(.text._svfwprintf_r+0x85c): undefined reference to `__ssputws_r'
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
(.text._svfwprintf_r+0x8a8): undefined reference to `__ssputws_r'
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
(.text._svfwprintf_r+0x8dc): undefined reference to `__ssputws_r'
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: 
/build/13-head-bin/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/lib/libc_nano.a(libc_a-svfwprintf.o):(.text._svfwprintf_r+0x900): 
more undefined references to `__ssputws_r' follow
collect2: error: ld returned 1 exit status


The newlib nano is configured with:

--disable-newlib-supplied-syscalls
--enable-newlib-reent-check-verify
--enable-newlib-reent-small
--enable-newlib-retargetable-locking
--disable-newlib-fvwrite-in-streamio
--disable-newlib-fseek-optimization
--disable-newlib-wide-orient
--enable-newlib-nano-malloc
--disable-newlib-unbuf-stream-opt
--enable-lite-exit
--enable-newlib-global-atexit
--enable-newlib-nano-formatted-io
--disable-nls


Is it expected that the symbol __ssputws_r is referenced but not 
provided when (I presume this is the reason) 
--enable-newlib-nano-formatted-io and --disable-newlib-wide-orient is used?

Kind regards,
Torbjörn
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.