Index: /code/branches/pch/src/OrxonoxConfig.h.in
===================================================================
--- /code/branches/pch/src/OrxonoxConfig.h.in	(revision 3152)
+++ /code/branches/pch/src/OrxonoxConfig.h.in	(revision 3153)
@@ -190,4 +190,9 @@
 }
 
+/* Just in case you don't include a standard header */
+#ifndef NULL
+  #define NULL 0
+#endif
+
 /* Visual Leak Detector looks for memory leaks */
 #cmakedefine VISUAL_LEAK_DETECTOR_ENABLE
Index: /code/branches/pch/src/orxonox/gui/GUIManager.cc
===================================================================
--- /code/branches/pch/src/orxonox/gui/GUIManager.cc	(revision 3152)
+++ /code/branches/pch/src/orxonox/gui/GUIManager.cc	(revision 3153)
@@ -271,5 +271,5 @@
         Returns false if the Overlay was already present.
     */
-    bool GUIManager::registerOverlay(std::string name, GUIOverlay* overlay)
+    bool GUIManager::registerOverlay(const std::string& name, GUIOverlay* overlay)
     {
         return (this->guiOverlays_.insert(std::pair<std::string, GUIOverlay*>(name, overlay))).second;
@@ -284,5 +284,5 @@
         Returns a pointer to the GUIOverlay.
     */
-    GUIOverlay* GUIManager::getOverlay(std::string name)
+    GUIOverlay* GUIManager::getOverlay(const std::string& name)
     {
         return (this->guiOverlays_.find(name))->second;
Index: /code/branches/pch/src/orxonox/gui/GUIManager.h
===================================================================
--- /code/branches/pch/src/orxonox/gui/GUIManager.h	(revision 3152)
+++ /code/branches/pch/src/orxonox/gui/GUIManager.h	(revision 3153)
@@ -91,6 +91,6 @@
         void executeCode(const std::string& str);
 
-        bool registerOverlay(std::string name, GUIOverlay* overlay); //!< Register a GUIOverlay with the GUIManager.
-        GUIOverlay* getOverlay(std::string name); // Get the GUIOverlay of the GUI with the given name.
+        bool registerOverlay(const std::string& name, GUIOverlay* overlay); //!< Register a GUIOverlay with the GUIManager.
+        GUIOverlay* getOverlay(const std::string& name); // Get the GUIOverlay of the GUI with the given name.
 
         void setCamera(Ogre::Camera* camera);
Index: /code/branches/pch/src/orxonox/tools/TextureGenerator.cc
===================================================================
--- /code/branches/pch/src/orxonox/tools/TextureGenerator.cc	(revision 3152)
+++ /code/branches/pch/src/orxonox/tools/TextureGenerator.cc	(revision 3153)
@@ -65,5 +65,5 @@
     unsigned int TextureGenerator::materialCount_s = 0;
 
-    /*static*/ const std::string& TextureGenerator::getMaterialName(std::string textureName, const ColourValue& colour)
+    /*static*/ const std::string& TextureGenerator::getMaterialName(const std::string& textureName, const ColourValue& colour)
     {
         std::map<ColourValue, std::string>& colourMap = materials_s[textureName];
Index: /code/branches/pch/src/orxonox/tools/TextureGenerator.h
===================================================================
--- /code/branches/pch/src/orxonox/tools/TextureGenerator.h	(revision 3152)
+++ /code/branches/pch/src/orxonox/tools/TextureGenerator.h	(revision 3153)
@@ -46,5 +46,5 @@
     {
     public:
-        static const std::string& getMaterialName(std::string textureName, const ColourValue& colour);
+        static const std::string& getMaterialName(const std::string& textureName, const ColourValue& colour);
 
     private:
Index: /code/branches/pch/src/util/ExprParser.h
===================================================================
--- /code/branches/pch/src/util/ExprParser.h	(revision 3152)
+++ /code/branches/pch/src/util/ExprParser.h	(revision 3153)
@@ -72,7 +72,7 @@
 
         ExprParser(const std::string& str);
-        std::string& getRemains() { return  this->remains_; }
-        double       getResult()  { return  this->result_; }
-        bool         getSuccess() { return !this->failed_; }
+        const std::string& getRemains() { return  this->remains_; }
+        double             getResult()  { return  this->result_; }
+        bool               getSuccess() { return !this->failed_; }
 
     private:
Index: /code/branches/pch/src/util/OrxAssert.h
===================================================================
--- /code/branches/pch/src/util/OrxAssert.h	(revision 3152)
+++ /code/branches/pch/src/util/OrxAssert.h	(revision 3153)
@@ -44,5 +44,5 @@
 #ifndef NDEBUG
 #define OrxAssert(Assertion, ErrorMessage) \
-    Assertion ? ((void)0) : (void)(orxonox::OutputHandler::getOutStream().setOutputLevel(ORX_ERROR) << ErrorMessage << std::endl); \
+    Assertion ? ((void)0) : (void)(orxonox::OutputHandler::getOutStream().setOutputLevel(1) << ErrorMessage << std::endl); \
     assert(Assertion)
 #else
Index: /code/branches/pch/src/util/OutputHandler.h
===================================================================
--- /code/branches/pch/src/util/OutputHandler.h	(revision 3152)
+++ /code/branches/pch/src/util/OutputHandler.h	(revision 3153)
@@ -63,21 +63,21 @@
 
             /** @brief Puts some text on the outstream. @param text The text */
-            static inline std::string log(const std::string& text)
+            static inline const std::string& log(const std::string& text)
                 { OutputHandler::getOutStream().setOutputLevel(0); OutputHandler::getOutStream().output(text + "\n"); return text; }
 
             /** @brief Puts an error on the outstream. @param text The text */
-            static inline std::string error(const std::string& text)
+            static inline const std::string& error(const std::string& text)
                 { OutputHandler::getOutStream().setOutputLevel(1); OutputHandler::getOutStream().output(text + "\n"); return text; }
 
             /** @brief Puts a warning on the outstream. @param text The text */
-            static inline std::string warning(const std::string& text)
+            static inline const std::string& warning(const std::string& text)
                 { OutputHandler::getOutStream().setOutputLevel(2); OutputHandler::getOutStream().output(text + "\n"); return text; }
 
             /** @brief Puts an info on the outstream. @param text The text */
-            static inline std::string info(const std::string& text)
+            static inline const std::string& info(const std::string& text)
                 { OutputHandler::getOutStream().setOutputLevel(3); OutputHandler::getOutStream().output(text + "\n"); return text; }
 
             /** @brief Puts some debug output on the outstream. @param text The text */
-            static inline std::string debug(const std::string& text)
+            static inline const std::string& debug(const std::string& text)
                 { OutputHandler::getOutStream().setOutputLevel(4); OutputHandler::getOutStream().output(text + "\n"); return text; }
 
