diff --git a/src/bisection-example-new.cc b/src/bisection-example-new.cc
index 1faa2e7de660d0daeb831f80b3986ebbf431dc02..3fa26ee11203e7501bfe9ca28a7a8a612b8883f6 100644
--- a/src/bisection-example-new.cc
+++ b/src/bisection-example-new.cc
@@ -70,16 +70,14 @@ class SampleFunctional {
     A_.mv(x, tmp3);
     double const rest_b = (b_ - tmp3) * descDir;
 
+    Dune::BlockVector<SmallVector> xx; // FIXME: we actually want x here
+    Dune::BlockVector<SmallVector> dd; // FIXME: we actually want descDir here
+
     typedef MyNonlinearity<dimension, SampleFunction> MyNonlinearityType;
     MyNonlinearityType phi;
-
-    DirectionalConvexFunction <
-        Nonlinearity<
-            Dune::FieldVector<double,
-                              dimension>, // MyNonlinearityType::SmallVector,
-            Dune::FieldMatrix<double, dimension,
-                              dimension> // MyNonlinearityType::SmallMatrix> >
-            > rest(rest_A, rest_b, phi, x, descDir);
+    typedef DirectionalConvexFunction<MyNonlinearityType>
+    MyDirectionalConvexFunctionType;
+    MyDirectionalConvexFunctionType rest(rest_A, rest_b, phi, xx, dd);
 
     if (descDir == SmallVector(0.0))
       return SmallVector(0.0);