Re: clang (__builtin_ffs) vs /usr/include/string.h

From: Benjamin Kaduk <kaduk_at_MIT.EDU>
Date: Wed, 21 Dec 2011 01:06:08 -0500 (EST)
Hi Larry,

On Tue, 20 Dec 2011, Larry Rosenman wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Is anyone going to fix the following in the clang or FreeBSD system?

I haven't seen any mention of __builtin_ffs on any freebsd lists since 
your thread in october, "system headers with clang?".  That rather makes 
me suspect that no one else is seeing this "problem".  It's hard to fix 
something you don't know about.

>
> In file included from /usr/include/string.h:45:
> /usr/include/strings.h:47:6: error: conflicting types for '__builtin_ffs'
> int      ffs(int) __pure2;
>         ^
> /usr/include/machine/cpufunc.h:140:24: note: expanded from:
> #define        ffs(x)  __builtin_ffs(x)
>                       ^
> /usr/include/strings.h:47:6: note: '__builtin_ffs' is a builtin with
> type 'int (unsigned int)'
> 7 warnings and 1 error generated.
> *** Error code 1
>

As such, since we don't know what the "problem" is, some context for what 
is going on here would be useful -- what are you trying to compile?  Still 
lsof?

>
> This looks like something that needs to change in clang/FreeBSD headers.

Not necessarily -- things from the machine/ hierarchy are pretty uncommon, 
and I wouldn't be surprised if they had dependencies and ordering 
requirements involved.  It could well be an application error, but we 
can't tell, since there is no context.

-Ben Kaduk
Received on Wed Dec 21 2011 - 05:06:13 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:22 UTC