https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92221
Bug ID: 92221 Summary: [Regression] template argument deduction/substitution failed after "Implement P0846R0, ADL and function templates" Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dimitar.yordanov at sap dot com Target Milestone: --- Hi, we see a regression for the following example: $cat > foo.cpp << EOF template <typename> class a { using b = int; using c = int; b d; void e() { g<c>(d); } template <typename... f> static void g(f...); }; EOF $g++ -c foo.cpp foo.cpp: In member function ‘void a< <template-parameter-1-1> >::e()’: foo.cpp:5:20: error: no matching function for call to ‘a< <template-parameter-1-1> >::g<a< <template-parameter-1-1> >::c>(a< <template-parameter-1-1> >::b&)’ 5 | void e() { g<c>(d); } | ^ foo.cpp:6:40: note: candidate: ‘template<class> template<class ... f> static void a< <template-parameter-1-1> >::g(f ...)’ 6 | template <typename... f> static void g(f...); | ^ foo.cpp:6:40: note: template argument deduction/substitution failed: foo.cpp:5:20: note: mismatched types ‘f’ and ‘int’ 5 | void e() { g<c>(d); } | ^ First appears after: 2018-11-01 Marek Polacek <pola...@redhat.com> Implement P0846R0, ADL and function templates. * decl.c (grokfndecl): Allow FUNCTION_DECL in assert. ... Best wishes Dimitar