path: root/include
diff options
authorRich Felker <>2016-12-15 12:18:24 -0500
committerRich Felker <>2016-12-15 12:18:24 -0500
commitffaaa6d230512f3a7f3d040b943517728f3dc3cf (patch)
tree1a902f53f6a5203d8aa7c5dd73a8e79cac47eb26 /include
parent6f1866768a86239672ed811777dfe89994d64a65 (diff)
remove legacy i386 fallback stdarg implementation and framework
this has been slated for removal for a long time. there is fundamentally no way to implement stdarg without compiler assistance; any attempt to do so has serious undefined behavior; its working depends not just (as a common misconception goes) on ABI, but also on assumptions about compiler code generation internal to a translation unit, which is not subject to external ABI constraints.
Diffstat (limited to 'include')
1 files changed, 0 insertions, 4 deletions
diff --git a/include/stdarg.h b/include/stdarg.h
index 60d4e2af..3256f805 100644
--- a/include/stdarg.h
+++ b/include/stdarg.h
@@ -9,14 +9,10 @@ extern "C" {
#include <bits/alltypes.h>
-#if __GNUC__ >= 3
#define va_start(v,l) __builtin_va_start(v,l)
#define va_end(v) __builtin_va_end(v)
#define va_arg(v,l) __builtin_va_arg(v,l)
#define va_copy(d,s) __builtin_va_copy(d,s)
-#include <bits/stdarg.h>
#ifdef __cplusplus