diff options
author | David Benjamin <davidben@chromium.org> | 2015-02-11 23:12:05 +0300 |
---|---|---|
committer | Adam Langley <agl@google.com> | 2015-02-12 02:13:52 +0300 |
commit | 3673be7cb6611b373b9b1200999827a9b8df37a1 (patch) | |
tree | dc207e56452c1371848be8bd92a1f01a1659d8fa | |
parent | 689be0f4b7289ed633dee1d9861f13d80e65c96d (diff) |
Fix standalone build on Win64.
Win64 fires significantly more warnings than Win32. Also some recent
changes made it grumpy.
(We might want to reconsider enabling all of MSVC's warnings. Given the sorts
of warnings some of these are, I'm not sure MSVC's version of -Wall -Werror is
actually tenable. Plus, diverging from the Chromium build, especially before
the bots are ready, is going to break pretty readily.)
Change-Id: If3b8feccf910ceab4a233b0731e7624d7da46f87
Reviewed-on: https://boringssl-review.googlesource.com/3420
Reviewed-by: Adam Langley <agl@google.com>
-rw-r--r-- | CMakeLists.txt | 11 | ||||
-rw-r--r-- | crypto/bn/internal.h | 2 | ||||
-rw-r--r-- | ssl/ssl_test.c | 2 |
3 files changed, 14 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 9a61495f..c0bdc73e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,12 +11,19 @@ elseif(MSVC) "C4127" # conditional expression is constant "C4200" # nonstandard extension used : zero-sized array in # struct/union. + "C4210" # nonstandard extension used : function given file scope "C4242" # 'function' : conversion from 'int' to 'uint8_t', # possible loss of data "C4244" # 'function' : conversion from 'int' to 'uint8_t', # possible loss of data "C4245" # 'initializing' : conversion from 'long' to # 'unsigned long', signed/unsigned mismatch + "C4267" # conversion from 'size_t' to 'int', possible loss of data + "C4311" # 'type cast' : pointer truncation from 'uint8_t *' to 'long' + # TODO(davidben): Fix the s3_pkt.c's alignment code to avoid this. + "C4371" # layout of class may have changed from a previous version of the + # compiler due to better packing of member '...' + "C4388" # signed/unsigned mismatch "C4296" # '>=' : expression is always true "C4350" # behavior change: 'std::_Wrap_alloc...' "C4365" # '=' : conversion from 'size_t' to 'int', @@ -29,6 +36,10 @@ elseif(MSVC) # side-effect" caused by FD_* macros. "C4610" # struct 'argument' can never be instantiated - user defined # constructor required. + "C4625" # copy constructor could not be generated because a base class + # copy constructor is inaccessible or deleted + "C4626" # assignment operator could not be generated because a base class + # assignment operator is inaccessible or deleted "C4701" # potentially uninitialized local variable 'mdlen' used "C4706" # assignment within conditional expression "C4710" # 'function': function not inlined diff --git a/crypto/bn/internal.h b/crypto/bn/internal.h index d421cf3a..f61b86e5 100644 --- a/crypto/bn/internal.h +++ b/crypto/bn/internal.h @@ -128,7 +128,9 @@ #include <inttypes.h> #if defined(OPENSSL_X86_64) && defined(_MSC_VER) && _MSC_VER >= 1400 +#pragma warning(push, 3) #include <intrin.h> +#pragma warning(pop) #pragma intrinsic(__umulh, _umul128) #endif diff --git a/ssl/ssl_test.c b/ssl/ssl_test.c index de0f8ed3..3748d09b 100644 --- a/ssl/ssl_test.c +++ b/ssl/ssl_test.c @@ -495,7 +495,7 @@ static const CIPHER_RFC_NAME_TEST kCipherRFCNameTests[] = { { "ECDHE-PSK-WITH-AES-128-GCM-SHA256", "TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256" }, }; -static int test_cipher_get_rfc_name() { +static int test_cipher_get_rfc_name(void) { size_t i; for (i = 0; i < sizeof(kCipherRFCNameTests) / sizeof(kCipherRFCNameTests[0]); |