diff --git a/dune/common/fmatrix.hh b/dune/common/fmatrix.hh
index 7593d52bba37e19ca895f9ef47e63fd73ad25d92..43d715ed2cae6efad120c732ecf37752d26eee93 100644
--- a/dune/common/fmatrix.hh
+++ b/dune/common/fmatrix.hh
@@ -315,7 +315,7 @@ namespace Dune
 
     //===== conversion operator
 
-    operator K () const { return _data[0]; }
+    operator const K& () const { return _data[0]; }
 
   };
 
diff --git a/dune/common/fvector.hh b/dune/common/fvector.hh
index 9e0098d99274218345e92071791e342de1cf7ea2..bc212c1e5c1de8536c9f3d978f7d43d740352332 100644
--- a/dune/common/fvector.hh
+++ b/dune/common/fvector.hh
@@ -269,10 +269,10 @@ namespace Dune {
     //===== conversion operator
 
     /** \brief Conversion operator */
-    operator K () { return _data; }
+    operator K& () { return _data; }
 
     /** \brief Const conversion operator */
-    operator K () const { return _data; }
+    operator const K& () const { return _data; }
   };
 
   /* ----- FV / FV ----- */