Use function overloading instead of template specialization for diagnosis of bad template argument deductions.