newlib and newlib-nano is bundled with the gcc-arm embedded toolchain, and seems to provide a pretty suitable and full-featured libc (vprintf and friends can leave a little to be desired though 😬 ). It would be interesting to see a comparison of some common use cases between this libc and the newlib-nano one, w.r.t. code/memory consumption or features!