Contents|Index|Previous|Next
Standard Libraries
GNU CC by itself attempts to be what the ISO/ANSI C standard calls a conforming freestanding implementation. This means all ANSI C language features are available, as well as the
contents of float.h, limits.h, stdarg.h, and stddef.h. The rest of the C library is supplied by the vendor of the operating
system. If that C library doesnt conform to the C standards, then your programs
might get warnings (especially when using -Wall) that you dont expect.
For example, the
sprintf function on SunOS 4.1.3 returns char * while the C standard says that sprintf returns an int. The fixincludes program could make the prototype for this function match the Standard, but
that would be wrong, since the function will still return char *.
If you need a Standard compliant library, then you need to find one, as GNU CC
does not provide one. The GNU C library (called
glibc) has been ported to a number of operating systems, and provides ANSI/ISO,
POSIX, BSD and SystemV compatibility. You could also ask your operating system
vendor if newer libraries are available.