aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMartin v. Löwis <loewis@informatik.hu-berlin.de>2000-01-14 23:42:10 +0000
committerMartin v. Löwis <loewis@gcc.gnu.org>2000-01-14 23:42:10 +0000
commit64f1326a88d6a4e4286f5e454e706cbc5c585881 (patch)
treeb9dea4d023116cbd2989c8c11a93ed8abf4c52cb /gcc
parent0f7624fc47fb0933db42ac3847a46b8a1b3fdd80 (diff)
downloadgcc-64f1326a88d6a4e4286f5e454e706cbc5c585881.zip
gcc-64f1326a88d6a4e4286f5e454e706cbc5c585881.tar.gz
gcc-64f1326a88d6a4e4286f5e454e706cbc5c585881.tar.bz2
method.c (build_decl_overload_real): Check whether we are in :: before returning __builtin_new/delete.
* method.c (build_decl_overload_real): Check whether we are in :: before returning __builtin_new/delete. From-SVN: r31431
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/method.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 240aa06..619d94c 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2000-01-14 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+
+ * method.c (build_decl_overload_real): Check whether we are in ::
+ before returning __builtin_new/delete.
+
2000-01-13 Mark Mitchell <mark@codesourcery.com>
* pt.c (tsubst_friend_function): Improve comment.
diff --git a/gcc/cp/method.c b/gcc/cp/method.c
index 12d9616..ba8d594 100644
--- a/gcc/cp/method.c
+++ b/gcc/cp/method.c
@@ -1,6 +1,6 @@
/* Handle the hair of processing (but not expanding) inline functions.
Also manage function and variable name overloading.
- Copyright (C) 1987, 89, 92-97, 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1987, 89, 92-99, 2000 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
This file is part of GNU CC.
@@ -1579,7 +1579,8 @@ build_decl_overload_real (dname, parms, ret_type, tparms, targs,
const char *name = IDENTIFIER_POINTER (dname);
/* member operators new and delete look like methods at this point. */
- if (! for_method && parms != NULL_TREE && TREE_CODE (parms) == TREE_LIST
+ if (! for_method && current_namespace == global_namespace
+ && parms != NULL_TREE && TREE_CODE (parms) == TREE_LIST
&& TREE_CHAIN (parms) == void_list_node)
{
if (dname == ansi_opname[(int) DELETE_EXPR])