diff --git a/include/asm-i386/types.h b/include/asm-i386/types.h
index 69f8a5a7c6d04729f3543f2538dfc1af9efcb4db..bdbde4172ae10f93c74f1747db952bd24655861a 100644
--- a/include/asm-i386/types.h
+++ b/include/asm-i386/types.h
@@ -17,9 +17,9 @@ typedef unsigned short __u16;
 typedef __signed__ int __s32;
 typedef unsigned int __u32;
 
-#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
 
 /*
diff --git a/include/asm-microblaze/types.h b/include/asm-microblaze/types.h
index 8c4bef28706388fb7e238cfd866c7dbbb5937b57..3895dc436503a78b39e9de633cab232b2f880a07 100644
--- a/include/asm-microblaze/types.h
+++ b/include/asm-microblaze/types.h
@@ -25,9 +25,9 @@ typedef unsigned short __u16;
 typedef __signed__ int __s32;
 typedef unsigned int __u32;
 
-#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
 
 /*
diff --git a/include/asm-nios/types.h b/include/asm-nios/types.h
index 43fd8f6d2b1c4b7ab1dbc798d21a07d7ad0a05d5..24c98a89e4a3873ccee5d3edf0b02502fe9baba1 100644
--- a/include/asm-nios/types.h
+++ b/include/asm-nios/types.h
@@ -25,9 +25,9 @@ typedef unsigned short __u16;
 typedef __signed__ int __s32;
 typedef unsigned int __u32;
 
-#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
 
 /*
diff --git a/include/asm-nios2/types.h b/include/asm-nios2/types.h
index 39e264178773b02c728fbcbc71d64d4de3bd05be..f13d8bd4b479cb7595719351c71bad0c3588d456 100644
--- a/include/asm-nios2/types.h
+++ b/include/asm-nios2/types.h
@@ -25,9 +25,9 @@ typedef unsigned short __u16;
 typedef __signed__ int __s32;
 typedef unsigned int __u32;
 
-#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
 
 /*