This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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] |
Hi A simple patch to add readir_r() prototypes to all dirent.h files and __restrict to readdir_r.c OK to commit or did I miss something? Thanks. 2013-11-20 Joel Sherrill <joel.sherrill@oarcorp.com> * newlib/libc/posix/readdir_r.c: Add restrict keyword. * newlib/libc/machine/spu/sys/dirent.h, newlib/libc/sys/decstation/sys/dirent.h, newlib/libc/sys/linux/sys/dirent.h, newlib/libc/sys/rtems/sys/dirent.h, newlib/libc/sys/sparc64/sys/dirent.h, newlib/libc/sys/sun4/sys/dirent.h, newlib/libc/sys/sysvi386/sys/dirent.h: Add readdir_r() prototype. On 11/18/2013 6:15 AM, Corinna Vinschen wrote: > On Nov 15 13:45, Joel Sherrill wrote: >> On 11/15/2013 1:41 PM, Craig Howland wrote: >>> On 11/15/2013 01:49 PM, Joel Sherrill wrote: >>>> Hi >>>> >>>> I noticed that readdir_r() does not have a prototype. >>>> It should be in dirent.h. I am happy to add it to >>>> the RTEMS dirent.h but there are other versions of >>>> this file and >>>> >>>> ./libc/include/sys/dirent.h >>>> ./libc/include/dirent.h >>>> ./libc/machine/spu/sys/dirent.h >>>> ./libc/sys/rtems/sys/dirent.h >>>> ./libc/sys/decstation/sys/dirent.h >>>> ./libc/sys/sun4/sys/dirent.h >>>> ./libc/sys/linux/bits/dirent.h >>>> ./libc/sys/linux/sys/dirent.h >>>> ./libc/sys/sparc64/sys/dirent.h >>>> ./libc/sys/sysvi386/sys/dirent.h >>>> >>>> I can drop the prototype in those at the same time. >>>> >>>> And ... Linux man page shows these guards. What should >>>> they be on newlib? >>>> >>>> _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _BSD_SOURCE || >>>> _SVID_SOURCE || _POSIX_SOURCE >>>> >>> It probably is not worth bothering with a guard. >>> dirent.h is not in the C standard, so there is no gate needed based on >>> it. (Someone could say that with your sample gate that it would be skipped with >>> STRICT_ANSI, but from that point of view, dirent.h should not even be included.) >>> POSIX says is was added in issue 2, which is so ancient that it seems >>> unreasonable to add something now to avoid it for someone trying to use issue >>> 1. (I think that the guard would probably be _POSIX_C_SOURCE >= 199209 to be >>> for issue 2, assuming that sys/cdefs.h has been included before the check.) I >>> don't know why GLIBC's test is for 1, instead of 2. >> >> So you would lean to just adding it to every dirent.h >> without a guard? If so, that's really easy. :) > > I agree with Craig. In theory there's no good reason to omit > prototypes which are standard for a long time anyway. > > > Corinna > -- Joel Sherrill, Ph.D. Director of Research & Development joel.sherrill@OARcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985
Attachment:
readdir_r.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |