Bug#231972: Has a decision been made on this?
At Tue, 18 May 2004 10:29:59 +0900,
GOTO Masanori wrote:
> > I hadn't tried it, but now I have. "-ansi -pedantic" causes "long
> > long" to warn, so this shouldn't work.
> >
> > I just tried it; the patch didn't apply because of a conflict in
> > asm-parisc/byteorder.h. After fixing that the testsuite failed. Note
> > that the testsuite is not run during debian/rules build, only during
> > debian/rules binary; there's a bug filed on CDBS about the reason why.
>
> Thanks for your testing. ...uhm, I don't notice about this. Sorry!
> Should we drop this patch instead of fixing this bug?
...And I looked throughtout this bug again. My previous proposed
patch did not actually fix the original problem. More complicated,
sometimes __u64 declaration is not quoted by #ifdef __GNUC__ on some
architectures, so apparently there is no generic way to fix it on all
architectures.
Instead, only for s390, I made the following patch. I tested this
patch fixes this bug on s390. No one objects it, I dupload the newer
linux-kernel-headers with this patch.
diff -Nuar include.org/asm-s390/types.h include/asm-s390/types.h
--- include.org/asm-s390/types.h 2003-10-16 00:12:23.000000000 +0900
+++ include/asm-s390/types.h 2004-06-01 03:56:53.000000000 +0900
@@ -28,9 +28,9 @@
typedef unsigned int __u32;
#ifndef __s390x__
-#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
-typedef __signed__ long long __s64;
-typedef unsigned long long __u64;
+#if defined(__GNUC__)
+__extension__ typedef __signed__ long long __s64;
+__extension__ typedef unsigned long long __u64;
#endif
#else /* __s390x__ */
typedef __signed__ long __s64;
Regards,
-- gotom
Reply to: