This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: non-prototype function definitions
On Fri, 8 Mar 2013, Roland McGrath wrote:
> that we used to enforce it in the past. We need a new way to ensure
> that no such signatures creep into the ABI in the future.
No, we don't. Pre-ISO-C compilers are not relevant to compiling programs
with current glibc, and cannot be used with current glibc headers, and it
is not valid in ISO C to call a function whose prototype involves
arguments with types such as char or float without having a prototype in
scope, and all functions now supported as APIs in glibc should have
interfaces defined to involve a prototype. Any ABI issue is at most
relevant, I would say, to interfaces that were already part of the ABI in
releases predating the addition of
/* The GNU libc does not support any K&R compilers or the traditional mode
of ISO C compilers anymore. Check for some of the combinations not
anymore supported. */
#if defined __GNUC__ && !defined __STDC__
# error "You need a ISO C conforming compiler to use the glibc headers"
#endif
to misc/sys/cdefs.h on 2000-03-30 (that is, releases before 2.2); I think
it's reasonable to say that was the point from which at least a C89
compiler was required.
--
Joseph S. Myers
joseph@codesourcery.com