Updating to the current protobuf version caused the following build errors in Chromium when using Clang on Windows: ..\..\third_party\protobuf\src\google/protobuf/stubs/fastmem.h(67,43) : error: equality comparison with extraneous parentheses [-Werror,-Wparentheses-equality] if (GOOGLE_PREDICT_FALSE(n_rounded_down == 0)) { // n <= 7 ~~~~~~~~~~~~~~~^~~~ The problem is that on Windows, GOOGLE_PREDICT_FALSE is #defined to nothing, so the code expands to 'if ((n_rounded_down == 0))', which Clang warns about. Clang would not have warned if the extra parentheses came from the macro, but in this case they don't because the macro is just dropped. Fix this by making the macros behave as an identity function instead of just getting dropped. This is closer to what these macros look like in stubs/port.h internally.pull/746/head
parent
f6b05f78a4
commit
fcf1b57579
1 changed files with 2 additions and 2 deletions
Loading…
Reference in new issue