diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake
index 977251f807f9ebf133f353403337a5334b7c3cde..2a70263446e391828e3a2b30c06ffee818239ec7 100644
--- a/indra/cmake/00-Common.cmake
+++ b/indra/cmake/00-Common.cmake
@@ -192,7 +192,7 @@ endif (DARWIN)
 
 
 if (LINUX OR DARWIN)
-  set(GCC_WARNINGS "-Wall -Wno-sign-compare -Wno-trigraphs -Wno-non-virtual-dtor")
+  set(GCC_WARNINGS "-Wall -Wno-sign-compare -Wno-trigraphs -Wno-non-virtual-dtor -Woverloaded-virtual")
 
   if (NOT GCC_DISABLE_FATAL_WARNINGS)
     set(GCC_WARNINGS "${GCC_WARNINGS} -Werror")
diff --git a/indra/llcharacter/lljoint.h b/indra/llcharacter/lljoint.h
index b1a0b74f85c63e7cc83b005c685a0bd8a3cb3761..0473d1599ab307720f8e3b8d98c118e8d84bf7d1 100644
--- a/indra/llcharacter/lljoint.h
+++ b/indra/llcharacter/lljoint.h
@@ -174,7 +174,7 @@ class LLJoint
 
 	void clampRotation(LLQuaternion old_rot, LLQuaternion new_rot);
 
-	virtual BOOL isAnimatable() { return TRUE; }
+	virtual BOOL isAnimatable() const { return TRUE; }
 
 	S32 getJointNum() const { return mJointNum; }
 	void setJointNum(S32 joint_num) { mJointNum = joint_num; }
diff --git a/indra/llcommon/lldependencies.h b/indra/llcommon/lldependencies.h
index bd4bd7c96ab2fbba221627ab182cb2f5feca7f27..82f53c6e170f1126138df55a6e95ab70a57f3dfa 100644
--- a/indra/llcommon/lldependencies.h
+++ b/indra/llcommon/lldependencies.h
@@ -581,6 +581,8 @@ class LLDependencies: public LLDependenciesBase
         return sorted_range(begin, end);
     }
 
+	using LLDependenciesBase::describe; // unhide virtual std::string describe(bool full=true) const;
+
     /// Override base-class describe() with actual implementation
     virtual std::ostream& describe(std::ostream& out, bool full=true) const
     {
@@ -597,6 +599,7 @@ class LLDependencies: public LLDependenciesBase
         return out;
     }
 
+
     /// describe() helper: report a DepNodeEntry
     static std::ostream& describe(std::ostream& out, std::string& sep,
                                   const DepNodeMapEntry& entry, bool full)
diff --git a/indra/llcommon/llevents.h b/indra/llcommon/llevents.h
index 2f6515a4cb034f3d0b8ec8da5c085bab89536b51..240adcdd411211db0f54c968b441bfe10b872a0b 100644
--- a/indra/llcommon/llevents.h
+++ b/indra/llcommon/llevents.h
@@ -22,7 +22,16 @@
 #include <list>
 #include <deque>
 #include <stdexcept>
+#if LL_WINDOWS
+	#pragma warning (push)
+	#pragma warning (disable : 4263) // boost::signals2::expired_slot::what() has const mismatch
+	#pragma warning (disable : 4264) 
+#endif
 #include <boost/signals2.hpp>
+#if LL_WINDOWS
+	#pragma warning (pop)
+#endif
+
 #include <boost/bind.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/enable_shared_from_this.hpp>
diff --git a/indra/llcommon/llpreprocessor.h b/indra/llcommon/llpreprocessor.h
index 2e4fd4787a1c837fa1c345a73bab8aa99c0f6e28..4401be1679bc94a027f7881eac74ff753deeb9c7 100644
--- a/indra/llcommon/llpreprocessor.h
+++ b/indra/llcommon/llpreprocessor.h
@@ -127,8 +127,10 @@ using snprintf_hack::snprintf;
 #pragma warning( 3	     : 4702 )	// "unreachable code"  Treat this as level 3, not level 4.
 #pragma warning( 3	     : 4189 )	// "local variable initialized but not referenced"  Treat this as level 3, not level 4.
 //#pragma warning( 3	: 4018 )	// "signed/unsigned mismatch"  Treat this as level 3, not level 4.
+#pragma warning( 3      :  4263 )	// 'function' : member function does not override any base class virtual member function
+#pragma warning( 3      :  4264 )	// "'virtual_function' : no override available for virtual member function from base 'class'; function is hidden"
 #pragma warning( 3       : 4265 )	// "class has virtual functions, but destructor is not virtual"
-#pragma warning( disable : 4786 )	// silly MS warning deep inside their <map> include file
+#pragma warning( 3      :  4266 )	// 'function' : no override available for virtual member function from base 'type'; function is hidden
 #pragma warning( disable : 4284 )	// silly MS warning deep inside their <map> include file
 #pragma warning( disable : 4503 )	// 'decorated name length exceeded, name was truncated'. Does not seem to affect compilation.
 #pragma warning( disable : 4800 )	// 'BOOL' : forcing value to bool 'true' or 'false' (performance warning)
diff --git a/indra/llcommon/llsd.cpp b/indra/llcommon/llsd.cpp
index 2cc94c2914266e9090914f537fc1110f1bd66a0e..ba0f798dbbed9224ee69337dd5a37d1f06e8edda 100644
--- a/indra/llcommon/llsd.cpp
+++ b/indra/llcommon/llsd.cpp
@@ -162,6 +162,7 @@ namespace
 		
 		virtual LLSD::Type type() const { return T; }
 
+		using LLSD::Impl::assign; // Unhiding base class virtuals...
 		virtual void assign(LLSD::Impl*& var, DataRef value) {
 			if (shared())
 			{
@@ -349,6 +350,10 @@ namespace
 		virtual LLSD::Boolean asBoolean() const { return !mData.empty(); }
 
 		virtual bool has(const LLSD::String&) const; 
+
+		using LLSD::Impl::get; // Unhiding get(LLSD::Integer)
+		using LLSD::Impl::erase; // Unhiding erase(LLSD::Integer)
+		using LLSD::Impl::ref; // Unhiding ref(LLSD::Integer)
 		virtual LLSD get(const LLSD::String&) const; 
 		        LLSD& insert(const LLSD::String& k, const LLSD& v);
 		virtual void erase(const LLSD::String&);
@@ -439,6 +444,9 @@ namespace
 
 		virtual LLSD::Boolean asBoolean() const { return !mData.empty(); }
 
+		using LLSD::Impl::get; // Unhiding get(LLSD::String)
+		using LLSD::Impl::erase; // Unhiding erase(LLSD::String)
+		using LLSD::Impl::ref; // Unhiding ref(LLSD::String)
 		virtual int size() const; 
 		virtual LLSD get(LLSD::Integer) const;
 		        void set(LLSD::Integer, const LLSD&);
diff --git a/indra/llmath/lloctree.h b/indra/llmath/lloctree.h
index bced84cb1c1d5c891e5fbb9f3f42e2b4c308fbb1..ba8776690a3b2c3c03f7c531aafb9c23c7a1c33e 100644
--- a/indra/llmath/lloctree.h
+++ b/indra/llmath/lloctree.h
@@ -65,11 +65,10 @@ class LLOctreeListener: public LLTreeListener<T>
 };
 
 template <class T>
-class LLOctreeTraveler : public LLTreeTraveler<T>
+class LLOctreeTraveler
 {
 public:
-	virtual void traverse(const LLTreeNode<T>* node);
-	virtual void visit(const LLTreeNode<T>* state) { }
+	virtual void traverse(const LLOctreeNode<T>* node);
 	virtual void visit(const LLOctreeNode<T>* branch) = 0;
 };
 
@@ -700,19 +699,16 @@ class LLOctreeRoot : public LLOctreeNode<T>
 	}
 };
 
-
 //========================
 //		LLOctreeTraveler
 //========================
 template <class T>
-void LLOctreeTraveler<T>::traverse(const LLTreeNode<T>* tree_node)
+void LLOctreeTraveler<T>::traverse(const LLOctreeNode<T>* node)
 {
-	const LLOctreeNode<T>* node = (const LLOctreeNode<T>*) tree_node;
 	node->accept(this);
 	for (U32 i = 0; i < node->getChildCount(); i++)
 	{
 		traverse(node->getChild(i));
 	}
 }
-
 #endif
diff --git a/indra/llmessage/llassetstorage.cpp b/indra/llmessage/llassetstorage.cpp
index 2966b602d7576c2ebf67f9202c7d16d55c6d21cd..b3087bcc3f80883972c895bc542ac8512d94519e 100644
--- a/indra/llmessage/llassetstorage.cpp
+++ b/indra/llmessage/llassetstorage.cpp
@@ -1025,12 +1025,12 @@ LLSD LLAssetStorage::getPendingDetails(LLAssetStorage::ERequestType rt,
 {
 	const request_list_t* requests = getRequestList(rt);
 	LLSD sd;
-	sd["requests"] = getPendingDetails(requests, asset_type, detail_prefix);
+	sd["requests"] = getPendingDetailsImpl(requests, asset_type, detail_prefix);
 	return sd;
 }
 
 // virtual
-LLSD LLAssetStorage::getPendingDetails(const LLAssetStorage::request_list_t* requests,
+LLSD LLAssetStorage::getPendingDetailsImpl(const LLAssetStorage::request_list_t* requests,
 										LLAssetType::EType asset_type,
 										const std::string& detail_prefix) const
 {
@@ -1113,11 +1113,11 @@ LLSD LLAssetStorage::getPendingRequest(LLAssetStorage::ERequestType rt,
 										const LLUUID& asset_id) const
 {
 	const request_list_t* requests = getRequestList(rt);
-	return getPendingRequest(requests, asset_type, asset_id);
+	return getPendingRequestImpl(requests, asset_type, asset_id);
 }
 
 // virtual
-LLSD LLAssetStorage::getPendingRequest(const LLAssetStorage::request_list_t* requests,
+LLSD LLAssetStorage::getPendingRequestImpl(const LLAssetStorage::request_list_t* requests,
 										LLAssetType::EType asset_type,
 										const LLUUID& asset_id) const
 {
@@ -1136,7 +1136,7 @@ bool LLAssetStorage::deletePendingRequest(LLAssetStorage::ERequestType rt,
 											const LLUUID& asset_id)
 {
 	request_list_t* requests = getRequestList(rt);
-	if (deletePendingRequest(requests, asset_type, asset_id))
+	if (deletePendingRequestImpl(requests, asset_type, asset_id))
 	{
 		llinfos << "Asset " << getRequestName(rt) << " request for "
 				<< asset_id << "." << LLAssetType::lookup(asset_type)
@@ -1147,7 +1147,7 @@ bool LLAssetStorage::deletePendingRequest(LLAssetStorage::ERequestType rt,
 }
 
 // virtual
-bool LLAssetStorage::deletePendingRequest(LLAssetStorage::request_list_t* requests,
+bool LLAssetStorage::deletePendingRequestImpl(LLAssetStorage::request_list_t* requests,
 											LLAssetType::EType asset_type,
 											const LLUUID& asset_id)
 {
diff --git a/indra/llmessage/llassetstorage.h b/indra/llmessage/llassetstorage.h
index f01ee6a8e84fb4b27ec4794c8950792f414c1fcb..56adbd5ccfe84f0f1f34428ad2c8481947dd1176 100644
--- a/indra/llmessage/llassetstorage.h
+++ b/indra/llmessage/llassetstorage.h
@@ -306,15 +306,15 @@ class LLAssetStorage
 	void		markAssetToxic( const LLUUID& uuid );
 
 protected:
-	virtual LLSD getPendingDetails(const request_list_t* requests,
+	virtual LLSD getPendingDetailsImpl(const request_list_t* requests,
 	 				LLAssetType::EType asset_type,
 	 				const std::string& detail_prefix) const;
 
-	virtual LLSD getPendingRequest(const request_list_t* requests,
+	virtual LLSD getPendingRequestImpl(const request_list_t* requests,
 							LLAssetType::EType asset_type,
 							const LLUUID& asset_id) const;
 
-	virtual bool deletePendingRequest(request_list_t* requests,
+	virtual bool deletePendingRequestImpl(request_list_t* requests,
 							LLAssetType::EType asset_type,
 							const LLUUID& asset_id);
 
diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp
index 1a432cd7dfdf91d4fa7a12e8584f52a26af63202..a4af8e989ba7436c067ae67105c197feb19af458 100644
--- a/indra/llmessage/llcurl.cpp
+++ b/indra/llmessage/llcurl.cpp
@@ -120,7 +120,7 @@ LLCurl::Responder::~Responder()
 }
 
 // virtual
-void LLCurl::Responder::error(
+void LLCurl::Responder::errorWithContent(
 	U32 status,
 	const std::string& reason,
 	const LLSD&)
@@ -161,7 +161,7 @@ void LLCurl::Responder::completed(U32 status, const std::string& reason, const L
 	}
 	else
 	{
-		error(status, reason, content);
+		errorWithContent(status, reason, content);
 	}
 }
 
diff --git a/indra/llmessage/llcurl.h b/indra/llmessage/llcurl.h
index ff63904c9127dd6379e1102319730b4110b5f6db..fbd3077cbf75eddadebadb6ecb535fb7757ee8cd 100644
--- a/indra/llmessage/llcurl.h
+++ b/indra/llmessage/llcurl.h
@@ -85,7 +85,7 @@ class LLCurl
 			return((200 <= status) && (status < 300));
 		}
 		
-		virtual void error(
+		virtual void errorWithContent(
 			U32 status,
 			const std::string& reason,
 			const LLSD& content);
diff --git a/indra/llmessage/llhttpassetstorage.cpp b/indra/llmessage/llhttpassetstorage.cpp
index dfdad59e2a66efa9386ead8326c9f2627f1c4b21..49dbdbd56d4295efb3dd313177f6b89f04c1ec69 100644
--- a/indra/llmessage/llhttpassetstorage.cpp
+++ b/indra/llmessage/llhttpassetstorage.cpp
@@ -626,7 +626,7 @@ LLSD LLHTTPAssetStorage::getPendingRequest(LLAssetStorage::ERequestType rt,
 	const request_list_t* running = getRunningList(rt);
 	if (running)
 	{
-		LLSD sd = LLAssetStorage::getPendingRequest(running, asset_type, asset_id);
+		LLSD sd = LLAssetStorage::getPendingRequestImpl(running, asset_type, asset_id);
 		if (sd)
 		{
 			sd["is_running"] = true;
diff --git a/indra/llmessage/llhttpassetstorage.h b/indra/llmessage/llhttpassetstorage.h
index 5786c5df3244958a91e876d9e70c95fde63a737f..231437dad41931135add7f0e7499fb13436c3b73 100644
--- a/indra/llmessage/llhttpassetstorage.h
+++ b/indra/llmessage/llhttpassetstorage.h
@@ -62,6 +62,8 @@ class LLHTTPAssetStorage : public LLAssetStorage
 
 	virtual ~LLHTTPAssetStorage();
 
+	using LLAssetStorage::storeAssetData; // Unhiding virtuals...
+
 	virtual void storeAssetData(
 		const LLUUID& uuid,
 		LLAssetType::EType atype,
diff --git a/indra/llmessage/llhttpnode.cpp b/indra/llmessage/llhttpnode.cpp
index 2ba900a533d8060b9a76c49622d4a805a3c6d97d..440b91fcfadc8ed10bec1b1b248427873302ce05 100644
--- a/indra/llmessage/llhttpnode.cpp
+++ b/indra/llmessage/llhttpnode.cpp
@@ -98,19 +98,19 @@ namespace {
 }
 
 // virtual
-LLSD LLHTTPNode::get() const
+LLSD LLHTTPNode::simpleGet() const
 {
 	throw NotImplemented();
 }
 
 // virtual
-LLSD LLHTTPNode::put(const LLSD& input) const
+LLSD LLHTTPNode::simplePut(const LLSD& input) const
 {
 	throw NotImplemented();
 }
 
 // virtual
-LLSD LLHTTPNode::post(const LLSD& input) const
+LLSD LLHTTPNode::simplePost(const LLSD& input) const
 {
 	throw NotImplemented();
 }
@@ -121,7 +121,7 @@ void LLHTTPNode::get(LLHTTPNode::ResponsePtr response, const LLSD& context) cons
 {
 	try
 	{
-		response->result(get());
+		response->result(simpleGet());
 	}
 	catch (NotImplemented)
 	{
@@ -134,7 +134,7 @@ void LLHTTPNode::put(LLHTTPNode::ResponsePtr response, const LLSD& context, cons
 {
 	try
 	{
-		response->result(put(input));
+		response->result(simplePut(input));
 	}
 	catch (NotImplemented)
 	{
@@ -147,7 +147,7 @@ void LLHTTPNode::post(LLHTTPNode::ResponsePtr response, const LLSD& context, con
 {
 	try
 	{
-		response->result(post(input));
+		response->result(simplePost(input));
 	}
 	catch (NotImplemented)
 	{
@@ -160,7 +160,7 @@ void LLHTTPNode::del(LLHTTPNode::ResponsePtr response, const LLSD& context) cons
 {
     try
     {
-	response->result(del(context));
+	response->result(simpleDel(context));
     }
     catch (NotImplemented)
     {
@@ -170,7 +170,7 @@ void LLHTTPNode::del(LLHTTPNode::ResponsePtr response, const LLSD& context) cons
 }
 
 // virtual
-LLSD LLHTTPNode::del(const LLSD&) const
+LLSD LLHTTPNode::simpleDel(const LLSD&) const
 {
 	throw NotImplemented();
 }
@@ -388,7 +388,7 @@ LLHTTPNode::Response::~Response()
 {
 }
 
-void LLHTTPNode::Response::status(S32 code)
+void LLHTTPNode::Response::statusUnknownError(S32 code)
 {
 	status(code, "Unknown Error");
 }
diff --git a/indra/llmessage/llhttpnode.h b/indra/llmessage/llhttpnode.h
index 3f4da69a1d1eb95843a33e04629d509dfbb3f9fa..915aacb7ccbafa39eac7d2b71749f69293574982 100644
--- a/indra/llmessage/llhttpnode.h
+++ b/indra/llmessage/llhttpnode.h
@@ -84,10 +84,10 @@ class LLHTTPNode
 	//@{
 public:	
 
-	virtual LLSD get() const;
-	virtual LLSD put(const LLSD& input) const;
-	virtual LLSD post(const LLSD& input) const;
-	virtual LLSD del(const LLSD& context) const;
+	virtual LLSD simpleGet() const;
+	virtual LLSD simplePut(const LLSD& input) const;
+	virtual LLSD simplePost(const LLSD& input) const;
+	virtual LLSD simpleDel(const LLSD& context) const;
 
 	/**
 	* @brief Abstract Base Class declaring Response interface.
@@ -117,7 +117,7 @@ class LLHTTPNode
 		/**
 		* @brief Return no body, just status code and 'UNKNOWN ERROR'.
 		*/
-		virtual void status(S32 code);
+		virtual void statusUnknownError(S32 code);
 
 		virtual void notFound(const std::string& message);
 		virtual void notFound();
@@ -293,6 +293,7 @@ class LLSimpleResponse : public LLHTTPNode::Response
 	
 	void result(const LLSD& result);
 	void extendedResult(S32 code, const std::string& body, const LLSD& headers);
+	
 	void status(S32 code, const std::string& message);
 
 	void print(std::ostream& out) const;
diff --git a/indra/llmessage/lliohttpserver.cpp b/indra/llmessage/lliohttpserver.cpp
index 83dfa94f00f3970df56798a84042f58f517bec6d..a00dbd180906235cf13f3fd688b2b9ed54c99815 100644
--- a/indra/llmessage/lliohttpserver.cpp
+++ b/indra/llmessage/lliohttpserver.cpp
@@ -105,6 +105,7 @@ class LLHTTPPipe : public LLIOPipe
 		// from LLHTTPNode::Response
 		virtual void result(const LLSD&);
 		virtual void extendedResult(S32 code, const std::string& body, const LLSD& headers);
+		
 		virtual void status(S32 code, const std::string& message);
 
 		void nullPipe();
diff --git a/indra/llmessage/llregionpresenceverifier.h b/indra/llmessage/llregionpresenceverifier.h
index 10602450d8e5bf84a5bce555cf510716acd1d24d..54ad6226d645cbe7c4aed403aec028367b504504 100644
--- a/indra/llmessage/llregionpresenceverifier.h
+++ b/indra/llmessage/llregionpresenceverifier.h
@@ -82,6 +82,7 @@ class LLRegionPresenceVerifier
 	public:
 		VerifiedDestinationResponder(ResponsePtr data, const LLSD& content);
 		virtual void result(const LLSD& content);
+		
 		virtual void error(U32 status, const std::string& reason);
 	private:
 		void retry();
diff --git a/indra/llmessage/llsdappservices.cpp b/indra/llmessage/llsdappservices.cpp
index dc135c51b2fbec825400b2f10f2368b1e309eb4c..b87c0cd6b7019afc9b41621e280ac4cd953b0ac6 100644
--- a/indra/llmessage/llsdappservices.cpp
+++ b/indra/llmessage/llsdappservices.cpp
@@ -56,7 +56,7 @@ class LLHTTPConfigService : public LLHTTPNode
 		desc.source(__FILE__, __LINE__);
 	}
     
-	virtual LLSD get() const
+	virtual LLSD simpleGet() const
 	{
 		LLSD result;
 		LLApp* app = LLApp::instance();
@@ -82,7 +82,7 @@ class LLHTTPConfigRuntimeService : public LLHTTPNode
 		desc.source(__FILE__, __LINE__);
 	}
     
-	virtual LLSD get() const
+	virtual LLSD simpleGet() const
 	{
 		return LLApp::instance()->getOptionData(
 			LLApp::PRIORITY_RUNTIME_OVERRIDE);
diff --git a/indra/llmessage/llsdhttpserver.cpp b/indra/llmessage/llsdhttpserver.cpp
index 00fc170c594aa1005ec17afcceb6bc856bbba577..704c375ffc4ece7cc8d0018a9a5217df71e9e901 100644
--- a/indra/llmessage/llsdhttpserver.cpp
+++ b/indra/llmessage/llsdhttpserver.cpp
@@ -62,7 +62,7 @@ class LLHTTPHelloService : public LLHTTPNode
 		desc.source(__FILE__, __LINE__);
 	}
     
-	virtual LLSD get() const
+	virtual LLSD simpleGet() const
 	{
 		LLSD result = "hello";
 		return result;
@@ -86,7 +86,7 @@ class LLHTTPEchoService : public LLHTTPNode
 		desc.source(__FILE__, __LINE__);
 	}
 	
-    virtual LLSD post(const LLSD& params) const
+	virtual LLSD simplePost(const LLSD& params) const
 	{
 		return params;
 	}
diff --git a/indra/llmessage/llsdmessage.cpp b/indra/llmessage/llsdmessage.cpp
index f663268466c3f682902eeea78b991563a689e657..9967a6197fe4e7a2abbd52cd23fb660aedc0d753 100644
--- a/indra/llmessage/llsdmessage.cpp
+++ b/indra/llmessage/llsdmessage.cpp
@@ -91,7 +91,7 @@ void LLSDMessage::EventResponder::result(const LLSD& data)
     }
 }
 
-void LLSDMessage::EventResponder::error(U32 status, const std::string& reason, const LLSD& content)
+void LLSDMessage::EventResponder::errorWithContent(U32 status, const std::string& reason, const LLSD& content)
 {
     // If our caller passed an empty errorPump name, they're not
     // listening: "default error handling is acceptable." Only post to an
@@ -135,7 +135,7 @@ bool LLSDMessage::ResponderAdapter::listener(const LLSD& payload, bool success)
     }
     else
     {
-        mResponder->error(payload["status"].asInteger(), payload["reason"], payload["content"]);
+        mResponder->errorWithContent(payload["status"].asInteger(), payload["reason"], payload["content"]);
     }
 
     /*---------------- MUST BE LAST STATEMENT BEFORE RETURN ----------------*/
diff --git a/indra/llmessage/llsdmessage.h b/indra/llmessage/llsdmessage.h
index 8ae94512436e26a29f749ad3c0a2e29cd67e8645..65503756a83585881eb43bbb4f463e0b07c1a3f9 100644
--- a/indra/llmessage/llsdmessage.h
+++ b/indra/llmessage/llsdmessage.h
@@ -131,7 +131,7 @@ class LLSDMessage
         {}
     
         virtual void result(const LLSD& data);
-        virtual void error(U32 status, const std::string& reason, const LLSD& content);
+        virtual void errorWithContent(U32 status, const std::string& reason, const LLSD& content);
     
     private:
         LLEventPumps& mPumps;
diff --git a/indra/llmessage/tests/llcurl_stub.cpp b/indra/llmessage/tests/llcurl_stub.cpp
index d6be54336a4a68f40c5df52c28e7029faebc2420..5dc5932fde9db420c408ac4a0747a92e34cc01c7 100644
--- a/indra/llmessage/tests/llcurl_stub.cpp
+++ b/indra/llmessage/tests/llcurl_stub.cpp
@@ -34,7 +34,7 @@ void LLCurl::Responder::completed(U32 status, std::basic_string<char, std::char_
 	}
 	else
 	{
-		error(status, reason, mContent);
+		errorWithContent(status, reason, mContent);
 	}
 }
 
@@ -51,7 +51,7 @@ void LLCurl::Responder::completedRaw(unsigned,
 {
 }
 
-void LLCurl::Responder::error(unsigned,
+void LLCurl::Responder::errorWithContent(unsigned,
 							  std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&,
 							  LLSD const&)
 {
diff --git a/indra/llui/llmultisliderctrl.h b/indra/llui/llmultisliderctrl.h
index 4855ed492637f18bb3e774c2e96fa222a6846960..16d07541f2f632e626b1fc61d4c2ce3429d3f73a 100644
--- a/indra/llui/llmultisliderctrl.h
+++ b/indra/llui/llmultisliderctrl.h
@@ -90,8 +90,8 @@ class LLMultiSliderCtrl : public LLF32UICtrl
 	void			setCurSlider(const std::string& name);		
 	void			setCurSliderValue(F32 val, BOOL from_event = false) { setSliderValue(mMultiSlider->getCurSlider(), val, from_event); }
 
-	virtual void	setMinValue(LLSD min_value)	{ setMinValue((F32)min_value.asReal()); }
-	virtual void	setMaxValue(LLSD max_value)	{ setMaxValue((F32)max_value.asReal());  }
+	virtual void	setMinValue(const LLSD& min_value)	{ setMinValue((F32)min_value.asReal()); }
+	virtual void	setMaxValue(const LLSD& max_value)	{ setMaxValue((F32)max_value.asReal());  }
 
 	BOOL			isMouseHeldDown();
 
@@ -108,8 +108,8 @@ class LLMultiSliderCtrl : public LLF32UICtrl
 	void			deleteSlider(const std::string& name);
 	void			deleteCurSlider()			{ deleteSlider(mMultiSlider->getCurSlider()); }
 
-	F32				getMinValue() { return mMultiSlider->getMinValue(); }
-	F32				getMaxValue() { return mMultiSlider->getMaxValue(); }
+	F32				getMinValue() const { return mMultiSlider->getMinValue(); }
+	F32				getMaxValue() const { return mMultiSlider->getMaxValue(); }
 
 	void			setLabel(const std::string& label)				{ if (mLabelBox) mLabelBox->setText(label); }
 	void			setLabelColor(const LLColor4& c)			{ mTextEnabledColor = c; }
diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp
index b18a750178987a595919b0c274d91e38a7015cfd..116096b7b33311bdfd697b9e90f88e5b35c96d28 100644
--- a/indra/llui/llpanel.cpp
+++ b/indra/llui/llpanel.cpp
@@ -799,24 +799,6 @@ BOOL LLPanel::childSetToolTipArg(const std::string& id, const std::string& key,
 	return FALSE;
 }
 
-void LLPanel::childSetMinValue(const std::string& id, LLSD min_value)
-{
-	LLUICtrl* child = findChild<LLUICtrl>(id);
-	if (child)
-	{
-		child->setMinValue(min_value);
-	}
-}
-
-void LLPanel::childSetMaxValue(const std::string& id, LLSD max_value)
-{
-	LLUICtrl* child = findChild<LLUICtrl>(id);
-	if (child)
-	{
-		child->setMaxValue(max_value);
-	}
-}
-
 void LLPanel::childShowTab(const std::string& id, const std::string& tabname, bool visible)
 {
 	LLTabContainer* child = findChild<LLTabContainer>(id);
diff --git a/indra/llui/llpanel.h b/indra/llui/llpanel.h
index ca3b2e7e23ffe00a290e2e61cf6571c56368dae3..381cba2db38aeb70629260dcd5644785e1b8b707 100644
--- a/indra/llui/llpanel.h
+++ b/indra/llui/llpanel.h
@@ -215,10 +215,6 @@ class LLPanel : public LLUICtrl
 	BOOL childSetLabelArg(const std::string& id, const std::string& key, const LLStringExplicit& text);
 	BOOL childSetToolTipArg(const std::string& id, const std::string& key, const LLStringExplicit& text);
 	
-	// LLSlider / LLMultiSlider / LLSpinCtrl
-	void childSetMinValue(const std::string& id, LLSD min_value);
-	void childSetMaxValue(const std::string& id, LLSD max_value);
-
 	// LLTabContainer
 	void childShowTab(const std::string& id, const std::string& tabname, bool visible = true);
 	LLPanel *childGetVisibleTab(const std::string& id) const;
diff --git a/indra/llui/llslider.h b/indra/llui/llslider.h
index 50ed2126566b38aaa25a4dba8d1da03131741e4b..088fd20d9431d6e827f2a2d09eb048a03db709b1 100644
--- a/indra/llui/llslider.h
+++ b/indra/llui/llslider.h
@@ -62,6 +62,9 @@ class LLSlider : public LLF32UICtrl
 	void			setValue( F32 value, BOOL from_event = FALSE );
     // overrides for LLF32UICtrl methods
 	virtual void	setValue(const LLSD& value )	{ setValue((F32)value.asReal(), TRUE); }
+	
+	virtual void 	setMinValue(const LLSD& min_value) { setMinValue((F32)min_value.asReal()); }
+	virtual void 	setMaxValue(const LLSD& max_value) { setMaxValue((F32)max_value.asReal()); }
 	virtual void	setMinValue(F32 min_value) { LLF32UICtrl::setMinValue(min_value); updateThumbRect(); }
 	virtual void	setMaxValue(F32 max_value) { LLF32UICtrl::setMaxValue(max_value); updateThumbRect(); }
 
diff --git a/indra/llui/llsliderctrl.h b/indra/llui/llsliderctrl.h
index 5bdbbfcbccfb1b327906707df75306073a539438..4a1574d502110352a5fff000bd8f4d3425c48a86 100644
--- a/indra/llui/llsliderctrl.h
+++ b/indra/llui/llsliderctrl.h
@@ -100,12 +100,15 @@ class LLSliderCtrl : public LLF32UICtrl
 
 	/*virtual*/ void    setEnabled( BOOL b );
 	/*virtual*/ void	clear();
+
+	/*virtual*/ void	setMinValue(const LLSD& min_value)  { setMinValue((F32)min_value.asReal()); }
+	/*virtual*/ void	setMaxValue(const LLSD& max_value)  { setMaxValue((F32)max_value.asReal()); }
 	/*virtual*/ void	setMinValue(F32 min_value)  { mSlider->setMinValue(min_value); updateText(); }
 	/*virtual*/ void	setMaxValue(F32 max_value)  { mSlider->setMaxValue(max_value); updateText(); }
 	/*virtual*/ void	setIncrement(F32 increment) { mSlider->setIncrement(increment);}
 
-	F32				getMinValue() { return mSlider->getMinValue(); }
-	F32				getMaxValue() { return mSlider->getMaxValue(); }
+	F32				getMinValue() const { return mSlider->getMinValue(); }
+	F32				getMaxValue() const { return mSlider->getMaxValue(); }
 
 	void			setLabel(const LLStringExplicit& label)		{ if (mLabelBox) mLabelBox->setText(label); }
 	void			setLabelColor(const LLColor4& c)			{ mTextEnabledColor = c; }
diff --git a/indra/llui/lluictrl.cpp b/indra/llui/lluictrl.cpp
index 2a6dd97f318787670a07f8d35602c72021a55fc9..ebf594ff6649bd8201e3d3371ea6310ce1c24c68 100644
--- a/indra/llui/lluictrl.cpp
+++ b/indra/llui/lluictrl.cpp
@@ -851,14 +851,6 @@ BOOL LLUICtrl::getTentative() const
 void LLUICtrl::setColor(const LLColor4& color)							
 { }
 
-// virtual
-void LLUICtrl::setMinValue(LLSD min_value)								
-{ }
-
-// virtual
-void LLUICtrl::setMaxValue(LLSD max_value)								
-{ }
-
 
 
 namespace LLInitParam
diff --git a/indra/llui/lluictrl.h b/indra/llui/lluictrl.h
index ff37efb5f7cd9c7cc2ec961d5e4f95d5bfa2a90f..16fbbf79ea33fbb912113bf4e45318f6e4d55545 100644
--- a/indra/llui/lluictrl.h
+++ b/indra/llui/lluictrl.h
@@ -232,8 +232,6 @@ class LLUICtrl
 	virtual void	onTabInto();
 	virtual void	clear();
 	virtual void	setColor(const LLColor4& color);
-	virtual void	setMinValue(LLSD min_value);
-	virtual void	setMaxValue(LLSD max_value);
 
 	BOOL	focusNextItem(BOOL text_entry_only);
 	BOOL	focusPrevItem(BOOL text_entry_only);
diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp
index 3c203d9f5ccef50bbca8e11b200934ad1ddba399..bf40353410664e254dd991fad756ad774042a0e6 100644
--- a/indra/llwindow/llwindowsdl.cpp
+++ b/indra/llwindow/llwindowsdl.cpp
@@ -1940,11 +1940,6 @@ void LLWindowSDL::setCursor(ECursorType cursor)
 	}
 }
 
-ECursorType LLWindowSDL::getCursor()
-{
-	return mCurrentCursor;
-}
-
 void LLWindowSDL::initCursors()
 {
 	int i;
diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h
index 1e4dffd7a61d5462aca9480e03c2d38f724fdb00..dcf41291ec7a71d08696d07b73ed31d6ff2ae333 100644
--- a/indra/llwindow/llwindowsdl.h
+++ b/indra/llwindow/llwindowsdl.h
@@ -77,7 +77,6 @@ class LLWindowSDL : public LLWindow
 	/*virtual*/ void hideCursorUntilMouseMove();
 	/*virtual*/ BOOL isCursorHidden();
 	/*virtual*/ void setCursor(ECursorType cursor);
-	/*virtual*/ ECursorType getCursor();
 	/*virtual*/ void captureMouse();
 	/*virtual*/ void releaseMouse();
 	/*virtual*/ void setMouseClipping( BOOL b );
diff --git a/indra/llxml/llcontrol.h b/indra/llxml/llcontrol.h
index 37939a0908ada28dcb3128604cae3ab4d3bddc0f..08649408669197be90b6e13f1e08c292d34d0757 100644
--- a/indra/llxml/llcontrol.h
+++ b/indra/llxml/llcontrol.h
@@ -56,7 +56,16 @@
 #endif
 
 #include <boost/bind.hpp>
+
+#if LL_WINDOWS
+	#pragma warning (push)
+	#pragma warning (disable : 4263) // boost::signals2::expired_slot::what() has const mismatch
+	#pragma warning (disable : 4264) 
+#endif
 #include <boost/signals2.hpp>
+#if LL_WINDOWS
+	#pragma warning (pop)
+#endif
 
 #if LL_WINDOWS
 # if (_MSC_VER >= 1300 && _MSC_VER < 1400)
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 15fc59e3180c40226408bafffb0f2f98f521df37..cdf9a6b059faec9f0b898949f13c5ec47ece3257 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -5557,7 +5557,7 @@ class LLAgentDropGroupViewerNode : public LLHTTPNode
 			!input.has("body") )
 		{
 			//what to do with badly formed message?
-			response->status(400);
+			response->statusUnknownError(400);
 			response->result(LLSD("Invalid message parameters"));
 		}
 
@@ -5630,7 +5630,7 @@ class LLAgentDropGroupViewerNode : public LLHTTPNode
 		else
 		{
 			//what to do with badly formed message?
-			response->status(400);
+			response->statusUnknownError(400);
 			response->result(LLSD("Invalid message parameters"));
 		}
 	}
diff --git a/indra/newview/llassetuploadresponders.h b/indra/newview/llassetuploadresponders.h
index 9ab571ae99128ec764e6fff0e4f1b0eb64ccf9c4..a08d70213c3f8d5f6eb6e5a6c31837cee0c0873e 100644
--- a/indra/newview/llassetuploadresponders.h
+++ b/indra/newview/llassetuploadresponders.h
@@ -47,6 +47,7 @@ class LLAssetUploadResponder : public LLHTTPClient::Responder
 							const std::string& file_name,
 							LLAssetType::EType asset_type);
 	~LLAssetUploadResponder();
+
     virtual void error(U32 statusNum, const std::string& reason);
 	virtual void result(const LLSD& content);
 	virtual void uploadUpload(const LLSD& content);
diff --git a/indra/newview/llclassifiedstatsresponder.h b/indra/newview/llclassifiedstatsresponder.h
index c4591df8de7d1bdb07c7a6e3933c9bad9ddba34a..9c52ed5ae16f3b3c752f61e282d598c909dca7b8 100644
--- a/indra/newview/llclassifiedstatsresponder.h
+++ b/indra/newview/llclassifiedstatsresponder.h
@@ -44,6 +44,7 @@ class LLClassifiedStatsResponder : public LLHTTPClient::Responder
 	//If we get back a normal response, handle it here
 	virtual void result(const LLSD& content);
 	//If we get back an error (not found, etc...), handle it here
+	
 	virtual void error(U32 status, const std::string& reason);
 
 protected:
diff --git a/indra/newview/llfloateranimpreview.cpp b/indra/newview/llfloateranimpreview.cpp
index a1d9fed567dc9447906f7eb54f470813f5c38389..979c5543e70cff1a6ffa2f5759cd228dbede9000 100644
--- a/indra/newview/llfloateranimpreview.cpp
+++ b/indra/newview/llfloateranimpreview.cpp
@@ -307,8 +307,9 @@ BOOL LLFloaterAnimPreview::postBuild()
 
 			motionp->setName(childGetValue("name_form").asString());
 			mAnimPreview->getDummyAvatar()->startMotion(mMotionID);
-			childSetMinValue("playback_slider", 0.0);
-			childSetMaxValue("playback_slider", 1.0);
+			
+			getChild<LLSlider>("playback_slider")->setMinValue(0.0);
+			getChild<LLSlider>("playback_slider")->setMaxValue(1.0);
 
 			childSetValue("loop_check", LLSD(motionp->getLoop()));
 			childSetValue("loop_in_point", LLSD(motionp->getLoopIn() / motionp->getDuration() * 100.f));
diff --git a/indra/newview/llfloaterhardwaresettings.cpp b/indra/newview/llfloaterhardwaresettings.cpp
index ef1d43f2f65ec18a4d6ac3081eb0ba2f1e28474a..8121a1cc10cff1c86cf76fde711456d17f7b34b4 100644
--- a/indra/newview/llfloaterhardwaresettings.cpp
+++ b/indra/newview/llfloaterhardwaresettings.cpp
@@ -47,6 +47,7 @@
 #include "llradiogroup.h"
 #include "lluictrlfactory.h"
 #include "llwindow.h"
+#include "llslider.h"
 
 LLFloaterHardwareSettings* LLFloaterHardwareSettings::sHardwareSettings = NULL;
 
@@ -92,8 +93,8 @@ void LLFloaterHardwareSettings::refreshEnabledState()
 {
 	S32 min_tex_mem = LLViewerTextureList::getMinVideoRamSetting();
 	S32 max_tex_mem = LLViewerTextureList::getMaxVideoRamSetting();
-	childSetMinValue("GrapicsCardTextureMemory", min_tex_mem);
-	childSetMaxValue("GrapicsCardTextureMemory", max_tex_mem);
+	getChild<LLSlider>("GrapicsCardTextureMemory")->setMinValue(min_tex_mem);
+	getChild<LLSlider>("GrapicsCardTextureMemory")->setMinValue(max_tex_mem);
 
 	if (!LLFeatureManager::getInstance()->isFeatureAvailable("RenderVBOEnable") ||
 		!gGLManager.mHasVertexBufferObject)
@@ -216,3 +217,4 @@ void LLFloaterHardwareSettings::onBtnOK( void* userdata )
 	fp->closeFloater(false);
 }
 
+
diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp
index 8fe30ea485d182a85ab52698e50850c0c7da9f5d..cdc4cbc411faacb8401b489c6f9df922783cc73a 100644
--- a/indra/newview/llfloaterworldmap.cpp
+++ b/indra/newview/llfloaterworldmap.cpp
@@ -67,6 +67,7 @@
 #include "llappviewer.h"
 #include "llmapimagetype.h"
 #include "llweb.h"
+#include "llslider.h"
 
 #include "llglheaders.h"
 #include "llwindow.h"			// copyTextToClipboard()
@@ -972,7 +973,8 @@ void LLFloaterWorldMap::adjustZoomSliderBounds()
 	pixels_per_region = llclamp(pixels_per_region, 1.f, ZOOM_MAX);
 
 	F32 min_power = log(pixels_per_region/256.f)/log(2.f);
-	childSetMinValue("zoom slider", min_power);
+	
+	getChild<LLSlider>("zoom slider")->setMinValue(min_power);
 }
 
 
diff --git a/indra/newview/llhomelocationresponder.cpp b/indra/newview/llhomelocationresponder.cpp
index 3ef58e7561c0795deea252599110cbe4495ab614..df478a0a04b6ee9f7bade2e838c5f626bb3b9ab3 100644
--- a/indra/newview/llhomelocationresponder.cpp
+++ b/indra/newview/llhomelocationresponder.cpp
@@ -103,7 +103,7 @@ void LLHomeLocationResponder::result( const LLSD& content )
   }
 }
 
-void LLHomeLocationResponder::error( const LLSD& content )
+void LLHomeLocationResponder::error( U32 status, const std::string& reason )
 {
-  llinfos << "received error(" << ll_pretty_print_sd( content ) << ")" << llendl;
+  llinfos << "received error(" << reason  << ")" << llendl;
 }
diff --git a/indra/newview/llhomelocationresponder.h b/indra/newview/llhomelocationresponder.h
index 1e222cd5b2bf0673e8160bf713d7cac07908cb9f..3a1d8ebfed760355134001afc5ca41569683a2c1 100644
--- a/indra/newview/llhomelocationresponder.h
+++ b/indra/newview/llhomelocationresponder.h
@@ -42,7 +42,7 @@
 class LLHomeLocationResponder : public LLHTTPClient::Responder
 {
 	virtual void result( const LLSD& content );
-	virtual void error( const LLSD& content );
+	virtual void error( U32 status, const std::string& reason );
 };
 
 #endif
diff --git a/indra/newview/llinventorymodel.h b/indra/newview/llinventorymodel.h
index 950e8866bbcc6bcf94f45f1e9c0dea4a087fe8c1..c402fea8863e30c51d4af67d220af905d8c23ee2 100644
--- a/indra/newview/llinventorymodel.h
+++ b/indra/newview/llinventorymodel.h
@@ -118,6 +118,7 @@ class LLInventoryModel
 	public:
 		fetchInventoryResponder(const LLSD& request_sd) : mRequestSD(request_sd) {};
 		void result(const LLSD& content);			
+		
 		void error(U32 status, const std::string& reason);
 
 	public:
diff --git a/indra/newview/llnamelistctrl.h b/indra/newview/llnamelistctrl.h
index 6f64aa68ad442284b08ae32bf467522a56306591..6692d4cff9093ab1f824fd09be1857e9900b4f6b 100644
--- a/indra/newview/llnamelistctrl.h
+++ b/indra/newview/llnamelistctrl.h
@@ -94,6 +94,14 @@ class LLNameListCtrl
 	void addNameItem(NameItem& item, EAddPosition pos = ADD_BOTTOM);
 
 	/*virtual*/ LLScrollListItem* addElement(const LLSD& element, EAddPosition pos = ADD_BOTTOM, void* userdata = NULL);
+	LLScrollListItem* addRow(const LLScrollListItem::Params& value, EAddPosition pos = ADD_BOTTOM)
+	{
+		// *NOTE:Mani - This implementation overrides the LLScrollListItem::addRow()
+		// method to call this class's special version of addRow().
+		// The dynamic_cast of a reference type should throw 
+		// a std::bad_cast exception on failure.
+		return addRow(dynamic_cast<const NameItem&>(value), pos);
+	}
 	LLScrollListItem* addRow(const NameItem& value, EAddPosition pos = ADD_BOTTOM);
 
 	// Add a user to the list by name.  It will be added, the name 
diff --git a/indra/newview/llpanelpick.cpp b/indra/newview/llpanelpick.cpp
index 2bcead425aa2af7a194d2a7e0af4da03b89f4439..b1efb71abbdd7ad79f41d2c1e2a5d60ffec6b533 100644
--- a/indra/newview/llpanelpick.cpp
+++ b/indra/newview/llpanelpick.cpp
@@ -97,9 +97,9 @@ void LLPanelPick::reset()
 	mCreatorId.setNull();
 	mParcelId.setNull();
 	
-	setName("");
-	setDesc("");
-	setLocation("");
+	setPickName("");
+	setPickDesc("");
+	setPickLocation("");
 	mSnapshotCtrl->setImageAssetID(LLUUID::null);
 
 	//*HACK just setting asset id to NULL not enough to clear 
@@ -164,9 +164,9 @@ void LLPanelPick::init(LLPickData *pick_data)
 	mPickId = pick_data->pick_id;
 	mCreatorId = pick_data->creator_id;
 
-	setName(pick_data->name);
-	setDesc(pick_data->desc);
-	setLocation(pick_data->location_text);
+	setPickName(pick_data->name);
+	setPickDesc(pick_data->desc);
+	setPickLocation(pick_data->location_text);
 	mSnapshotCtrl->setImageAssetID(pick_data->snapshot_id);
 
 	//*HACK see reset() where the texture control was set to FALSE
@@ -188,8 +188,8 @@ void LLPanelPick::createNewPick()
 	LLParcel* parcel = LLViewerParcelMgr::getInstance()->getAgentParcel();
 	if (parcel)
 	{
-		setName(parcel->getName());
-		setDesc(parcel->getDesc());
+		setPickName(parcel->getName());
+		setPickDesc(parcel->getDesc());
 		mSnapshotCtrl->setImageAssetID(parcel->getSnapshotID());
 	}
 
@@ -219,9 +219,9 @@ void LLPanelPick::setEditMode( BOOL edit_mode )
 	mEditMode = edit_mode;
 
 	// preserve data before killing controls
-	std::string name = getName();
-	std::string desc = getDesc();
-	std::string location = getLocation();
+	std::string name = getPickName();
+	std::string desc = getPickDesc();
+	std::string location = getPickLocation();
 	LLUUID snapshot_id = mSnapshotCtrl->getImageAssetID();
 	LLRect old_rect = getRect();
 
@@ -242,15 +242,15 @@ void LLPanelPick::setEditMode( BOOL edit_mode )
 	setRect(old_rect);
 
 	// time to restore data
-	setName(name);
-	setDesc(desc);
-	setLocation(location);
+	setPickName(name);
+	setPickDesc(desc);
+	setPickLocation(location);
 	mSnapshotCtrl->setImageAssetID(snapshot_id);
 
 	updateButtons();
 }
 
-void LLPanelPick::setName(std::string name)
+void LLPanelPick::setPickName(std::string name)
 {
 	if (mEditMode)
 	{
@@ -262,7 +262,7 @@ void LLPanelPick::setName(std::string name)
 	}
 }
 
-void LLPanelPick::setDesc(std::string desc)
+void LLPanelPick::setPickDesc(std::string desc)
 {
 	if (mEditMode)
 	{
@@ -274,22 +274,22 @@ void LLPanelPick::setDesc(std::string desc)
 	}
 }
 
-void LLPanelPick::setLocation(std::string location)
+void LLPanelPick::setPickLocation(std::string location)
 {
 	childSetWrappedText(XML_LOCATION, location);
 }
 
-std::string LLPanelPick::getName()
+std::string LLPanelPick::getPickName()
 {
 	return childGetValue(XML_NAME).asString();
 }
 
-std::string LLPanelPick::getDesc()
+std::string LLPanelPick::getPickDesc()
 {
 	return childGetValue(XML_DESC).asString();
 }
 
-std::string LLPanelPick::getLocation()
+std::string LLPanelPick::getPickLocation()
 {
 	return childGetValue(XML_LOCATION).asString();
 }
@@ -310,8 +310,8 @@ void LLPanelPick::sendUpdate()
 	//legacy var  need to be deleted
 	pick_data.top_pick = FALSE; 
 	pick_data.parcel_id = mParcelId;
-	pick_data.name = getName();
-	pick_data.desc = getDesc();
+	pick_data.name = getPickName();
+	pick_data.desc = getPickDesc();
 	pick_data.snapshot_id = mSnapshotCtrl->getImageAssetID();
 	pick_data.pos_global = mPosGlobal;
 	pick_data.sort_order = 0;
@@ -381,7 +381,7 @@ void LLPanelPick::onClickSet()
 	location_text.append(mSimName);
 	location_text.append(llformat(" (%d, %d, %d)", region_x, region_y, region_z));
 
-	setLocation(location_text);
+	setPickLocation(location_text);
 }
 
 // static
diff --git a/indra/newview/llpanelpick.h b/indra/newview/llpanelpick.h
index fd07d9ef91a2ed00ad622b2903bb786b1a7696d5..db943f4eafde2b6ba1284b436b0f76ca10f85d17 100644
--- a/indra/newview/llpanelpick.h
+++ b/indra/newview/llpanelpick.h
@@ -82,13 +82,13 @@ class LLPanelPick : public LLPanel, public LLAvatarPropertiesObserver
 
 protected:
 
-	void setName(std::string name);
-	void setDesc(std::string desc);
-	void setLocation(std::string location);
+	void setPickName(std::string name);
+	void setPickDesc(std::string desc);
+	void setPickLocation(std::string location);
 
-	std::string getName();
-	std::string getDesc();
-	std::string getLocation();
+	std::string getPickName();
+	std::string getPickDesc();
+	std::string getPickLocation();
 
 	void sendUpdate();
 	void requestData();
diff --git a/indra/newview/llspatialpartition.cpp b/indra/newview/llspatialpartition.cpp
index e45e1feffd633a26a3b137c26c85bd6f48cd0ac9..c4364ed6cab0d79883d6bc62942a1433b0ccd9bd 100644
--- a/indra/newview/llspatialpartition.cpp
+++ b/indra/newview/llspatialpartition.cpp
@@ -826,7 +826,7 @@ class LLSpatialSetStateDiff : public LLSpatialSetState
 public:
 	LLSpatialSetStateDiff(U32 state) : LLSpatialSetState(state) { }
 
-	virtual void traverse(const LLSpatialGroup::TreeNode* n)
+	virtual void traverse(const LLSpatialGroup::OctreeNode* n)
 	{
 		LLSpatialGroup* group = (LLSpatialGroup*) n->getListener(0);
 		
@@ -885,7 +885,7 @@ class LLSpatialClearStateDiff : public LLSpatialClearState
 public:
 	LLSpatialClearStateDiff(U32 state) : LLSpatialClearState(state) { }
 
-	virtual void traverse(const LLSpatialGroup::TreeNode* n)
+	virtual void traverse(const LLSpatialGroup::OctreeNode* n)
 	{
 		LLSpatialGroup* group = (LLSpatialGroup*) n->getListener(0);
 		
@@ -1498,7 +1498,7 @@ class LLOctreeCull : public LLSpatialGroup::OctreeTraveler
 		return false;
 	}
 	
-	virtual void traverse(const LLSpatialGroup::TreeNode* n)
+	virtual void traverse(const LLSpatialGroup::OctreeNode* n)
 	{
 		LLSpatialGroup* group = (LLSpatialGroup*) n->getListener(0);
 
diff --git a/indra/newview/llviewerassetstorage.h b/indra/newview/llviewerassetstorage.h
index 15c11c70255a8591303d47783a2eb6a3bba16fcc..512b590a1ba4f6377e23058943c6838836adaec7 100644
--- a/indra/newview/llviewerassetstorage.h
+++ b/indra/newview/llviewerassetstorage.h
@@ -47,6 +47,7 @@ class LLViewerAssetStorage : public LLAssetStorage
 	LLViewerAssetStorage(LLMessageSystem *msg, LLXferManager *xfer,
 				   LLVFS *vfs);
 
+	using LLAssetStorage::storeAssetData;
 	virtual void storeAssetData(
 		const LLTransactionID& tid,
 		LLAssetType::EType atype,
diff --git a/indra/newview/llviewerjointmesh.h b/indra/newview/llviewerjointmesh.h
index 02485027893e59a1e33b3dbd52833e9c4415bf93..543679c44bd41a47f63584e1667c22cd76a0bb48 100644
--- a/indra/newview/llviewerjointmesh.h
+++ b/indra/newview/llviewerjointmesh.h
@@ -148,7 +148,7 @@ class LLViewerJointMesh : public LLViewerJoint
 
 	void setIsTransparent(BOOL is_transparent) { mIsTransparent = is_transparent; }
 
-	/*virtual*/ BOOL isAnimatable() { return FALSE; }
+	/*virtual*/ BOOL isAnimatable() const { return FALSE; }
 	
 	static void updateVectorize(); // Update globals when settings variables change
 	
diff --git a/indra/newview/llwatchdog.h b/indra/newview/llwatchdog.h
index ed7d5bdcfb161ffd4be59ddf997ccc7982240271..79398c434a02aa23a1ed7661a1fe8cfc9780808b 100644
--- a/indra/newview/llwatchdog.h
+++ b/indra/newview/llwatchdog.h
@@ -64,9 +64,10 @@ class LLWatchdogTimeout : public LLWatchdogEntry
 
 	/* virtual */ bool isAlive() const;
 	/* virtual */ void reset();
-	/* virtual */ void start(const std::string& state); 
+	/* virtual */ void start() { start(""); }
 	/* virtual */ void stop();
 
+	void start(const std::string& state); 
 	void setTimeout(F32 d);
 	void ping(const std::string& state);
 	const std::string& getState() {return mPingState; }
diff --git a/indra/test/llhttpclient_tut.cpp b/indra/test/llhttpclient_tut.cpp
index d1bf8ae5a91d054deade96764325e7a36f19e171..c541997e89eb9f5a68fde69ebf7702ca23705f61 100644
--- a/indra/test/llhttpclient_tut.cpp
+++ b/indra/test/llhttpclient_tut.cpp
@@ -59,8 +59,8 @@ namespace tut
 	class LLSDStorageNode : public LLHTTPNode
 	{
 	public:
-		LLSD get() const					{ return storage; }
-		LLSD put(const LLSD& value) const	{ storage = value; return LLSD(); }
+		LLSD simpleGet() const					{ return storage; }
+		LLSD simplePut(const LLSD& value) const	{ storage = value; return LLSD(); }
 	};
 
 	class ErrorNode : public LLHTTPNode
diff --git a/install.xml b/install.xml
index 6be876bc0964051704a285dd6ff9552581dc1fb3..dd5019150753c996bb5ca750d7bc27565232b05d 100644
--- a/install.xml
+++ b/install.xml
@@ -207,30 +207,30 @@
           <key>darwin</key>
           <map>
             <key>md5sum</key>
-            <string>081ef195a856c708cc473c4421b4b290</string>
+            <string>6be5bca5f4b031b1b79824da5cfd4ddf</string>
             <key>url</key>
-            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-darwin-20090223.tar.bz2</uri>
+            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-darwin-20090702a.tar.bz2</uri>
           </map>
           <key>linux</key>
           <map>
             <key>md5sum</key>
-            <string>b516a8576ecad0f957db7fc2cd972aac</string>
+            <string>113ca35011c916660a8aa55bc1ca462a</string>
             <key>url</key>
-            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-linux-20090223a.tar.bz2</uri>
+            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-linux-20090702.tar.bz2</uri>
           </map>
           <key>linux64</key>
           <map>
             <key>md5sum</key>
-            <string>6db62bb7f141b3a1b3107e1f9aad0eb0</string>
+            <string>270f64d3aa416cec96f445d58dfcfb6d</string>
             <key>url</key>
-            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-linux64-20090223a.tar.bz2</uri>
+            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-linux64-20090702.tar.bz2</uri>
           </map>
           <key>windows</key>
           <map>
             <key>md5sum</key>
-            <string>3b56fe9e8d2975c612639d0a5370ffe7</string>
+            <string>44d4fdf386742b94419c93ad2baa1616</string>
             <key>url</key>
-            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-windows-20090225.tar.bz2</uri>
+            <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/boost-1.34.1-windows-20090702.tar.bz2</uri>
           </map>
         </map>
       </map>