
From: "Randy.Dunlap" <rddunlap@osdl.org>

Make hweight() macros return unsigned int for 8,16,32 bits,
instead of requiring callers to do that.

drivers/input/joystick/analog.c:414: warning: int format, different type arg (arg 3)
drivers/input/joystick/analog.c:414: warning: int format, different type arg (arg 4)
drivers/input/joystick/analog.c:418: warning: int format, different type arg (arg 4)

Note:  does not address parisc, s390, or sparc64...
waiting for comments.

Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/include/asm-alpha/bitops.h |    6 +++---
 25-akpm/include/asm-ia64/bitops.h  |    6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff -puN include/asm-alpha/bitops.h~hweight-typecast-return-types include/asm-alpha/bitops.h
--- 25/include/asm-alpha/bitops.h~hweight-typecast-return-types	2005-03-02 22:24:31.000000000 -0800
+++ 25-akpm/include/asm-alpha/bitops.h	2005-03-02 22:24:31.000000000 -0800
@@ -353,9 +353,9 @@ static inline unsigned long hweight64(un
 	return __kernel_ctpop(w);
 }
 
-#define hweight32(x) hweight64((x) & 0xfffffffful)
-#define hweight16(x) hweight64((x) & 0xfffful)
-#define hweight8(x)  hweight64((x) & 0xfful)
+#define hweight32(x)	(unsigned int) hweight64((x) & 0xfffffffful)
+#define hweight16(x)	(unsigned int) hweight64((x) & 0xfffful)
+#define hweight8(x)	(unsigned int) hweight64((x) & 0xfful)
 #else
 static inline unsigned long hweight64(unsigned long w)
 {
diff -puN include/asm-ia64/bitops.h~hweight-typecast-return-types include/asm-ia64/bitops.h
--- 25/include/asm-ia64/bitops.h~hweight-typecast-return-types	2005-03-02 22:24:31.000000000 -0800
+++ 25-akpm/include/asm-ia64/bitops.h	2005-03-02 22:24:31.000000000 -0800
@@ -353,9 +353,9 @@ hweight64 (unsigned long x)
 	return result;
 }
 
-#define hweight32(x) hweight64 ((x) & 0xfffffffful)
-#define hweight16(x) hweight64 ((x) & 0xfffful)
-#define hweight8(x)  hweight64 ((x) & 0xfful)
+#define hweight32(x)	(unsigned int) hweight64((x) & 0xfffffffful)
+#define hweight16(x)	(unsigned int) hweight64((x) & 0xfffful)
+#define hweight8(x)	(unsigned int) hweight64((x) & 0xfful)
 
 #endif /* __KERNEL__ */
 
_
