This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: va_copy in c++0x-mode
On Sun, 2008-11-02 at 21:23 +0100, Paolo Carlini wrote:
> Magnus Fromreide wrote:
> > N2789 18.9 says that va_copy is declared in c++0x but the g++ headers
> > are not yet fixed up to do that. I think there is a need for a check for
> > __GXX_EXPERIMENTAL_CXX0X__ in gcc/ginclude/stdarg.h
> >
> You are probably right: patches welcome!
I am currently testing the attached patch. Should be finished tomorrow.
/MF
Index: gcc/ginclude/stdarg.h
===================================================================
--- gcc/ginclude/stdarg.h (revision 141538)
+++ gcc/ginclude/stdarg.h (working copy)
@@ -50,7 +50,7 @@
#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)
-#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L
+#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L || defined(__GXX_EXPERIMENTAL_CXX0X__)
#define va_copy(d,s) __builtin_va_copy(d,s)
#endif
#define __va_copy(d,s) __builtin_va_copy(d,s)