https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39270
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ppalka at gcc dot gnu.org --- Comment #3 from Patrick Palka <ppalka at gcc dot gnu.org> --- Slightly more reduced rejects-valid testcase: template<class T, class U> void f(U); // #1 template<class T> void f(int) { } // #2 template void f<char>(int); more_specialized_inst is unable to determine that #2 is more specialized than #1. Perhaps we should be passing the explicitly specified template arguments to get_bindings? But that ends up breaking gcc/testsuite/g++.old-deja/g++.pt/explicit22.C among others..