summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/stdarg.h
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2003-10-24 02:50:39 +0000
committerpeter <peter@FreeBSD.org>2003-10-24 02:50:39 +0000
commitede4ea68aa4377e9303c1ca13d6fdb968e4eb2e0 (patch)
tree3f1aa0589010c4cd0dfa7f08a9649993ee81b413 /sys/amd64/include/stdarg.h
parent9dca341e0649a0f59115443961ac926cc1d7c4d9 (diff)
downloadFreeBSD-src-ede4ea68aa4377e9303c1ca13d6fdb968e4eb2e0.zip
FreeBSD-src-ede4ea68aa4377e9303c1ca13d6fdb968e4eb2e0.tar.gz
Add __va_copy and make it always visible, in spite of the __ISO_C_VISIBLE
setting. Make va_copy be an alias if __ISO_C_VISIBLE >= 1999. Why? more than a few ports have an autoconf that looks for __va_copy because it is available on glibc. It is critical that we use it if at all possible on amd64. It generally isn't a problem for i386 and its ilk because autoconf driven code tends to fall back to an assignment.
Diffstat (limited to 'sys/amd64/include/stdarg.h')
-rw-r--r--sys/amd64/include/stdarg.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/amd64/include/stdarg.h b/sys/amd64/include/stdarg.h
index c13137d..60a204a 100644
--- a/sys/amd64/include/stdarg.h
+++ b/sys/amd64/include/stdarg.h
@@ -46,9 +46,12 @@ typedef __va_list va_list;
#define va_arg(ap, type) \
__builtin_va_arg((ap), type)
+#define __va_copy(dest, src) \
+ __builtin_va_copy((dest), (src))
+
#if __ISO_C_VISIBLE >= 1999
#define va_copy(dest, src) \
- __builtin_va_copy((dest), (src))
+ __va_copy(dest, src)
#endif
#define va_end(ap) \
OpenPOWER on IntegriCloud