Re: [BUG] [2.4.19-rc1] w9966 doesn't compile

Jakob Kemi (jakob.kemi@telia.com)
Sat, 29 Jun 2002 14:54:09 +0200


On Wednesday 26 June 2002 10:20, Adrian Bunk wrote:
> On Tue, 25 Jun 2002, Rolf Fokkens wrote:
> > Hi!
>
> Hi Rolf!

Hi Rolf and Adrian!

>
> > While trying to compile 2.4.19-rc1 the following error occurs:
> >
> > w9966.c:68: warning: invalid character in macro parameter name
> > w9966.c:68: badly punctuated parameter list in `#define'
> > w9966.c:69: warning: invalid character in macro parameter name
> > w9966.c:69: badly punctuated parameter list in `#define'
> > w9966.c: In function `w9966_init':
> > w9966.c:329: warning: implicit declaration of function `DPRINTF'
> > w9966.c: In function `w9966_setup':
> > w9966.c:432: warning: implicit declaration of function `DASSERT'
> >
> > Relevant config options seem to me:
> >
> > CONFIG_VIDEO_W9966=m
>
> You are using egcs?
>
> It seems egcs can't handle the following in lines 68-69:
>
> <-- snip -->
>
> ...
> # define DPRINTF(...) do {} while(0)
> # define DASSERT(...) do {} while(0)
> ...
>
> <-- snip -->
>
>
> Since egcs is a supported compiler someone should fix this before
> 2.4.19-final comes out.
>
>
> A solution might be something like the patch below (but I don't know for
> sure whether this is the correct solution):
>
>
> --- drivers/media/video/w9966.c.old Wed Jun 26 10:08:04 2002
> +++ drivers/media/video/w9966.c Wed Jun 26 10:12:56 2002
> @@ -65,8 +65,8 @@
> DPRINTF("Assertion failed at line %d.\n", __LINE__);\
> } while (0)
> #else
> -# define DPRINTF(...) do {} while(0)
> -# define DASSERT(...) do {} while(0)
> +# define DPRINTF(x...)
> +# define DASSERT(x...)
> #endif
>
> /*

Unfortunatley I don't have egcs handy. Would this be a fix for egcs?

--- w9966.c.orig Sat Jun 29 14:23:41 2002
+++ w9966.c Sat Jun 29 14:50:21 2002
@@ -65,8 +65,8 @@
DPRINTF("Assertion failed at line %d.\n", __LINE__);\
} while (0)
#else
-# define DPRINTF(...) do {} while(0)
-# define DASSERT(...) do {} while(0)
+# define DPRINTF(f, a...) do {} while(0)
+# define DASSERT(f, a...) do {} while(0)
#endif

/*

> > Cheers,
> >
> > Rolf
>
> cu
> Adrian

Regards,
Jakob

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/