diff --git a/dumux/common/parameters.hh b/dumux/common/parameters.hh
index 721f618e9aa566287fe32fc701cac1a81305751e..496a979214d400d579278cdfac8ef304fc1ea38f 100644
--- a/dumux/common/parameters.hh
+++ b/dumux/common/parameters.hh
@@ -221,6 +221,20 @@ public:
     }
 
 private:
+    struct Blubb {
+        std::string propertyName;
+        std::string paramTypeName;
+        std::string groupName;
+
+        Blubb &operator=(const Blubb &b)
+        {
+            propertyName = b.propertyName;
+            paramTypeName = b.paramTypeName;
+            groupName = b.groupName;
+            return *this;
+        };
+    };
+
     template <class ParamType>
     static void check_(const std::string &propertyName, 
                        const char *groupName, 
@@ -228,19 +242,6 @@ private:
     {
         const std::string &paramTypeName = 
             Dune::className<ParamType>();
-        struct Blubb {
-            std::string propertyName;
-            std::string paramTypeName;
-            std::string groupName;
-            
-            Blubb &operator=(const Blubb &b)
-            { 
-                propertyName = b.propertyName;
-                paramTypeName = b.paramTypeName;
-                groupName = b.groupName;
-                return *this;
-            };
-        };
         typedef std::unordered_map<std::string, Blubb> StaticData;
         static StaticData staticData;
 
diff --git a/dumux/common/valgrind.hh b/dumux/common/valgrind.hh
index 8813d463fc5db0b0bf228dab2c9dd8d7bbb69e0d..3415101d43f46fd42904f9eadd491ac3bd626bb6 100644
--- a/dumux/common/valgrind.hh
+++ b/dumux/common/valgrind.hh
@@ -37,13 +37,19 @@
 // do not do valgrind client requests for gcc < 4.5 (old GCCs do not
 // support anonymous template arguments which results in errors inside
 // the BoundaryTypes class)
-#define SetUndefined(a) foo();
-#define SetDefined(a) foo();
-#define CheckDefined(a) foo();
-#define SetNoAccess(a) foo();
 namespace Valgrind
 {
-inline bool foo() { return true; }; // dummy function
+template <class T>
+inline bool SetUndefined(const T& t) { return true; }
+
+template <class T>
+inline bool SetDefined(const T& t) { return true; }
+
+template <class T>
+inline bool CheckDefined(const T& t) { return true; }
+
+template <class T>
+inline bool SetNoAccess(const T& t) { return true; }
 }
 
 #else