diff -r d1590736279a code/CMakeModules/nel.cmake
--- a/code/CMakeModules/nel.cmake	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/CMakeModules/nel.cmake	Fri Mar 30 15:23:55 2012 -1000
@@ -463,7 +463,7 @@
     ENDIF(NOT APPLE)
 
     SET(NL_DEBUG_CFLAGS "-DNL_DEBUG -D_DEBUG")
-    SET(NL_RELEASE_CFLAGS "-DNL_RELEASE -DNDEBUG -O6")
+    SET(NL_RELEASE_CFLAGS "-DNL_RELEASE -DNDEBUG -O3")
   ENDIF(MSVC)
 ENDMACRO(NL_SETUP_BUILD)
 
diff -r d1590736279a code/nel/include/nel/3d/computed_string.h
--- a/code/nel/include/nel/3d/computed_string.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/3d/computed_string.h	Fri Mar 30 15:23:55 2012 -1000
@@ -32,7 +32,7 @@
 namespace NL3D {
 
 class CTextureFont;
-class CMatrix;
+class NLMISC::CMatrix;
 struct CComputedString;
 
 // ***************************************************************************
@@ -286,7 +286,7 @@
 	 * \param matrix transformation matrix
 	 * \param hotspot position of string origine
 	 */
-	void render3D (IDriver& driver,CMatrix matrix,THotSpot hotspot = MiddleMiddle);
+	void render3D (IDriver& driver,NLMISC::CMatrix matrix,THotSpot hotspot = MiddleMiddle);
 
 };
 
diff -r d1590736279a code/nel/include/nel/3d/cube_grid.h
--- a/code/nel/include/nel/3d/cube_grid.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/3d/cube_grid.h	Fri Mar 30 15:23:55 2012 -1000
@@ -227,7 +227,7 @@
 		// build the _StaticGrid
 		_StaticGrids[i].build(_Grids[i]);
 		// And reset the grid. contReset is necessary to clean the CBlockMemory.
-		contReset(_Grids[i]);
+		NLMISC::contReset(_Grids[i]);
 	}
 
 	// done
diff -r d1590736279a code/nel/include/nel/3d/ps_attrib.h
--- a/code/nel/include/nel/3d/ps_attrib.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/3d/ps_attrib.h	Fri Mar 30 15:23:55 2012 -1000
@@ -96,7 +96,7 @@
 		try
 		{
 			newStart = new uint8[sizeof(T) * capacity + (1 << snapPower)];
-			T *newTab = (T *) ( (uint) (newStart + (1 << snapPower))  & ~((1 << snapPower) - 1)); // snap to a page
+			T *newTab = (T *) ( (uintptr_t) (newStart + (1 << snapPower))  & ~((1 << snapPower) - 1)); // snap to a page
 
 
 
diff -r d1590736279a code/nel/include/nel/3d/static_quad_grid.h
--- a/code/nel/include/nel/3d/static_quad_grid.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/3d/static_quad_grid.h	Fri Mar 30 15:23:55 2012 -1000
@@ -172,7 +172,7 @@
 void			CStaticQuadGrid<T>::build(CQuadGrid<T> &quadGrid)
 {
 	clear();
-	contReset(_Grid);
+	NLMISC::contReset(_Grid);
 
 	// Copy from quadGrid, and init quads
 	_Size= quadGrid.getSize();
diff -r d1590736279a code/nel/include/nel/3d/track_tcb.h
--- a/code/nel/include/nel/3d/track_tcb.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/3d/track_tcb.h	Fri Mar 30 15:23:55 2012 -1000
@@ -218,7 +218,7 @@
 			date*= previous->OODeltaTime;
 			NLMISC::clamp(date, 0,1);
 
-			date = ease(previous, date);
+			date = this->ease(previous, date);
 
 			float hb[4];
 			this->computeHermiteBasis(date, hb);
@@ -242,7 +242,7 @@
 		ITrackKeyFramer<CKeyT>::compile();
 
 		// Ease Precompute.
-		compileTCBEase(this->_MapKey, this->getLoopMode());
+		this->compileTCBEase(this->_MapKey, this->getLoopMode());
 
 
 		// Tangents Precompute.
@@ -256,7 +256,7 @@
 
 		if(nKeys==2 && !this->getLoopMode())
 		{
-			computeTCBKeyLinear( it->second, itNext->second );
+			this->computeTCBKeyLinear( it->second, itNext->second );
 		}
 		else
 		{
@@ -273,7 +273,7 @@
 				// NB: we are the last if itNext==_MapKey.begin().
 				if(this->getLoopMode() || (it!=this->_MapKey.begin() && itNext!=this->_MapKey.begin()) )
 				{
-					computeTCBKey(itPrev->second, it->second, itNext->second,
+					this->computeTCBKey(itPrev->second, it->second, itNext->second,
 						itPrev->first, it->first, itNext->first, rangeDelta,
 						it==this->_MapKey.begin(), itNext==this->_MapKey.begin(), this->getLoopMode());
 				}
@@ -314,7 +314,7 @@
 		float	ksm,ksp,kdm,kdp;
 
 		// compute tangents factors.
-		computeTCBFactors(key, timeBefore, time, timeAfter, rangeDelta, firstKey, endKey, isLoop, ksm,ksp,kdm,kdp);
+		this->computeTCBFactors(key, timeBefore, time, timeAfter, rangeDelta, firstKey, endKey, isLoop, ksm,ksp,kdm,kdp);
 
 		// Delta.
 		TKeyValueType	delm, delp;
@@ -391,7 +391,7 @@
 			NLMISC::clamp(date, 0,1);
 
 			// ease.
-			date = ease(previous, date);
+			date = this->ease(previous, date);
 
 			// quad slerp.
 			resultVal.Value= CQuat::squadrev(next->LocalAngleAxis, previous->Quat, previous->A, next->B, next->Quat, date);
@@ -413,7 +413,7 @@
 		ITrackKeyFramer<CKeyTCBQuat>::compile();
 
 		// Ease Precompute.
-		compileTCBEase(_MapKey, getLoopMode());
+		this->compileTCBEase(_MapKey, getLoopMode());
 
 		TMapTimeCKey::iterator	it;
 		TMapTimeCKey::iterator	itNext;
@@ -476,7 +476,7 @@
 		for(;it!=_MapKey.end();)
 		{
 			// NB: we are the last key if itNext==_MapKey.begin().
-			computeTCBKey(itPrev->second, it->second, itNext->second,
+			this->computeTCBKey(itPrev->second, it->second, itNext->second,
 				itPrev->first, it->first, itNext->first, rangeDelta, it==_MapKey.begin(), itNext==_MapKey.begin(), getLoopMode());
 
 			// Next key!!
diff -r d1590736279a code/nel/include/nel/misc/diff_tool.h
--- a/code/nel/include/nel/misc/diff_tool.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/include/nel/misc/diff_tool.h	Fri Mar 30 15:23:55 2012 -1000
@@ -502,7 +502,7 @@
 //						callback->onSwap(it - context.Reference.begin(), refCount, context);
 						callback->onSwap(index, refCount, context);
 //						swap(*it, context.Reference[refCount]);
-						swap(context.Reference[index], context.Reference[refCount]);
+						std::swap(context.Reference[index], context.Reference[refCount]);
 					}
 				}
 				else if (getHashValue(context.Addition, addCount) != getHashValue(context.Reference, refCount))
diff -r d1590736279a code/nel/src/3d/computed_string.cpp
--- a/code/nel/src/3d/computed_string.cpp	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/nel/src/3d/computed_string.cpp	Fri Mar 30 15:23:55 2012 -1000
@@ -95,7 +95,7 @@
 	CVector hotspotVector = getHotSpotVector(hotspot);
 
 	// transformation matrix initialized to identity
-	CMatrix matrix;
+	NL3D::CMatrix matrix;
 	matrix.identity();
 
 	// view matrix <-> identity
diff -r d1590736279a code/ryzom/client/src/cdb.h
--- a/code/ryzom/client/src/cdb.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/ryzom/client/src/cdb.h	Fri Mar 30 15:23:55 2012 -1000
@@ -186,7 +186,11 @@
 
 //-----------------------------------------------------------------------
 // IDBNode interface definition
-
+protected:
+	
+	/// Atomic flag: is the branch an atomic group, or is the leaf a member of an atomic group
+	bool			_AtomicFlag;
+		
 public :
 
 	/**
@@ -302,10 +306,10 @@
 	virtual CCDBNodeLeaf	*findLeafAtCount( uint& count ) = 0;
 
 	/// Set the atomic branch flag (when all the modified nodes of a branch should be tranmitted at the same time)
-	void					setAtomic( bool atomicBranch ) { _Atomic = atomicBranch; }
+	void					setAtomic( bool atomicBranch ) { _AtomicFlag = atomicBranch; }
 
 	/// Return true if the branch has the atomic flag
-	bool					isAtomic() const { return _Atomic; }
+	bool					isAtomic() const { return _AtomicFlag; }
 
 	// test if the node is a leaf
 	virtual bool			isLeaf() const = 0;
@@ -333,14 +337,14 @@
 protected:
 
 	/// Constructor
-	ICDBNode() : _Atomic(false)
+	ICDBNode() : _AtomicFlag(false)
 	{
 		if (_DBSM == NULL) _DBSM = NLMISC::CStringMapper::createLocalMapper();
 		_Name = NLMISC::CStringMapper::emptyId();
 	}
 
 	/// Constructor
-	ICDBNode (const std::string &name) : _Atomic(false)
+	ICDBNode (const std::string &name) : _AtomicFlag(false)
 	{
 		if (_DBSM == NULL) _DBSM = NLMISC::CStringMapper::createLocalMapper();
 		_Name = _DBSM->localMap(name);
@@ -350,9 +354,6 @@
 	// utility to build full name efficiently (without reallocating the string at each parent level)
 	void _buildFullName(NLMISC::CSString &fullName);
 
-	/// Atomic flag: is the branch an atomic group, or is the leaf a member of an atomic group
-	bool			_Atomic		: 1;
-
 	/// Name of the node
 	NLMISC::TStringId	_Name;
 	//std::string _NameDbg;
diff -r d1590736279a code/ryzom/client/src/r2/config_var.h
--- a/code/ryzom/client/src/r2/config_var.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/ryzom/client/src/r2/config_var.h	Fri Mar 30 15:23:55 2012 -1000
@@ -40,6 +40,75 @@
 	static uint32 &getConfigFileTimeStamp();
 };
 
+//////////////////////
+// Specialisations  //
+//////////////////////
+
+//------------------------------------------------------------------------------------------------
+// Float
+inline std::string getConfigVarTypename(const float &/* dummy */) { return "float"; }
+inline bool getConfigVarValue(CLuaObject &luaValue, float &dest)
+{
+	if (luaValue.isNumber())
+	{
+		dest = (float) luaValue.toNumber();
+		return true;
+	}
+	return false;
+}
+
+//------------------------------------------------------------------------------------------------
+// Double
+inline std::string getConfigVarTypename(const double &/* dummy */) { return "float"; }
+inline bool getConfigVarValue(CLuaObject &luaValue, double &dest)
+{
+	if (luaValue.isNumber())
+	{
+		dest = luaValue.toNumber();
+		return true;
+	}
+	return false;
+}
+
+//------------------------------------------------------------------------------------------------
+// sint32
+inline std::string getConfigVarTypename(const sint32 &/* dummy */) { return "sint32"; }
+inline bool getConfigVarValue(CLuaObject &luaValue, sint32 &dest)
+{
+	if (luaValue.isNumber())
+	{
+		dest = (sint32) luaValue.toNumber();
+		return true;
+	}
+	return false;
+}
+
+
+//------------------------------------------------------------------------------------------------
+// String
+inline std::string getConfigVarTypename(const std::string &/* dummy */) { return "string"; }
+inline bool getConfigVarValue(CLuaObject &luaValue, std::string &dest)
+{
+	if (luaValue.isString())
+	{
+		dest = luaValue.toString();
+		return true;
+	}
+	return false;
+}
+
+//------------------------------------------------------------------------------------------------
+// RGBA
+inline std::string getConfigVarTypename(const NLMISC::CRGBA &/* dummy */) { return "rgba"; }
+inline bool getConfigVarValue(CLuaObject &luaValue, NLMISC::CRGBA &dest)
+{
+	if (luaValue.isRGBA())
+	{
+		dest = luaValue.toRGBA();
+		return true;
+	}
+	return false;
+}
 
 
 /** Quick access to variables defined inside r2_config.lua.
@@ -91,79 +160,10 @@
 	return _Value;
 };
 
-//////////////////////
-// Specialisations  //
-//////////////////////
-
-//------------------------------------------------------------------------------------------------
-// Float
-inline std::string getConfigVarTypename(const float &/* dummy */) { return "float"; }
-inline bool getConfigVarValue(CLuaObject &luaValue, float &dest)
-{
-	if (luaValue.isNumber())
-	{
-		dest = (float) luaValue.toNumber();
-		return true;
-	}
-	return false;
-}
 typedef CConfigVar<float> CConfigVarFloat;
-
-//------------------------------------------------------------------------------------------------
-// Double
-inline std::string getConfigVarTypename(const double &/* dummy */) { return "float"; }
-inline bool getConfigVarValue(CLuaObject &luaValue, double &dest)
-{
-	if (luaValue.isNumber())
-	{
-		dest = luaValue.toNumber();
-		return true;
-	}
-	return false;
-}
 typedef CConfigVar<double> CConfigVarDouble;
-
-//------------------------------------------------------------------------------------------------
-// sint32
-inline std::string getConfigVarTypename(const sint32 &/* dummy */) { return "sint32"; }
-inline bool getConfigVarValue(CLuaObject &luaValue, sint32 &dest)
-{
-	if (luaValue.isNumber())
-	{
-		dest = (sint32) luaValue.toNumber();
-		return true;
-	}
-	return false;
-}
 typedef CConfigVar<sint32> CConfigVarSInt32;
-
-
-//------------------------------------------------------------------------------------------------
-// String
-inline std::string getConfigVarTypename(const std::string &/* dummy */) { return "string"; }
-inline bool getConfigVarValue(CLuaObject &luaValue, std::string &dest)
-{
-	if (luaValue.isString())
-	{
-		dest = luaValue.toString();
-		return true;
-	}
-	return false;
-}
 typedef CConfigVar<std::string> CConfigVarString;
-
-//------------------------------------------------------------------------------------------------
-// RGBA
-inline std::string getConfigVarTypename(const NLMISC::CRGBA &/* dummy */) { return "rgba"; }
-inline bool getConfigVarValue(CLuaObject &luaValue, NLMISC::CRGBA &dest)
-{
-	if (luaValue.isRGBA())
-	{
-		dest = luaValue.toRGBA();
-		return true;
-	}
-	return false;
-}
 typedef CConfigVar<NLMISC::CRGBA> CConfigVarRGBA;
 
 } // R2
diff -r d1590736279a code/ryzom/common/src/game_share/mirror_prop_value_inline.h
--- a/code/ryzom/common/src/game_share/mirror_prop_value_inline.h	Fri Mar 23 07:59:45 2012 +0100
+++ b/code/ryzom/common/src/game_share/mirror_prop_value_inline.h	Fri Mar 30 15:23:55 2012 -1000
@@ -1005,7 +1005,7 @@
 	if ( _InMirror )
 		return CMirrorPropValue<T,CPropLocationClass>::getWriterServiceId();
 	else
-		return ~0;
+		return NLNET::TServiceId8(~0);
 }
 #endif
 
