summaryrefslogtreecommitdiffstats
path: root/src/build_log.cc
diff options
context:
space:
mode:
authorStefan Becker <chemobejk@gmail.com>2018-04-07 13:42:35 (GMT)
committerStefan Becker <chemobejk@gmail.com>2018-04-11 05:45:54 (GMT)
commit08ef815c7b55f28417b1a965eeab3640558d5f5a (patch)
tree6b71d8c69c973b6bbca9621c133623da79c7519b /src/build_log.cc
parentca041d88f4d610332aa48c801342edfafb622ccb (diff)
downloadNinja-08ef815c7b55f28417b1a965eeab3640558d5f5a.zip
Ninja-08ef815c7b55f28417b1a965eeab3640558d5f5a.tar.gz
Ninja-08ef815c7b55f28417b1a965eeab3640558d5f5a.tar.bz2
Add NINJA_FALLTHROUGH macro
Borrow macro implementation from OpenSSL code. Add the macro after each fallthrough switch case to indicate our intention to the compiler. This silences GCC -Wimplicit-fallthrough warnings, which is implied by GCC 7.x -Wextra.
Diffstat (limited to 'src/build_log.cc')
-rw-r--r--src/build_log.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/build_log.cc b/src/build_log.cc
index c75be95..2a65f9d 100644
--- a/src/build_log.cc
+++ b/src/build_log.cc
@@ -76,11 +76,17 @@ uint64_t MurmurHash64A(const void* key, size_t len) {
switch (len & 7)
{
case 7: h ^= uint64_t(data[6]) << 48;
+ NINJA_FALLTHROUGH;
case 6: h ^= uint64_t(data[5]) << 40;
+ NINJA_FALLTHROUGH;
case 5: h ^= uint64_t(data[4]) << 32;
+ NINJA_FALLTHROUGH;
case 4: h ^= uint64_t(data[3]) << 24;
+ NINJA_FALLTHROUGH;
case 3: h ^= uint64_t(data[2]) << 16;
+ NINJA_FALLTHROUGH;
case 2: h ^= uint64_t(data[1]) << 8;
+ NINJA_FALLTHROUGH;
case 1: h ^= uint64_t(data[0]);
h *= m;
};