On Mon, Mar 01, 2021 at 12:18:52PM -0500, Michael Meissner wrote: > The _sprintfkf.c file was including stdio.h to get the definition of sprintf.
(declaration of) > This patch modifies this so that stdio.h is not included in order to support > freestanding cross compilers that might not provide stdio.h. So the code cannot work at all there? Will not link? > + We use __builtin_sprintf so that we don't have to include stdio.h to > define > + sprintf. Stdio.h might not be present for freestanding cross compilers > that > + do not need to include a library. */ "declare sprintf", and the function is called stdio.g (all lowercase). It is often written <stdio.h>, which makes it easier to handle in sentences. > @@ -54,5 +57,5 @@ int __sprintfkf (char *restrict string, > if (__sprintfieee128) > return __sprintfieee128 (string, format, number); > > - return sprintf (string, format, (long double) number); > + return __builtin_sprintf (string, format, (long double) number); sprintf as well as __builtin_sprintf do not exist exactly when <stdio.h> does not (or are not guaranteed to exist, anyway). Segher