This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]