Bug 1315143 - Disable warnings caused by including BasePrincipal.h r=Cykesiopka,keeler a=jcristau
authorJonathan Hao <jhao@mozilla.com>
Wed, 23 Nov 2016 14:56:20 +0800
changeset 352653 4d95d6b47637e3dd7a484d1a857acb33deba13f5
parent 352652 b045ef0bb77cd303ff439be352e349e8dc0c065d
child 352654 853ce442353a8cbd1cccb6969d94dc5cf0d4dafc
push id6795
push userjlund@mozilla.com
push dateMon, 23 Jan 2017 14:19:46 +0000
treeherdermozilla-esr52@76101b503191 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersCykesiopka, keeler, jcristau
bugs1315143
milestone52.0a2
Bug 1315143 - Disable warnings caused by including BasePrincipal.h r=Cykesiopka,keeler a=jcristau
security/certverifier/CertVerifier.h
--- a/security/certverifier/CertVerifier.h
+++ b/security/certverifier/CertVerifier.h
@@ -6,21 +6,38 @@
 
 #ifndef CertVerifier_h
 #define CertVerifier_h
 
 #include "BRNameMatchingPolicy.h"
 #include "CTVerifyResult.h"
 #include "OCSPCache.h"
 #include "ScopedNSSTypes.h"
-#include "mozilla/BasePrincipal.h"
 #include "mozilla/Telemetry.h"
 #include "mozilla/UniquePtr.h"
 #include "pkix/pkixtypes.h"
 
+#if defined(_MSC_VER)
+#pragma warning(push)
+// Silence "RootingAPI.h(718): warning C4324: 'js::DispatchWrapper<T>':
+// structure was padded due to alignment specifier with [ T=void * ]"
+#pragma warning(disable:4324)
+// Silence "Value.h(448): warning C4365: 'return': conversion from 'const
+// int32_t' to 'JS::Value::PayloadType', signed/unsigned mismatch"
+#pragma warning(disable:4365)
+// Silence "warning C5031: #pragma warning(pop): likely mismatch, popping
+// warning state pushed in different file 
+#pragma warning(disable:5031)
+#endif /* defined(_MSC_VER) */
+#include "mozilla/BasePrincipal.h"
+#if defined(_MSC_VER)
+#pragma warning(pop) /* popping the pragma in Vector.h */
+#pragma warning(pop) /* popping the pragma in this file */
+#endif /* defined(_MSC_VER) */
+
 namespace mozilla { namespace ct {
 
 // Including MultiLogCTVerifier.h would bring along all of its dependent
 // headers and force us to export them in moz.build. Just forward-declare
 // the class here instead.
 class MultiLogCTVerifier;
 
 } } // namespace mozilla::ct