1 // PR c++/40944
2 // { dg-do run { target c++11 } }
3 
4 template<typename T>
5 struct make { static T&& it(); };
6 
7 void (*pf)(int&) = 0;
8 
9 template< typename T >
10 int bar(T const& x,
11         decltype( pf(make<T const&>::it()) )* = 0 // SFINAE!
12         ) {
13     return 1;
14 }
15 
bar(...)16 int bar(...) {
17     return 0;
18 }
19 
main()20 int main() {
21     return bar(42);
22 }
23