https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100396
--- Comment #5 from Patrick Palka <ppalka at gcc dot gnu.org> --- (In reply to vopl from comment #4) > Take attention at 'Args' - it was {double} initially, but becomes {double, > double} for second ovr call. That seems correct to me. The second ovr call has three function arguments, and two explicit template arguments. The first double in Args={double,double} comes from the second explicit template argument. The second double is deduced from the third function argument.