aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/ginclude/stdarg.h2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/other/var_copy-1.C14
4 files changed, 25 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fbb0ae5..9245f6b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-03-27 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR c++/36799
+ * ginclude/stdarg.h (va_copy): Define also for __GXX_EXPERIMENTAL_CXX0X__.
+
2009-03-27 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/35652
diff --git a/gcc/ginclude/stdarg.h b/gcc/ginclude/stdarg.h
index c9ddd6b..5061f34 100644
--- a/gcc/ginclude/stdarg.h
+++ b/gcc/ginclude/stdarg.h
@@ -50,7 +50,7 @@ typedef __builtin_va_list __gnuc_va_list;
#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)
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 82fc8ab..1a3843e 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2009-03-27 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR c++/36799
+ * g++.dg/other/var_copy-1.C: New test.
+
2009-03-27 Simon Martin <simartin@users.sourceforge.net>
PR c++/37647
diff --git a/gcc/testsuite/g++.dg/other/var_copy-1.C b/gcc/testsuite/g++.dg/other/var_copy-1.C
new file mode 100644
index 0000000..2fc6b78
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/var_copy-1.C
@@ -0,0 +1,14 @@
+// { dg-options "-std=c++0x" }
+// { dg-do compile }
+
+// Test to allow for va_copy with C++0x standard.
+
+#include <cstdarg>
+
+va_list x;
+va_list y;
+
+int main ()
+{
+ va_copy (y, x);
+}