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

Adrian Bunk (bunk@fs.tum.de)
Wed, 26 Jun 2002 10:20:19 +0200 (CEST)


On Tue, 25 Jun 2002, Rolf Fokkens wrote:

> Hi!

Hi Rolf!

> 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

/*

> Cheers,
>
> Rolf

cu
Adrian

-- 

You only think this is a free country. Like the US the UK spends a lot of time explaining its a free country because its a police state. Alan Cox

- 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/