On Fri, Jan 07, 2000 at 07:36:11PM -0500, Luoqi Chen wrote:
> > In an effort to chase down a libc_r bug, I compiled libc_r with CFLAGS=-g
> > (and later CFLAGS=-g3), but ran into linker problems as a result.
> > 
> > blitz:~> gcc poll.c -pthread
> > /usr/lib/libc_r.so: undefined reference to `__sigisempty'
> > 
> > Even the simplest of C programs will get this linker error if using the
> > -pthread option.
> > 
> > So, __sigisempty is an inline function, defined in
> > /usr/include/sys/signalvar.h:
> > 
> > extern __inline int
> > __sigisempty(sigset_t *set)
> > {
> >     int i;
> > 
> >     for (i = 0; i < _SIG_WORDS; i++) {
> >         if (set->__bits[i])
> >             return (0);
> >             }
> >             return (1);
> > }
> > 
> It doesn't make much sense to have an "extern" inline function, gcc probably
> was confused by this, change "extern" to "static" and try again.

Yep, that fixed it.  Thanks!

I just committed the change.

Jason


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to