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] |
On 10/10/2017 07:41 AM, Sebastian Huber wrote:
On 05/10/17 11:50, Florian Weimer wrote:On 10/05/2017 08:07 AM, Sebastian Huber wrote:Hello, according to the comment in features.h we have: __USE_MISC Define things from 4.3BSD or System V Unix.What about interfaces that are present on newer BSD systems by default, e.g. we have in glibc strings.h:/* The following two functions are non-standard but necessary for non-32 bitplatforms. */ # ifdef __USE_GNU extern int ffsl (long int __l) __THROW __attribute_const__; __extension__ extern int ffsll (long long int __ll) __THROW __attribute_const__; # endif In FreeBSD strings.h we have: #if __BSD_VISIBLE int ffsl(long) __pure2; int ffsll(long long) __pure2; int fls(int) __pure2; int flsl(long) __pure2; int flsll(long long) __pure2; #endif Would it be possible to change the guard in glibc to __USE_MISC?Yes, it should be a simple change. I was worried about the long long part initially, but we have precedent for using long long under __USE_MISC (strtouq in <stdlib.h>).Patch attached.What are the opinions with respect to this patch? The ffsl() and ffsll() are BSD visible in FreeBSD, DragonFlyBSD, some Mac OS X and musl. They are not available in OpenBSD and NetBSD.
Unless there are objects, I'm going to check this in later this week. Thanks, Florian
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |