1 // PR c++/56428 2 // { dg-do compile { target c++11 } } 3 // { dg-additional-options "-fdelete-null-pointer-checks" } 4 5 struct A { }; 6 7 template<bool B> 8 struct Builder 9 { buildBuilder10 static A build() { return A(); } 11 }; 12 13 template<A (*F)()> f()14 A f() 15 { 16 return Builder<F != nullptr>::build(); 17 } 18 19 A g(); 20 main()21int main() 22 { 23 f< &g >(); 24 f< nullptr >(); 25 f< &f<nullptr> >(); 26 } 27