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()21 int main()
22 {
23   f< &g >();
24   f< nullptr >();
25   f< &f<nullptr> >();
26 }
27