Date: Thu, 3 Aug 2006 23:38:39 +0200 From: Stefan Farfeleder <stefan@fafoe.narf.at> To: Mikhail Teterin <mi+mx@aldan.algebra.com> Cc: standards@freebsd.org, questions@freebsd.org Subject: Re: conundrum: _C99_SOURCE vs. sigset Message-ID: <20060803213839.GH33267@wombat.fafoe.narf.at> In-Reply-To: <200608031547.34386.mi%2Bmx@aldan.algebra.com> References: <200608031547.34386.mi%2Bmx@aldan.algebra.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Aug 03, 2006 at 03:47:34PM -0400, Mikhail Teterin wrote: > Hello! > > 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, > 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! Try -D_POSIX_C_SOURCE=200112. The macro _C99_SOURCE is for pure C99 code and _ANSI_SOURCE for C90 code. Both don't include the <pthread.h> header. Stefan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060803213839.GH33267>