Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt	(revision 1110)
+++ CMakeLists.txt	(revision 1127)
@@ -67,5 +67,5 @@
     # C4996: 'function': was declared deprecated
   ELSE()
-    SET(CXX_WARNING "-Wall -W")
+    SET(CXX_WARNING "-Wall")
   ENDIF()
 ENDIF()
@@ -74,8 +74,8 @@
 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LEMON_CXX_WARNING_FLAGS}")
 
-SET( CMAKE_CXX_FLAGS_MAINTAINER "-Werror -ggdb" CACHE STRING
+SET( CMAKE_CXX_FLAGS_MAINTAINER "-Werror -ggdb -O0" CACHE STRING
     "Flags used by the C++ compiler during maintainer builds."
     FORCE )
-SET( CMAKE_C_FLAGS_MAINTAINER "-Werror" CACHE STRING
+SET( CMAKE_C_FLAGS_MAINTAINER "-Werror -O0" CACHE STRING
     "Flags used by the C compiler during maintainer builds."
     FORCE )
Index: lemon/bfs.h
===================================================================
--- lemon/bfs.h	(revision 956)
+++ lemon/bfs.h	(revision 1127)
@@ -1252,4 +1252,5 @@
       }
       _Visitor& visitor;
+      Constraints() {}
     };
   };
Index: lemon/concepts/graph_components.h
===================================================================
--- lemon/concepts/graph_components.h	(revision 956)
+++ lemon/concepts/graph_components.h	(revision 1127)
@@ -116,4 +116,5 @@
         const _GraphItem &ia;
         const _GraphItem &ib;
+        Constraints() {}
       };
     };
@@ -175,4 +176,5 @@
 
         const _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -291,4 +293,5 @@
 
         const _Graph& graph;
+      Constraints() {}
       };
 
@@ -370,4 +373,5 @@
 
         const _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -422,4 +426,5 @@
 
         const _Graph& graph;
+        Constraints() {}
       };
     };
@@ -499,4 +504,5 @@
         }
         const GR& g;
+        Constraints() {}
       };
     };
@@ -587,4 +593,5 @@
         const Base& node;
         const GR& graph;
+        Constraints() {}
       };
     };
@@ -763,4 +770,5 @@
 
         const _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -887,4 +895,5 @@
 
         const _Graph& graph;
+        Constraints() {}
       };
     };
@@ -944,4 +953,5 @@
 
         const _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -985,4 +995,5 @@
 
         const _Graph& graph;
+        Constraints() {}
       };
     };
@@ -1062,4 +1073,5 @@
         const GR &g;
         const typename GraphMap::Value &t;
+        Constraints() {}
       };
 
@@ -1200,4 +1212,5 @@
 
         const _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -1285,4 +1298,5 @@
 
         const _Graph& graph;
+        Constraints() {}
       };
     };
@@ -1329,4 +1343,5 @@
 
         _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -1373,4 +1388,5 @@
 
         _Graph& graph;
+        Constraints() {}
       };
     };
@@ -1412,4 +1428,5 @@
 
         _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -1451,4 +1468,5 @@
 
         _Graph& graph;
+        Constraints() {}
       };
     };
@@ -1479,4 +1497,5 @@
 
         _Digraph& digraph;
+        Constraints() {}
       };
     };
@@ -1507,4 +1526,5 @@
 
         _Graph& graph;
+        Constraints() {}
       };
     };
Index: lemon/concepts/heap.h
===================================================================
--- lemon/concepts/heap.h	(revision 956)
+++ lemon/concepts/heap.h	(revision 1127)
@@ -315,4 +315,5 @@
         _Heap& heap;
         ItemIntMap& map;
+        Constraints() {}
       };
     };
Index: lemon/concepts/maps.h
===================================================================
--- lemon/concepts/maps.h	(revision 765)
+++ lemon/concepts/maps.h	(revision 1125)
@@ -69,4 +69,5 @@
         const typename _ReadMap::Key& own_key;
         const _ReadMap& m;
+        Constraints() {}
       };
 
@@ -110,4 +111,5 @@
         const typename _WriteMap::Value& own_val;
         _WriteMap& m;
+        Constraints() {}
       };
     };
@@ -130,5 +132,6 @@
       /// Returns the value associated with the given key.
       Value operator[](const Key &) const {
-        return *static_cast<Value *>(0);
+        Value *r = 0;
+        return *r;
       }
 
@@ -170,10 +173,12 @@
       /// Returns a reference to the value associated with the given key.
       Reference operator[](const Key &) {
-        return *static_cast<Value *>(0);
+        Value *r = 0;
+        return *r;
       }
 
       /// Returns a const reference to the value associated with the given key.
       ConstReference operator[](const Key &) const {
-        return *static_cast<Value *>(0);
+        Value *r = 0;
+        return *r;
       }
 
@@ -206,4 +211,5 @@
         typename _ReferenceMap::ConstReference own_cref;
         _ReferenceMap& m;
+        Constraints() {}
       };
     };
Index: lemon/concepts/path.h
===================================================================
--- lemon/concepts/path.h	(revision 832)
+++ lemon/concepts/path.h	(revision 1127)
@@ -169,4 +169,5 @@
         }
         _Path& p;
+        PathDumperConstraints() {}
       };
 
@@ -194,4 +195,5 @@
         }
         _Path& p;
+        PathDumperConstraints() {}
       };
 
Index: lemon/dfs.h
===================================================================
--- lemon/dfs.h	(revision 1110)
+++ lemon/dfs.h	(revision 1127)
@@ -1194,4 +1194,5 @@
       }
       _Visitor& visitor;
+      Constraints() {}
     };
   };
