diff --git a/python/dune/perftool/pdelab/driver.py b/python/dune/perftool/pdelab/driver.py
index 7ac76ee0dcb75060bbc6f2eee817c6befd5c0d56..526ad1f5a86e4a7652f12af459a02474ba4e0117 100644
--- a/python/dune/perftool/pdelab/driver.py
+++ b/python/dune/perftool/pdelab/driver.py
@@ -131,7 +131,7 @@ def type_leafview():
 def define_leafview(name):
     _type = type_leafview()
     grid = name_grid()
-    return "{} {} = {}->leafView();".format(_type, name, grid)
+    return "{} {} = {}->leafGridView();".format(_type, name, grid)
 
 @dune_symbol
 def name_leafview():
@@ -142,7 +142,7 @@ def name_leafview():
 def typedef_vtkwriter(name):
     driver_include("dune/grid/io/file/vtk/subsamplingvtkwriter.hh")
     gv = type_leafview()
-    return "typedef Dune::SubsamplingVTKWriter<{}> {}".format(gv, name)
+    return "typedef Dune::SubsamplingVTKWriter<{}> {};".format(gv, name)
 
 @dune_symbol
 def type_vtkwriter():
@@ -205,9 +205,9 @@ def typedef_fem(expr, name):
 
 @dune_symbol
 def type_fem(expr):
-    name = FEM_name_mangling(expr).upper()
+    name = "{}_FEM".format(FEM_name_mangling(expr).upper())
     typedef_fem(expr, name)
-    return "{}_fem".format(name)
+    return name
 
 @driver_preamble
 def define_fem(expr, name):
@@ -217,14 +217,14 @@ def define_fem(expr, name):
 
 @dune_symbol
 def name_fem(expr):
-    name = FEM_name_mangling(expr).lower()
+    name = "{}_fem".format(FEM_name_mangling(expr).lower())
     define_fem(expr, name)
-    return "{}_fem".format(name)
+    return name
 
 @driver_preamble
 def typedef_vectorbackend(name):
     driver_include("dune/pdelab/backend/istlvectorbackend.hh")
-    return "typedef Dune::PDELab::ISTLVectorBacken<Dune::PDELab::ISTLParameters::no_blocking, 1> {};".format(name)
+    return "typedef Dune::PDELab::ISTLVectorBackend<Dune::PDELab::ISTLParameters::no_blocking, 1> {};".format(name)
 
 @dune_symbol
 def type_vectorbackend():
@@ -238,7 +238,7 @@ def type_orderingtag():
 @driver_preamble
 def typedef_constraintsassembler(name):
     driver_include("dune/pdelab/constraints/conforming.hh")
-    return "typedef Dune::PDELab::ConformingDirichletConstraints {}".format(name)
+    return "typedef Dune::PDELab::ConformingDirichletConstraints {};".format(name)
 
 @dune_symbol
 def type_constraintsassembler():
@@ -249,7 +249,7 @@ def type_constraintsassembler():
 def typedef_constraintscontainer(expr, name):
     gfs = type_gfs(expr)
     r = type_range()
-    return "typedef {}::ConstraintsContainer<{}>::Type {}".format(gfs,r, name)
+    return "typedef {}::ConstraintsContainer<{}>::Type {};".format(gfs,r, name)
 
 @dune_symbol
 def type_constraintscontainer(expr):
@@ -295,9 +295,9 @@ def typedef_gfs(expr, name):
 
 @dune_symbol
 def type_gfs(expr):
-    name = FEM_name_mangling(expr).upper()
+    name = "{}_GFS".format(FEM_name_mangling(expr).upper())
     typedef_gfs(expr, name)
-    return "{}_GFS".format(name)
+    return name
 
 @driver_preamble
 def define_gfs(expr, name):
@@ -365,7 +365,7 @@ def name_matrixbackend():
 
 @driver_preamble
 def typedef_parameters(name):
-    return "typedef LocalOperatorParameters {}".format(name)
+    return "typedef LocalOperatorParameters {};".format(name)
 
 @dune_symbol
 def type_parameters():
@@ -384,8 +384,12 @@ def name_parameters():
 
 @driver_preamble
 def typedef_localoperator(name):
-    params = type_parameters()
-    return "typedef LocalOperator<{}> {}".format(params, name)
+    # No Parameter class here, yet
+    #params = type_parameters()
+    #return "typedef LocalOperator<{}> {};".format(params, name)
+    from dune.perftool.options import get_option
+    driver_include(get_option('operator_file'))
+    return "// Here in the future: typedef for the local operator with parameter class as template parameter"
 
 @dune_symbol
 def type_localoperator():
@@ -397,7 +401,7 @@ def define_localoperator(name):
     loptype = type_localoperator()
     ini = name_initree()
     params = name_parameters()
-    return "{} {}({}, {})".format(loptype, name, ini, params)
+    return "{} {}({}, {});".format(loptype, name, ini, params)
 
 @dune_symbol
 def name_localoperator():
@@ -415,7 +419,7 @@ def typedef_gridoperator(name):
     df = type_domainfield()
     r = type_range()
     driver_include("dune/pdelab/gridoperator/gridoperator.hh")
-    return "typedef Dune::PDELab::GridOperator<{}, {}, {}, {}, {}, {}, {}, {}, {}> {}".format(ugfs, vgfs, lop, mb, df, r, r, ucc, vcc, name)
+    return "typedef Dune::PDELab::GridOperator<{}, {}, {}, {}, {}, {}, {}, {}, {}> {};".format(ugfs, vgfs, lop, mb, df, r, r, ucc, vcc, name)
 
 @dune_symbol
 def type_gridoperator():
@@ -441,7 +445,7 @@ def name_gridoperator():
 @driver_preamble
 def typedef_vector(name):
     gotype = type_gridoperator()
-    return "typedef {}::Traits::Domain {}".format(gotype, name)
+    return "typedef {}::Traits::Domain {};".format(gotype, name)
 
 @dune_symbol
 def type_vector():
diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py
index a0d6a9b5e439e3dca7099dc759f24c5744fc59df..9ac73ef935045fd9edadc4b55069f318b7bbfd7c 100644
--- a/python/dune/perftool/pdelab/localoperator.py
+++ b/python/dune/perftool/pdelab/localoperator.py
@@ -155,7 +155,7 @@ def cgen_class_from_cache(tag, members=[]):
     constructor = Constructor(arg_decls=constructor_params, clsname=localoperator_type(), initializer_list=il)
 
     from dune.perftool.cgen import Class
-    return Class(localoperator_type, base_classes=base_classes, members=members + pm, constructors=[constructor])
+    return Class(localoperator_type(), base_classes=base_classes, members=members + pm, constructors=[constructor])
 
 
 def generate_localoperator(form):