From b4e92ae2cacb0ef539326249fc59f790423a0766 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Thu, 17 Feb 2022 18:11:23 -0500 Subject: [PATCH] Revert "c++: using overloaded with local decl [PR92918]" PR c++/104476 This reverts commit decd38f99dd05eb54ddcaee7c52f21a56a844613. --- gcc/cp/name-lookup.c | 2 +- gcc/testsuite/g++.dg/lookup/using66.C | 23 ----------------------- 2 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 gcc/testsuite/g++.dg/lookup/using66.C diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c index f8caa16fc762..533d79542c93 100644 --- a/gcc/cp/name-lookup.c +++ b/gcc/cp/name-lookup.c @@ -4552,7 +4552,7 @@ push_class_level_binding_1 (tree name, tree x) old_decl = bval; else if (TREE_CODE (bval) == USING_DECL && OVL_P (target_decl)) - old_decl = bval; + return true; else if (OVL_P (target_decl) && OVL_P (target_bval)) old_decl = bval; diff --git a/gcc/testsuite/g++.dg/lookup/using66.C b/gcc/testsuite/g++.dg/lookup/using66.C deleted file mode 100644 index 02383bbea3e0..000000000000 --- a/gcc/testsuite/g++.dg/lookup/using66.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/92918 -// { dg-do compile { target c++11 } } - -struct Base03 -{ - static void impl(); -}; - -struct Problem : Base03 -{ - using Base03::impl; - static int impl(char const *); - - template - auto f(const T &t) const - -> decltype(impl(t)) - { - return impl(t); - } -}; - -Problem t; -int i = t.f("42"); -- 2.47.2