[linux-dvb] Re: [PATCH] Implement repeat key handling in budget IR
xyzzy at speakeasy.org
Mon Feb 26 04:32:25 CET 2007
On Mon, 26 Feb 2007, Oliver Endriss wrote:
> Trent Piepho wrote:
> > The bool type was added here, oct 1 2006:
> > http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e21828743247270d09a86756a0c11702500dbfb
> > This was for kernel 2.6.19. It looks like budget-ci is the first v4l-dvb
> > driver to use it, so there wasn't any pre-2.6.19 compat code for it yet.
> > I suggest adding to compat.h:
> > #ifndef bool
> > #define int bool
> > #endif
> Well, should be
> #define bool int
I meant typedef int bool actually, but it doesn't matter.
> Anyway, bool is a typedef, and the C preprocessor cannot detect a
> typedef. So your #define would replace all occurrences of bool with int,
> no matter which kernel you run.
You're right. I also realize that the existing check for #ifndef true in
compat.h doesn't work either! true and false are part of an enum defined
in linux/stddef.h, not macros.
If compat.h appears before linux/stddef.h, then stddef.h doesn't compile
because of the #define true 1 bit. But if stddef.h is first, then
everything appears to work. I thought this must be because the
in compat.h was working, which wasn't what I expected, but seemed to
explain why there were no errors. But now I realize that changing true to
1 on current kernels, while unnecessary, isn't actually going to cause a
problem (other than the definition of true in stddef.h).
More information about the linux-dvb