summaryrefslogtreecommitdiff
path: root/arch/i386
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2013-06-25 22:26:20 -0400
committerRich Felker <dalias@aerifal.cx>2013-06-25 22:26:20 -0400
commita3e2f3c2b15053a2f9faccc62947b82f2219599f (patch)
treec5b3ffd73fa661da51da13e76c897f2ab90aa968 /arch/i386
parent8813c956e506d57065b7089a98c8fcef1ef58c47 (diff)
downloadmusl-a3e2f3c2b15053a2f9faccc62947b82f2219599f.tar.gz
respect iso c namespace in stdio.h and wchar.h regarding va_list
despite declaring functions that take arguments of type va_list, these headers are not permitted by the c standard to expose the definition of va_list, so an alias for the type must be used. the name __isoc_va_list was chosen to convey that the purpose of this alternate name is for iso c conformance, and to avoid the multitude of names which gcc mangles with its hideous "fixincludes" monstrosity, leading to serious header breakage if these "fixes" are run.
Diffstat (limited to 'arch/i386')
-rwxr-xr-xarch/i386/bits/alltypes.h.sh2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/i386/bits/alltypes.h.sh b/arch/i386/bits/alltypes.h.sh
index 76c50ec1..85776a83 100755
--- a/arch/i386/bits/alltypes.h.sh
+++ b/arch/i386/bits/alltypes.h.sh
@@ -22,8 +22,10 @@ TYPEDEF int ptrdiff_t;
#if __GNUC__ >= 3
TYPEDEF __builtin_va_list va_list;
+TYPEDEF __builtin_va_list __isoc_va_list;
#else
TYPEDEF struct __va_list * va_list;
+TYPEDEF struct __va_list * __isoc_va_list;
#endif
#ifndef __cplusplus