1 // RUN: %clang_cc1 -std=c++11 -fsyntax-only %s 2 3 template < bool, class > struct A {}; f()4template < class, int > void f () {}; 5 template < class T, int > f(T t,typename A<t==0,int>::type)6decltype (f < T, 1 >) f (T t, typename A < t == 0, int >::type) {}; 7 8 struct B {}; 9 main()10int main () 11 { 12 f < B, 0 >; 13 return 0; 14 } 15 16 template <typename T> foo(T x)17auto foo(T x) -> decltype((x == nullptr), *x) { 18 return *x; 19 } 20 bar()21void bar() { 22 foo(new int); 23 } 24