diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 98a4f4e6d8fe7ef96a5cf113c538582ee6362b09..48517804c96d7b4661de7718aa774d4e9c853cac 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -24,12 +24,6 @@
  * $/LicenseInfo$
  */
 
-#if LL_MSVC
-// disable warning about boost::lexical_cast returning uninitialized data
-// when it fails to parse the string
-#pragma warning (disable:4701)
-#endif
-
 #include "linden_common.h"
 
 #include "llavatarappearance.h"
@@ -46,12 +40,6 @@
 #include "boost/bind.hpp"
 #include "boost/tokenizer.hpp"
 
-
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 #include <boost/lexical_cast.hpp>
 
 using namespace LLAvatarAppearanceDefines;
diff --git a/indra/llcommon/llevents.h b/indra/llcommon/llevents.h
index 186089f5b38a21333a87da810e019b2b71fdd5b9..2ccc8c680e6c79659a4ca84c73c9c3c149926bc4 100644
--- a/indra/llcommon/llevents.h
+++ b/indra/llcommon/llevents.h
@@ -38,16 +38,8 @@
 #include <vector>
 #include <deque>
 #include <functional>
-#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/signals2.hpp>
 #include <boost/bind.hpp>
 #include <boost/shared_ptr.hpp>
 #include <boost/enable_shared_from_this.hpp>
diff --git a/indra/llcommon/llleap.cpp b/indra/llcommon/llleap.cpp
index 7f1fc4b84f0472e0014d44a5eafdbcb9c62309e5..fdefe9ba0fdd68ec779aaaa767d0881bd568dfed 100644
--- a/indra/llcommon/llleap.cpp
+++ b/indra/llcommon/llleap.cpp
@@ -34,10 +34,6 @@
 #include "llleaplistener.h"
 #include "llexception.h"
 
-#if LL_MSVC
-#pragma warning (disable : 4355) // 'this' used in initializer list: yes, intentionally
-#endif
-
 class LLLeapImpl: public LLLeap
 {
     LOG_CLASS(LLLeap);
diff --git a/indra/llcommon/llstacktrace.cpp b/indra/llcommon/llstacktrace.cpp
index 8a136f0f6c8bce49bfe60cb82f8ff4313ea1098b..a2a1198f5a312ef17ddd3e9aaeeba7a04f22fb05 100644
--- a/indra/llcommon/llstacktrace.cpp
+++ b/indra/llcommon/llstacktrace.cpp
@@ -33,10 +33,7 @@
 #include <sstream>
 
 #include "llwin32headerslean.h"
-#pragma warning (push)
-#pragma warning (disable:4091) // a microsoft header has warnings. Very nice.
 #include <dbghelp.h>
-#pragma warning (pop)
 
 typedef USHORT NTAPI RtlCaptureStackBackTrace_Function(
     IN ULONG frames_to_skip,
diff --git a/indra/llcommon/llsys.cpp b/indra/llcommon/llsys.cpp
index 61922da380d2ca4eafb78bba7ddf93ac6fce4367..3b9e68a623494035aca4ff58e3e0b551ec07fb54 100644
--- a/indra/llcommon/llsys.cpp
+++ b/indra/llcommon/llsys.cpp
@@ -24,10 +24,6 @@
  * $/LicenseInfo$
  */
 
-#if LL_WINDOWS
-#pragma warning (disable : 4355) // 'this' used in initializer list: yes, intentionally
-#endif
-
 #include "linden_common.h"
 
 #include "llsys.h"
diff --git a/indra/llmath/v3color.h b/indra/llmath/v3color.h
index 43a632408c7fc05ddec03bf0ad266c800855a7cb..8f65946cc8cc4b4e000914e3551d663988ddfb86 100644
--- a/indra/llmath/v3color.h
+++ b/indra/llmath/v3color.h
@@ -198,10 +198,6 @@ inline LLColor3::LLColor3(const F32 *vec)
 	mV[VZ] = vec[VZ];
 }
 
-#if LL_WINDOWS
-# pragma warning( disable : 4996 ) // strncpy teh sux0r
-#endif
-
 inline LLColor3::LLColor3(const char* color_string) // takes a string of format "RRGGBB" where RR is hex 00..FF 
 {
 	if (strlen(color_string) <  6)		/* Flawfinder: ignore */
diff --git a/indra/llxml/llcontrol.h b/indra/llxml/llcontrol.h
index 7264d0b7497ba52ed449b32d13d89bf0bc02b16e..5029bc7c80106074b1c32313244f08c767b7459a 100644
--- a/indra/llxml/llcontrol.h
+++ b/indra/llxml/llcontrol.h
@@ -39,32 +39,8 @@
 #include <vector>
 #include <string_view>
 
-// *NOTE: boost::visit_each<> generates warning 4675 on .net 2003
-// Disable the warning for the boost includes.
-#if LL_WINDOWS
-# if (_MSC_VER >= 1300 && _MSC_VER < 1400)
-#   pragma warning(push)
-#   pragma warning( disable : 4675 )
-# endif
-#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)
-#   pragma warning(pop)
-# endif
-#endif
 
 class LLVector3;
 class LLVector3d;
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index 5d1b338cd3693019bc152fedaf2b730cde13f9c1..c50496f52d8a3f6b092fe484663cc8ecf9dc0540 100644
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -68,11 +68,6 @@
 
 #include "llavatarpropertiesprocessor.h"
 
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 namespace 
 {
     const S32   BAKE_RETRY_MAX_COUNT = 5;
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 8a568482e3824f743ee8ee06988b545df1bbd68e..b0c90221c728beb8f3629dd04dcd86ff61c362d0 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -269,11 +269,6 @@
 #include "glib.h"
 #endif // (LL_LINUX || LL_SOLARIS) && LL_GTK
 
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 static LLAppViewerListener sAppViewerListener(LLAppViewer::instance);
 
 ////// Windows-specific includes to the bottom - nasty defines in these pollute the preprocessor
diff --git a/indra/newview/llcallingcard.cpp b/indra/newview/llcallingcard.cpp
index 85ef0bebc17e75a95f868a36f580f7930714d13e..dc2678cc7caa81591c6a78d41e8073d0fc83331f 100644
--- a/indra/newview/llcallingcard.cpp
+++ b/indra/newview/llcallingcard.cpp
@@ -26,10 +26,6 @@
 
 #include "llviewerprecompiledheaders.h"
 
-#if LL_WINDOWS
-#pragma warning( disable : 4800 ) // performance warning in <functional>
-#endif
-
 #include "llcallingcard.h"
 
 #include <algorithm>
diff --git a/indra/newview/llfloaterbuycurrency.cpp b/indra/newview/llfloaterbuycurrency.cpp
index af5d1fc2f7f43ccc17b93a94c594c239847aa892..bdc6b454d6e2b20754e8303955a204469805bdad 100644
--- a/indra/newview/llfloaterbuycurrency.cpp
+++ b/indra/newview/llfloaterbuycurrency.cpp
@@ -82,13 +82,6 @@ LLFloater* LLFloaterBuyCurrency::buildFloater(const LLSD& key)
 	return floater;
 }
 
-#if LL_WINDOWS
-// passing 'this' during construction generates a warning. The callee
-// only uses the pointer to hold a reference to 'this' which is
-// already valid, so this call does the correct thing. Disable the
-// warning so that we can compile without generating a warning.
-#pragma warning(disable : 4355)
-#endif 
 LLFloaterBuyCurrencyUI::LLFloaterBuyCurrencyUI(const LLSD& key)
 :	LLFloater(key),
 	mChildren(*this),
diff --git a/indra/newview/llfloaterbuyland.cpp b/indra/newview/llfloaterbuyland.cpp
index 80d4ab01686caca4d64664329e3f51757f7ff573..cb219be340b7f3c17e685ae54b9b03dc2a7786a6 100644
--- a/indra/newview/llfloaterbuyland.cpp
+++ b/indra/newview/llfloaterbuyland.cpp
@@ -272,13 +272,6 @@ LLFloater* LLFloaterBuyLand::buildFloater(const LLSD& key)
 // LLFloaterBuyLandUI
 //----------------------------------------------------------------------------
 
-#if LL_WINDOWS
-// passing 'this' during construction generates a warning. The callee
-// only uses the pointer to hold a reference to 'this' which is
-// already valid, so this call does the correct thing. Disable the
-// warning so that we can compile without generating a warning.
-#pragma warning(disable : 4355)
-#endif 
 LLFloaterBuyLandUI::LLFloaterBuyLandUI(const LLSD& key)
 :	LLFloater(LLSD()),
 	mParcelSelectionObserver(this),
diff --git a/indra/newview/llfloatersellland.cpp b/indra/newview/llfloatersellland.cpp
index 19b5548b3f1c505e36b56ccf724bb1b2ca8cc468..6c08f9969cc275e807f923bf9561d315095cc072 100644
--- a/indra/newview/llfloatersellland.cpp
+++ b/indra/newview/llfloatersellland.cpp
@@ -120,13 +120,6 @@ LLFloater* LLFloaterSellLand::buildFloater(const LLSD& key)
 	return floater;
 }
 
-#if LL_WINDOWS
-// passing 'this' during construction generates a warning. The callee
-// only uses the pointer to hold a reference to 'this' which is
-// already valid, so this call does the correct thing. Disable the
-// warning so that we can compile without generating a warning.
-#pragma warning(disable : 4355)
-#endif 
 LLFloaterSellLandUI::LLFloaterSellLandUI(const LLSD& key)
 :	LLFloater(key),
 	mParcelSelectionObserver(this),
diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp
index c6d1a3b4a80803c0e8d4b7f7d23947b04fec9b87..9913a8ccb4f7e297ef55f54d015d83f10ca68cb3 100644
--- a/indra/newview/llgroupmgr.cpp
+++ b/indra/newview/llgroupmgr.cpp
@@ -54,19 +54,8 @@
 #include <boost/regex.hpp>
 #include "llcorehttputil.h"
 
-
-#if LL_MSVC
-#pragma warning(push)   
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 #include <boost/lexical_cast.hpp>
 
-#if LL_MSVC
-#pragma warning(pop)   // Restore all warnings to the previous state
-#endif
-
 const U32 MAX_CACHED_GROUPS = 20;
 
 //
diff --git a/indra/newview/llimprocessing.cpp b/indra/newview/llimprocessing.cpp
index 8dfd75b092efff4955c268938674f79162390b1b..2879764fadfcf3b90ff4df3761a82becfa99c68d 100644
--- a/indra/newview/llimprocessing.cpp
+++ b/indra/newview/llimprocessing.cpp
@@ -64,10 +64,6 @@
 
 #include <boost/regex.hpp>
 #include "boost/lexical_cast.hpp"
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
 
 extern void on_new_message(const LLSD& msg);
 
diff --git a/indra/newview/lllogchat.cpp b/indra/newview/lllogchat.cpp
index f2457aba697d7105e4a437750372269e794381d2..f2f311919d4a59497157a49a6caf0d857eb9f952 100644
--- a/indra/newview/lllogchat.cpp
+++ b/indra/newview/lllogchat.cpp
@@ -42,19 +42,7 @@
 #include <boost/algorithm/string/replace.hpp>
 #include <boost/regex.hpp>
 #include <boost/regex/v4/match_results.hpp>
-
-#if LL_MSVC
-#pragma warning(push)  
-// disable warning about boost::lexical_cast unreachable code
-// when it fails to parse the string
-#pragma warning (disable:4702)
-#endif
-
 #include <boost/date_time/gregorian/gregorian.hpp>
-#if LL_MSVC
-#pragma warning(pop)   // Restore all warnings to the previous state
-#endif
-
 #include <boost/date_time/posix_time/posix_time.hpp>
 #include <boost/date_time/local_time_adjustor.hpp>
 
diff --git a/indra/newview/llmediadataclient.cpp b/indra/newview/llmediadataclient.cpp
index 5a4f4c1a1851b307cc89c4ce7d5218e288e3e4c7..9174751b51c52772743418d7f74ba9466bf4765f 100644
--- a/indra/newview/llmediadataclient.cpp
+++ b/indra/newview/llmediadataclient.cpp
@@ -29,11 +29,6 @@
 #include "llmediadataclient.h"
 #include "llviewercontrol.h"
 
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 #include <algorithm>
 #include <boost/lexical_cast.hpp>
 
diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp
index bc7122dd65af59cb7d9e0741e83f2d2b31c0fe4e..fb982c75f98791df34d4ae6c64904596df555590 100644
--- a/indra/newview/llpanellogin.cpp
+++ b/indra/newview/llpanellogin.cpp
@@ -66,10 +66,6 @@
 #include "llglheaders.h"
 #include "llpanelloginlistener.h"
 
-#if LL_WINDOWS
-#pragma warning(disable: 4355)      // 'this' used in initializer list
-#endif  // LL_WINDOWS
-
 #include "llsdserialize.h"
 
 LLPanelLogin *LLPanelLogin::sInstance = NULL;
diff --git a/indra/newview/llparticipantlist.cpp b/indra/newview/llparticipantlist.cpp
index ee6893907e2af575b38ed185e61d3bd867db1276..bdaee694958ab8fffab0e958a577a182e6728d2e 100644
--- a/indra/newview/llparticipantlist.cpp
+++ b/indra/newview/llparticipantlist.cpp
@@ -34,9 +34,6 @@
 #include "llspeakers.h"
 
 //LLParticipantList retrieves add, clear and remove events and updates view accordingly 
-#if LL_MSVC
-#pragma warning (disable : 4355) // 'this' used in initializer list: yes, intentionally
-#endif
 
 // See EXT-4301.
 /**
diff --git a/indra/newview/llviewerprecompiledheaders.h b/indra/newview/llviewerprecompiledheaders.h
index e378c2448ace1b7e2c2795efd47b49d435ad31a0..1bd3c9443fba173806dc74620a917283dd5bb8e2 100644
--- a/indra/newview/llviewerprecompiledheaders.h
+++ b/indra/newview/llviewerprecompiledheaders.h
@@ -37,21 +37,12 @@
 
 #include "linden_common.h"
 
-// Work around stupid Microsoft STL warning
-#ifdef LL_WINDOWS
-#pragma warning (disable : 4702) // warning C4702: unreachable code
-#endif
-
 #include <algorithm>
 #include <deque>
 #include <functional>
 #include <map>
 #include <set>
 
-#ifdef LL_WINDOWS
-#pragma warning (3 : 4702) // we like level 3, not 4
-#endif
-
 // Library headers from llcommon project:
 #include "indra_constants.h"
 #include "llinitparam.h"
diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp
index 5c0ed66c1397d89fc0cd839d6af305746334b556..83e5d8b7b8589c1205b4463dfaa25e9fba2dfb0b 100644
--- a/indra/newview/llviewerregion.cpp
+++ b/indra/newview/llviewerregion.cpp
@@ -83,10 +83,6 @@
 #include "llsettingsdaycycle.h"
 #include "llviewerparcelmgr.h"
 
-#ifdef LL_WINDOWS
-	#pragma warning(disable:4355)
-#endif
-
 // When we receive a base grant of capabilities that has a different number of 
 // capabilities than the original base grant received for the region, print 
 // out the two lists of capabilities for analysis.
diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp
index 7557e34c2d972e7d95e3cbaae1a1303df9e120ae..aa46ab5dfb21be36e61a280eac9ab5585556f185 100644
--- a/indra/newview/llvoavatarself.cpp
+++ b/indra/newview/llvoavatarself.cpp
@@ -24,12 +24,6 @@
  * $/LicenseInfo$
  */
 
-#if LL_MSVC
-// disable warning about boost::lexical_cast returning uninitialized data
-// when it fails to parse the string
-#pragma warning (disable:4701)
-#endif
-
 #include "llviewerprecompiledheaders.h"
 
 #include "llvoavatarself.h"
@@ -77,11 +71,6 @@
 extern BOOL gTeleportDisplay;
 // [/SL:KB]
 
-#if LL_MSVC
-// disable boost::lexical_cast warning
-#pragma warning (disable:4702)
-#endif
-
 #include <boost/lexical_cast.hpp>
 
 LLPointer<LLVOAvatarSelf> gAgentAvatarp = NULL;
diff --git a/indra/newview/llwindebug.h b/indra/newview/llwindebug.h
index 5b1cbd0a4c358e96bd252c29ed690651c7413a75..7e904eea260cdacc047ba9864d32c7be6e842abf 100644
--- a/indra/newview/llwindebug.h
+++ b/indra/newview/llwindebug.h
@@ -30,10 +30,7 @@
 #include "stdtypes.h"
 #include "llwin32headerslean.h"
 
-#pragma warning (push)
-#pragma warning (disable:4091) // a microsoft header has warnings. Very nice.
 #include <dbghelp.h>
-#pragma warning (pop)
 
 class LLWinDebug final :
 	public LLSingleton<LLWinDebug>
diff --git a/indra/newview/llxmlrpclistener.cpp b/indra/newview/llxmlrpclistener.cpp
index bc20b2ac1dab623e6946fe695029c5b41420a72e..4460e317cdc6a7bedd421428f393460e4b1d200f 100644
--- a/indra/newview/llxmlrpclistener.cpp
+++ b/indra/newview/llxmlrpclistener.cpp
@@ -47,10 +47,6 @@
 #include "llxmlrpctransaction.h"
 #include "llsecapi.h"
 
-#if LL_WINDOWS
-#pragma warning (disable : 4355) // 'this' used in initializer list: yes, intentionally
-#endif
-
 template <typename STATUS>
 class StatusMapperBase
 {
diff --git a/indra/newview/rlvcommon.h b/indra/newview/rlvcommon.h
index 6bc9ef831a5b4bde6f480d877e3ca7eb0dac2d20..70d2ee873fbd0a6118ad58ac72dcefbe7f6c835c 100644
--- a/indra/newview/rlvcommon.h
+++ b/indra/newview/rlvcommon.h
@@ -22,14 +22,7 @@
 
 #include "rlvdefines.h"
 
-#ifdef LL_WINDOWS
-	#pragma warning (push)
-	#pragma warning (disable : 4702) // warning C4702: unreachable code
-#endif
 #include <boost/variant.hpp>
-#ifdef LL_WINDOWS
-	#pragma warning (pop)
-#endif
 
 // ============================================================================
 // Forward declarations
diff --git a/indra/viewer_components/login/lllogin.cpp b/indra/viewer_components/login/lllogin.cpp
index d485203fa18bcd8c974ef60c54decb118cb1aa95..4909526d4b6758627d8f007c5c5231b9c7cad989 100644
--- a/indra/viewer_components/login/lllogin.cpp
+++ b/indra/viewer_components/login/lllogin.cpp
@@ -28,13 +28,6 @@
 #include "llsd.h"
 #include "llsdutil.h"
 
-/*==========================================================================*|
-#ifdef LL_WINDOWS
-	// non-virtual destructor warning, boost::statechart does this intentionally.
-	#pragma warning (disable : 4265) 
-#endif
-|*==========================================================================*/
-
 #include "lllogin.h"
 
 #include <boost/bind.hpp>