| // { dg-do assemble } | |
| template<class A, class B> | |
| void foo(const A& a, const B& b) | |
| { | |
| } | |
| template<class A, class B> | |
| void foo(const A& a, const int& b) | |
| { | |
| } | |
| template<class A*, class B> | |
| void foo(const A*& a, const B& b) | |
| { | |
| } | |
| template<> | |
| void foo(const int&, const double&) | |
| { | |
| } | |
| int | |
| main() | |
| { | |
| foo("98239", 23); | |
| foo(232, 1.022); | |
| } | |