From 52a24bcecd388ab6e7d4e6500809fc761f6e7ca5 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Mon, 10 Nov 2025 18:32:53 +0530 Subject: [PATCH] c++/modules: avoid too many hidden friends in ADL Most of the add_fns calls in adl_namespace_fns also call ovl_skip_hidden, but we were forgetting that in the case of imports, which meant that for 24_iterators/const_iterator/112490.cc we were considering the unreachable_sentinel_t hidden friend operator== and therefore failing. gcc/cp/ChangeLog: * name-lookup.cc (name_lookup::adl_namespace_fns): Also skip hidden in the module case. --- gcc/cp/name-lookup.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/cp/name-lookup.cc b/gcc/cp/name-lookup.cc index ef1360464c5..984d37c2089 100644 --- a/gcc/cp/name-lookup.cc +++ b/gcc/cp/name-lookup.cc @@ -1338,6 +1338,7 @@ name_lookup::adl_namespace_fns (tree scope, bitmap imports, bind = STAT_VISIBLE (bind); } + bind = ovl_skip_hidden (bind); if (on_inst_path || visible) add_fns (bind); else -- 2.47.3