qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] qemu-kvm: fix pulseaudio detection in configure


From: Marc-Antoine Perennou
Subject: Re: [Qemu-devel] [PATCH] qemu-kvm: fix pulseaudio detection in configure
Date: Thu, 9 Jun 2011 17:52:36 +0200

On 4 June 2011 00:54, malc <address@hidden> wrote:
> On Sat, 4 Jun 2011, Aurelien Jarno wrote:
>
>> On Sat, Jun 04, 2011 at 01:57:23AM +0400, malc wrote:
>> > On Fri, 3 Jun 2011, Aurelien Jarno wrote:
>> >
>> > > On Fri, Apr 29, 2011 at 05:59:19PM +0200, Marc-Antoine Perennou wrote:
>> > > > pulse/simple.h does not include stdlib.h
>> > > > We cannot use NULL since it may not be defined
>> > > > Use 0 instead
>> > >
>> > > I am unable to reproduce this issue, even with gcc-4.6. Also please note
>> > > that NULL is defined in <stddef.h>, not <stdlib.h>. <stddef.h> is
>> > > included from <sys/types.h> which is included from <pulse/simple.h>.
>> > >
>> > > Do you have more information about the issue.
>> > >
>> > > > Signed-off-by: Marc-Antoine Perennou <address@hidden>
>> > > > ---
>> > > >  configure |    2 +-
>> > > >  1 files changed, 1 insertions(+), 1 deletions(-)
>> > > >
>> > > > diff --git a/configure b/configure
>> > > > index ea8b676..d67c3ce 100755
>> > > > --- a/configure
>> > > > +++ b/configure
>> > > > @@ -1567,7 +1567,7 @@ for drv in $audio_drv_list; do
>> > > >
>> > > >      pa)
>> > > >      audio_drv_probe $drv pulse/simple.h "-lpulse-simple -lpulse" \
>> > > > -        "pa_simple *s = NULL; pa_simple_free(s); return 0;"
>> > > > +        "pa_simple *s = 0; pa_simple_free(s); return 0;"
>> > >
>> > > It should be ((void*)0) instead of simply 0.
>> >
>> > No it shouldn't.
>> >
>>
>> If we want to replace #include <stddef.h>, which should use the same
>> code, that is:
>>
>> | #ifndef __cplusplus
>> | #define NULL ((void *)0)
>> | #else   /* C++ */
>> | #define NULL 0
>> | #endif  /* C++ */
>>
>> Given we are writing C code and not C++ code, NULL is defined as
>> ((void *)0).
>
> Doesn't make a dent of a differnce how particular implementation defines
> NULL, 6.2.3.3#3 covers it, what i'm trying to get across is that your
> strong "should" is wrong.
>
> --
> mailto:address@hidden

It's kinda weird actually, just wrote a small program to test:

#include <stddef.h>
int main() {
    int * i = NULL;
    return 0;
}

It builds fine
Now if I replace "stddef.h" by "sys/types.h"
‘NULL’ undeclared

I'm running Gentoo GNU/Linux, and everyone using it in my friends get
the same problem, and there is no problem at all with the whole system
which is around.
(Only gcc 4.6 is installed fyi)

Manually including stddef.h or replacing NULL by 0 or (void*)0 makes it work.

Hope I provided enough informations to justify this thread



reply via email to

[Prev in Thread] Current Thread [Next in Thread]