From e8cd3edc0fc6c02a732dcecf519c22d835e5f422 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 23 Mar 2022 12:22:20 -0400 Subject: [PATCH] c++: tweak PR105006 fix Checking dependent_type_p avoids needing to walk the overloads in cases where it would not be possible to find a dependent using. PR c++/105006 gcc/cp/ChangeLog: * name-lookup.cc (lookup_using_decl): Check that scope is a dependent type before looking for dependent using. --- gcc/cp/name-lookup.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/cp/name-lookup.cc b/gcc/cp/name-lookup.cc index ea947fa..3c7b626 100644 --- a/gcc/cp/name-lookup.cc +++ b/gcc/cp/name-lookup.cc @@ -5667,7 +5667,7 @@ lookup_using_decl (tree scope, name_lookup &lookup) /* If the lookup in the base contains a dependent using, this using is also dependent. */ - if (!dependent_p && lookup.value) + if (!dependent_p && lookup.value && dependent_type_p (scope)) { tree val = lookup.value; if (tree fns = maybe_get_fns (val)) -- 2.7.4