decl.c (decls_match): Return 1 if old and new are identical.
authorMartin v. Löwis <loewis@informatik.hu-berlin.de>
Sun, 24 Jan 1999 15:38:44 +0000 (15:38 +0000)
committerMartin v. Löwis <loewis@gcc.gnu.org>
Sun, 24 Jan 1999 15:38:44 +0000 (15:38 +0000)
1999-01-25  Martin von Loewis  <loewis@informatik.hu-berlin.de>
* decl.c (decls_match): Return 1 if old and new are identical.
(push_overloaded_decl): Set OVL_USED when PUSH_USING.

From-SVN: r24849

gcc/cp/ChangeLog
gcc/cp/decl.c

index ab362173528c95e8768d91d9ca59f6b3317a71ed..4a0a402009d5276d332b51ddb6836bda873989af 100644 (file)
@@ -1,3 +1,8 @@
+1999-01-25  Martin von Loewis  <loewis@informatik.hu-berlin.de>
+
+       * decl.c (decls_match): Return 1 if old and new are identical.
+       (push_overloaded_decl): Set OVL_USED when PUSH_USING.
+
 1999-01-24  Jason Merrill  <jason@yorick.cygnus.com>
 
        * decl.c (start_function): Make member functions one_only on windows.
index e1e50f6f46e9befbf1a08881c187938b86a23c2e..d62263211b90c90bcd67aa49e8242210f096da71 100644 (file)
@@ -2696,6 +2696,9 @@ decls_match (newdecl, olddecl)
 {
   int types_match;
 
+  if (newdecl == olddecl)
+    return 1;
+
   if (TREE_CODE (newdecl) != TREE_CODE (olddecl))
     /* If the two DECLs are not even the same kind of thing, we're not
        interested in their types.  */
@@ -4239,6 +4242,8 @@ push_overloaded_decl (decl, flags)
        new_binding = ovl_cons (decl, ovl_cons (old, NULL_TREE));
       else
        new_binding = ovl_cons (decl, old);
+      if (flags & PUSH_USING)
+       OVL_USED (new_binding) = 1;
     }
   else
     /* NAME is not ambiguous.  */