Linus,
Attached patch fixes numerous warnings in ALSA core of the type "unused
variable foo" due to defined-away functions.
Usual solution applied.
Patch is against current BK, please apply.
Robert Love
Fix numerous ALSA core compiler warnings of the type "unused variable foo"
include/sound/core.h | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff -urN linux-2.5.48/include/sound/core.h linux/include/sound/core.h
--- linux-2.5.48/include/sound/core.h 2002-11-17 23:29:57.000000000 -0500
+++ linux/include/sound/core.h 2002-11-18 15:51:59.000000000 -0500
@@ -177,11 +177,11 @@
wake_up(&card->power_sleep);
}
#else
-#define snd_power_lock(card) do { ; } while (0)
-#define snd_power_unlock(card) do { ; } while (0)
-#define snd_power_wait(card) do { ; } while (0)
-#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
-#define snd_power_change_state(card, state) do { ; } while (0)
+#define snd_power_lock(card) do { (void)(card); } while (0)
+#define snd_power_unlock(card) do { (void)(card); } while (0)
+#define snd_power_wait(card) do { (void)(card); } while (0)
+#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
+#define snd_power_change_state(card, state) do { (void)(card); } while (0)
#endif
/* device.c */
Robert Love wrote:
> Linus,
>
> Attached patch fixes numerous warnings in ALSA core of the type "unused
> variable foo" due to defined-away functions.
ALSA has an active maintainer, you should at least CC them on patches to
their subsystem...
On Mon, 2002-11-18 at 16:01, Jeff Garzik wrote:
> ALSA has an active maintainer, you should at least CC them on
> patches to their subsystem...
It is hard to tell, they are off on their own list with their own CVS...
Here it is again. Is this OK with you guys? It fixes a bunch of
warnings in my compile.
Robert Love
Fix numerous ALSA core compiler warnings of the type "unused variable foo"
include/sound/core.h | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff -urN linux-2.5.48/include/sound/core.h linux/include/sound/core.h
--- linux-2.5.48/include/sound/core.h 2002-11-17 23:29:57.000000000 -0500
+++ linux/include/sound/core.h 2002-11-18 15:51:59.000000000 -0500
@@ -177,11 +177,11 @@
wake_up(&card->power_sleep);
}
#else
-#define snd_power_lock(card) do { ; } while (0)
-#define snd_power_unlock(card) do { ; } while (0)
-#define snd_power_wait(card) do { ; } while (0)
-#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
-#define snd_power_change_state(card, state) do { ; } while (0)
+#define snd_power_lock(card) do { (void)(card); } while (0)
+#define snd_power_unlock(card) do { (void)(card); } while (0)
+#define snd_power_wait(card) do { (void)(card); } while (0)
+#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
+#define snd_power_change_state(card, state) do { (void)(card); } while (0)
#endif
/* device.c */
> +#define snd_power_unlock(card) do { (void)(card); } while (0)
Why do we use in kernel:
do { (void)(foobar); } while (0)
instead of the simpler and normally used in std files (e.g. assert.h):
((void)(foobar),0)
?
The "do while(0)" is used for multi-statment macros, not the case for
void statment!
ciao
giacomo