--- a/arch/arm/bits/alltypes.h.sh
+++ b/arch/arm/bits/alltypes.h.sh
@@ -22,6 +22,7 @@
 
 TYPEDEF __builtin_va_list va_list;
 TYPEDEF __builtin_va_list __isoc_va_list;
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 TYPEDEF unsigned wchar_t;
--- a/arch/i386/bits/alltypes.h.sh
+++ b/arch/i386/bits/alltypes.h.sh
@@ -27,6 +27,7 @@
 TYPEDEF struct __va_list * va_list;
 TYPEDEF struct __va_list * __isoc_va_list;
 #endif
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 #ifdef __WCHAR_TYPE__
--- a/arch/microblaze/bits/alltypes.h.sh
+++ b/arch/microblaze/bits/alltypes.h.sh
@@ -22,6 +22,7 @@
 
 TYPEDEF __builtin_va_list va_list;
 TYPEDEF __builtin_va_list __isoc_va_list;
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 TYPEDEF int wchar_t;
--- a/arch/mips/bits/alltypes.h.sh
+++ b/arch/mips/bits/alltypes.h.sh
@@ -22,6 +22,7 @@
 
 TYPEDEF __builtin_va_list va_list;
 TYPEDEF __builtin_va_list __isoc_va_list;
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 TYPEDEF int wchar_t;
--- a/arch/powerpc/bits/alltypes.h.sh
+++ b/arch/powerpc/bits/alltypes.h.sh
@@ -22,6 +22,7 @@
 
 TYPEDEF __builtin_va_list va_list;
 TYPEDEF __builtin_va_list __isoc_va_list;
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 TYPEDEF long wchar_t;
--- a/arch/x86_64/bits/alltypes.h.sh
+++ b/arch/x86_64/bits/alltypes.h.sh
@@ -21,6 +21,7 @@
 TYPEDEF long ptrdiff_t;
 TYPEDEF __builtin_va_list va_list;
 TYPEDEF __builtin_va_list __isoc_va_list;
+#define __gnuc_va_list va_list
 
 #ifndef __cplusplus
 TYPEDEF int wchar_t;