Commits
Konstantin Varlamov authored and GitHub committed dbca369b0ef
Fix CMake build with Clang 10 (#3972) The as-of-yet-unreleased Clang 10 adds some new warnings which make the CMake build fail (due to `-Werror`): * BoringSSL build now fails because some of its C code contains fallthroughs in switch statements that aren't properly annotated. This wasn't an issue before because previous versions of Clang ignored `-Wimplicit-fallthrough` in C mode; * serializer test contains an expression that produces the following warning: ``` /src/firebase-ios-sdk/Firestore/core/test/firebase/firestore/remote/serializer_test.cc:446:29: error: implicit conversion from 'std::__1::numeric_limits<long>::type' (aka 'long') to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror, -Wimplicit-int-float-conversion] ``` Fixes: * upgrade the version of BoringSSL used to the latest master. There's no particular reason to choose this commit, other than it happens to be the latest. The actual fixes we need are [this](https://github.com/google/boringssl/commit/05cd93068b0a553afc48f69acbceae10c6a17593) and [this](https://github.com/google/boringssl/commit/fbebe833b180a1a0685803c59bba38916826dd2b); * apply `static_cast` to the serializer test. Also, because the cast produces a different value, add a couple of additional values to test. The breakage was discovered thanks to the fuzz build (which already uses Clang 10 from trunk).