Messages in this thread Patch in this message | | | Date | Wed, 23 Apr 2003 15:01:04 -0500 | From | Art Haas <> | Subject | [PATCH] Replace const to remove warnings |
| |
Hi.
I'd posted a patch a day or two ago which removed some __const__ declarations that GCC said were not needed. A reply to the posting suggested that using __attribute__((const)) was the correct approach. The attached patch adds the attribute.
Here's the initial mail for reference ...
http://www.ussg.iu.edu/hypermail/linux/kernel/0304.2/1440.html
I've built a kernel with this patch and it's running now - 2.5.68-bk? from April 23
Art Haas
===== include/asm-i386/byteorder.h 1.2 vs edited ===== --- 1.2/include/asm-i386/byteorder.h Fri Oct 11 12:15:35 2002 +++ edited/include/asm-i386/byteorder.h Wed Apr 23 10:28:43 2003 @@ -10,7 +10,7 @@ #include <linux/config.h> #endif -static __inline__ __const__ __u32 ___arch__swab32(__u32 x) +static __inline__ __attribute__((const)) __u32 ___arch__swab32(__u32 x) { #ifdef CONFIG_X86_BSWAP __asm__("bswap %0" : "=r" (x) : "0" (x)); @@ -26,7 +26,7 @@ /* gcc should generate this for open coded C now too. May be worth switching to it because inline assembly cannot be scheduled. -AK */ -static __inline__ __const__ __u16 ___arch__swab16(__u16 x) +static __inline__ __attribute__((const)) __u16 ___arch__swab16(__u16 x) { __asm__("xchgb %b0,%h0" /* swap bytes */ : "=q" (x) ===== include/linux/byteorder/swab.h 1.2 vs edited ===== --- 1.2/include/linux/byteorder/swab.h Tue Feb 5 01:43:00 2002 +++ edited/include/linux/byteorder/swab.h Wed Apr 23 10:28:01 2003 @@ -128,7 +128,7 @@ #endif /* OPTIMIZE */ -static __inline__ __const__ __u16 __fswab16(__u16 x) +static __inline__ __attribute__((const)) __u16 __fswab16(__u16 x) { return __arch__swab16(x); } @@ -141,7 +141,7 @@ __arch__swab16s(addr); } -static __inline__ __const__ __u32 __fswab32(__u32 x) +static __inline__ __attribute__((const)) __u32 __fswab32(__u32 x) { return __arch__swab32(x); } @@ -155,7 +155,7 @@ } #ifdef __BYTEORDER_HAS_U64__ -static __inline__ __const__ __u64 __fswab64(__u64 x) +static __inline__ __attribute__((const)) __u64 __fswab64(__u64 x) { # ifdef __SWAB_64_THRU_32__ __u32 h = x >> 32; -- To announce that there must be no criticism of the President, or that we are to stand by the President, right or wrong, is not only unpatriotic and servile, but is morally treasonable to the American public. -- Theodore Roosevelt, Kansas City Star, 1918 - 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/
| |