Bug#317861: conflicting definitions of P_ALL, P_PID, and P_PGID
On Thu, Jul 14, 2005 at 09:31:24PM -0700, Matt Kraai wrote:
> On Thu, Jul 14, 2005 at 02:42:23PM -0400, Daniel Jacobowitz wrote:
> > On Mon, Jul 11, 2005 at 09:47:11AM -0700, Matt Kraai wrote:
> > > Package: libc6-dev
> > > Version: 2.3.2.ds1-22
> > > Severity: serious
> > >
> > > kbd-chooser fails to build because the definitions of P_ALL, P_PID,
> > > and P_PGID in /usr/include/sys/wait.h conflict with those in
> > > /usr/include/linux/wait.h:
> > >
> > > > cc -c -Wall -I. -DNDEBUG=1 -fomit-frame-pointer -Os -DAT_KBD -DUSB_KBD loadkeys.c
> > > > In file included from /usr/include/debian-installer/exec.h:29,
> > > > from /usr/include/debian-installer.h:5,
> > > > from loadkeys.y:24:
> > > > /usr/include/sys/wait.h:100: error: syntax error before numeric constant
> > > > loadkeys.y: In function 'addfunc':
> > > > loadkeys.y:595: warning: comparison is always false due to limited range of data type
> > > > make[1]: *** [loadkeys.o] Error 1
> > > > make[1]: Leaving directory `/tmp/buildd/kbd-chooser-1.15'
> > > > make: *** [build-stamp] Error 2
> >
> > Where is <linux/wait.h> being included from? Is it necessary?
>
> loadkeys.y includes <linux/keyboard.h>, which includes
> <linux/wait.h>. loadkeys.y does use some of the macros defined in
> <linux/keyboard.h>, so it seems like it should include it.
> <linux/keyboard.h> does not appear to use anything from
> <linux/wait.h>, though, so I'm not sure why it includes it.
<linux/keyboard.h> is definitely one of the headers I would recommend
not including. The network headers are generally safe, but that's
about it.
--
Daniel Jacobowitz
CodeSourcery, LLC
Reply to: