conundrum: _C99_SOURCE vs. sigset
stefan at fafoe.narf.at
Fri Aug 4 06:38:34 UTC 2006
On Thu, Aug 03, 2006 at 03:47:34PM -0400, Mikhail Teterin wrote:
> I'm trying to compile a program, which uses threads and has its own daemon
> global variable.
> The variable's declaration results in an error:
> recsnap.C:50: error: `RTRString daemon' redeclared as different kind of symbol
> /usr/include/stdlib.h:252: error: previous declaration of `int daemon(int,
> The daemon()'s declaration in stdlib.h can be turned off by declaring either
> _C99_SOURCE or _ANSI_SOURCE. Unfortunately, both of these defines also turn
> off the declaration of sigset_t and fd_set:
> /usr/include/pthread.h:233: error: expected `,' or `...' before '*' token
> .../include/rtr/selectni.h:129: error: `fd_set' does not name a type
> Can this be solved -- without modifying the vendor's code? Thanks!
The macro _C99_SOURCE is for pure C99 code and _ANSI_SOURCE for C90
code. Both don't include the <pthread.h> header.
More information about the freebsd-questions