https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80150
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
The ICE started with r233108, before that:
/home/brq/mpolacek/l.cc: In function ‘int main()’:
/home/brq/mpolacek/l.cc:16:37: error: no matching function for call to
‘compare_functions(<unresolved overloaded function type>, <unresolved
overloaded function type>, int&)’
compare_functions<int>(foo, foo, a);
^
/home/brq/mpolacek/l.cc:2:6: note: candidate: template<class R, class ... Args>
bool compare_functions(R (*)(Args ...), R (*)(Args ...), Args ...)
bool compare_functions(R(*funcA)(Args...), R(*funcB)(Args...), Args... args) {
^~~~~~~~~~~~~~~~~
/home/brq/mpolacek/l.cc:2:6: note: template argument deduction/substitution
failed:
/home/brq/mpolacek/l.cc:16:37: note: mismatched types ‘int’ and ‘float’
compare_functions<int>(foo, foo, a);
^
/home/brq/mpolacek/l.cc:16:37: note: could not resolve address from
overloaded function ‘foo’
which I'm unsure about; clang++ compiles it fine.