diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index caad0ec0fd5..5009ebaa251 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2006-12-21 Andrew Pinski + + PR C++/30225 + * decl.c (cxx_builtin_function): Only copy the decl if adding + it to the std namespace. + 2006-12-21 Andrew Pinski PR C++/30168 diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 5c7d508fc3e..6a46636ea10 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -3402,17 +3402,17 @@ cxx_builtin_function (tree decl) { tree id = DECL_NAME (decl); const char *name = IDENTIFIER_POINTER (id); - tree decl2 = copy_node(decl); /* All builtins that don't begin with an '_' should additionally go in the 'std' namespace. */ if (name[0] != '_') { + tree decl2 = copy_node(decl); push_namespace (std_identifier); - builtin_function_1 (decl, std_node); + builtin_function_1 (decl2, std_node); pop_namespace (); } - return builtin_function_1 (decl2, NULL_TREE); + return builtin_function_1 (decl, NULL_TREE); } /* Generate a FUNCTION_DECL with the typical flags for a runtime library