On Wed, Jun 27, 2007 at 05:52:08PM +0200, Joerg Schilling wrote: > Adrian Bunk <[EMAIL PROTECTED]> wrote: > > > That's a good point I missed. > > > > What about: > > > > #if defined(__GNUC__) && __STDC_VERSION__ < 19901L > > __extension__ typedef signed long long __s64; > > __extension__ typedef unsigned long long __u64; > > #else > > typedef signed long long __s64; > > typedef unsigned long long __u64; > > #endif > > What about using: > > #if (defined(__GNUC__) || defined(__SUNPRO_C)) && !defined(__STRICT_ANSI__)
AFAIR __extension__ was gcc specific. Does the Sun cc provide options for strict C90 checking? And if yes, what is it's syntax for disabling this checking for a line of code? > Well, there seems to be one other compiler (the one from Intel). > It may be that if this compiler does not claim to be GCC, another > definituion needs to be added. AFAIR the Intel compiler claims to be gcc. But these are by far not the only C compilers under Linux, and the more important points are: Is there any userspace Linux compiler that does not support "long long"? If yes, is there any other way to tell that something is a 64bit int on 32bit architectures? > Jörg cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/