// { dg-do compile { target c++11 } } // Test template deduction typedef decltype(nullptr) nullptr_t; template struct tType_equal; template struct tType_equal { typedef void type; }; template inline typename tType_equal::type type_equal(U) { } template T h( T t ); void test_h() { type_equal(h(0)); type_equal(h(nullptr)); type_equal(h((float*)nullptr)); nullptr_t mynull = 0; type_equal(h(mynull)); type_equal(h((float*)mynull)); }