https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104094
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2022-01-19 00:00:00 |2024-1-17 --- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- Another example with recent trunk: In file included from /home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/std/text_encoding/requirements.cc:20: /home/jwakely/gcc/14/include/c++/14.0.1/ranges: In function 'constexpr _Cont std::ranges::to(_Rg&&, _Args&& ...)': /home/jwakely/gcc/14/include/c++/14.0.1/ranges:9332:21: warning: typedef 'using _RefT = std::ranges::range_reference_t<_Pattern>' locally defined but not used [-Wunused-local-typedefs] 9332 | using _RefT = range_reference_t<_Rg>; | ^~~~~ Where does _Pattern come from? There is no _Pattern in that function template. The source line shows it should be range_reference_t<_Rg> instead. _Pattern is used in lazy_split_view, split_view and join_view, none of which are used at all by `ranges::to`. Is there some has collision going on here when the pretty printer finds names? Does it need an additional disambiguation step if more than one name is found?