Hi this patch fixes the abuse of ## in alsa sources. It was used in ways that are not documented to work. It changes all the apparitions to ways that work in all the compilers and do what they are expected to do, changes are code of the form:
#define FOO(args...) printk(bar, ##args) correct writting is: #define FOO(format, args...) printk(bar, foo, ##args) Notice that this is abused also in other creative ways, all the uses are changed to follow this last construct that is documented to work in last ANSI standard (and gcc documentation by the way). gcc-2.96 & gcc-3.0 don't like that construct, and notice that this was not valid C in the first place. Resulting code compile also witohut errors with egcs-1.1.2. If you have any questions/comments, please told me. Later, Juan. diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-ad1816a.c alsa-driver-0.5.12-hack/cards/card-ad1816a.c --- alsa-driver-0.5.12/cards/card-ad1816a.c Mon Oct 22 15:33:33 2001 +++ alsa-driver-0.5.12-hack/cards/card-ad1816a.c Thu Nov 8 16:02:01 2001 @@ -132,7 +132,7 @@ #define DRIVER_NAME "snd-card-ad1816a" -#define snd_card_ad1816a_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_card_ad1816a_printk(format, args...) snd_printk(__FILE__": " +format, ##args) static void snd_card_ad1816a_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-als100.c alsa-driver-0.5.12-hack/cards/card-als100.c --- alsa-driver-0.5.12/cards/card-als100.c Mon Oct 22 15:33:33 2001 +++ alsa-driver-0.5.12-hack/cards/card-als100.c Thu Nov 8 19:14:28 2001 @@ -132,7 +132,7 @@ #define DRIVER_NAME "snd-card-als100" -#define snd_als100_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_als100_printk(format, args...) snd_printk(__FILE__": "format, ##args) static void snd_card_als100_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-als4000.c alsa-driver-0.5.12-hack/cards/card-als4000.c --- alsa-driver-0.5.12/cards/card-als4000.c Mon Oct 22 15:33:33 2001 +++ alsa-driver-0.5.12-hack/cards/card-als4000.c Thu Nov 8 19:17:57 2001 @@ -82,7 +82,7 @@ typedef struct snd_card_als4k snd_card_als4k_t; -#define snd_als4k_printk(args...) snd_printk(__FILE__": " args) +#define snd_als4k_printk(format, args...) snd_printk(__FILE__": " format, ##args) static void snd_card_als4k_use_inc(snd_card_t *card) { diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-azt2320.c alsa-driver-0.5.12-hack/cards/card-azt2320.c --- alsa-driver-0.5.12/cards/card-azt2320.c Mon Oct 22 15:33:33 2001 +++ alsa-driver-0.5.12-hack/cards/card-azt2320.c Thu Nov 8 19:15:08 2001 @@ -143,7 +143,7 @@ #define DRIVER_NAME "snd-card-azt2320" -#define snd_azt2320_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_azt2320_printk(format, args...) snd_printk(__FILE__": "format, ##args) static void snd_card_azt2320_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-dt0197h.c alsa-driver-0.5.12-hack/cards/card-dt0197h.c --- alsa-driver-0.5.12/cards/card-dt0197h.c Mon Oct 22 15:33:33 2001 +++ alsa-driver-0.5.12-hack/cards/card-dt0197h.c Thu Nov 8 19:15:52 2001 @@ -91,7 +91,7 @@ #define DRIVER_NAME "snd-card-dt0197h" -#define snd_dt0197h_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_dt0197h_printk(format, args...) snd_printk(__FILE__": "format, ##args) static void snd_card_dt0197h_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-es968.c alsa-driver-0.5.12-hack/cards/card-es968.c --- alsa-driver-0.5.12/cards/card-es968.c Mon Oct 22 15:33:34 2001 +++ alsa-driver-0.5.12-hack/cards/card-es968.c Thu Nov 8 19:16:25 2001 @@ -77,7 +77,7 @@ #define DRIVER_NAME "snd-card-es968" -#define snd_es968_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_es968_printk(format, args...) snd_printk(__FILE__": "format, ##args) static void snd_card_es968_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/cards/card-opti92x-ad1848.c alsa-driver-0.5.12-hack/cards/card-opti92x-ad1848.c --- alsa-driver-0.5.12/cards/card-opti92x-ad1848.c Mon Oct 22 15:33:34 2001 +++ alsa-driver-0.5.12-hack/cards/card-opti92x-ad1848.c Thu Nov 8 16:00:54 2001 @@ -154,7 +154,7 @@ #define DRIVER_NAME "snd-card-opti92x" #endif /* OPTi93X */ -#define snd_card_opti9xx_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_card_opti9xx_printk(format, args...) snd_printk(__FILE__": "format, +##args) static void snd_card_opti9xx_use_inc(snd_card_t *card) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/include/driver.h alsa-driver-0.5.12-hack/include/driver.h --- alsa-driver-0.5.12/include/driver.h Thu Nov 8 19:43:43 2001 +++ alsa-driver-0.5.12-hack/include/driver.h Thu Nov 8 15:24:47 2001 @@ -519,7 +519,7 @@ #endif #ifdef CONFIG_SND_DEBUG_DETECT -#define snd_printdd( args... ) snd_printk( ##args ) +#define snd_printdd( args... ) snd_printk( args ) #else #define snd_printdd( args... ) /* nothing */ #endif diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/include/pcm_plugin.h alsa-driver-0.5.12-hack/include/pcm_plugin.h --- alsa-driver-0.5.12/include/pcm_plugin.h Mon Aug 7 10:55:42 2000 +++ alsa-driver-0.5.12-hack/include/pcm_plugin.h Thu Nov 8 13:59:56 2001 @@ -83,7 +83,7 @@ snd_pcm_channel_params_t *hwparams); #ifdef PLUGIN_DEBUG -#define pdprintf( args... ) printk( "plugin: " ##args) +#define pdprintf( args... ) printk( "plugin: ", args) #else #define pdprintf( args... ) { ; } #endif diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/include/rme9652.h alsa-driver-0.5.12-hack/include/rme9652.h --- alsa-driver-0.5.12/include/rme9652.h Wed Feb 16 18:43:13 2000 +++ alsa-driver-0.5.12-hack/include/rme9652.h Thu Nov 8 13:59:56 2001 @@ -136,7 +136,7 @@ #include "pcm.h" #ifdef DEBUG -#define PRINTK(format, a...) printk(format, ## a) +#define PRINTK(format, a...) printk(format, ##a) #else #define PRINTK(format, a...) #endif diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/lowlevel/isa/ad1816a.c alsa-driver-0.5.12-hack/lowlevel/isa/ad1816a.c --- alsa-driver-0.5.12/lowlevel/isa/ad1816a.c Mon Oct 22 15:33:38 2001 +++ alsa-driver-0.5.12-hack/lowlevel/isa/ad1816a.c Thu Nov 8 15:49:15 2001 @@ -23,7 +23,7 @@ #include "../../include/driver.h" #include "../../include/ad1816a.h" -#define snd_ad1816a_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_ad1816a_printk(format, args...) snd_printk(__FILE__ ": " format, +##args) static inline int snd_ad1816a_busy_wait(ad1816a_t *codec) diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/lowlevel/isa/opti93x.c alsa-driver-0.5.12-hack/lowlevel/isa/opti93x.c --- alsa-driver-0.5.12/lowlevel/isa/opti93x.c Mon Oct 22 15:33:48 2001 +++ alsa-driver-0.5.12-hack/lowlevel/isa/opti93x.c Thu Nov 8 15:49:30 2001 @@ -25,7 +25,7 @@ #include "../../include/driver.h" #include "../../include/opti93x.h" -#define snd_opti93x_printk(args...) snd_printk(__FILE__": " ##args) +#define snd_opti93x_printk(format, args...) snd_printk(__FILE__ ": " format, +##args) static struct { unsigned int hertz; diff -urN --exclude-from=/home/mitica/quintela/config/misc/dontdiff alsa-driver-0.5.12/lowlevel/isa/wavefront.c alsa-driver-0.5.12-hack/lowlevel/isa/wavefront.c --- alsa-driver-0.5.12/lowlevel/isa/wavefront.c Thu Nov 8 19:43:43 2001 +++ alsa-driver-0.5.12-hack/lowlevel/isa/wavefront.c Thu Nov 8 15:26:14 2001 @@ -137,7 +137,7 @@ #ifdef WF_DEBUG #define DPRINT(cond, format, args...) \ if ((dev->debug & (cond)) == (cond)) { \ - snd_printk (LOGNAME format, ## args); \ + snd_printk (LOGNAME format, ##args); \ } #else #define DPRINT(cond, format, args...) -- In theory, practice and theory are the same, but in practice they are different -- Larry McVoy _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel