@@ -127,13 +127,16 @@ void MurmurHash3_x86_32 ( const void * key, int len,
127
127
128
128
uint32_t k1 = 0 ;
129
129
130
+ #pragma GCC diagnostic push
131
+ #pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
130
132
switch (len & 3 )
131
133
{
132
134
case 3 : k1 ^= tail [2 ] << 16 ;
133
135
case 2 : k1 ^= tail [1 ] << 8 ;
134
136
case 1 : k1 ^= tail [0 ];
135
137
k1 *= c1 ; k1 = ROTL32 (k1 ,15 ); k1 *= c2 ; h1 ^= k1 ;
136
138
};
139
+ #pragma GCC diagnostic pop
137
140
138
141
//----------
139
142
// finalization
@@ -202,6 +205,8 @@ void MurmurHash3_x86_128 ( const void * key, const int len,
202
205
uint32_t k3 = 0 ;
203
206
uint32_t k4 = 0 ;
204
207
208
+ #pragma GCC diagnostic push
209
+ #pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
205
210
switch (len & 15 )
206
211
{
207
212
case 15 : k4 ^= tail [14 ] << 16 ;
@@ -227,6 +232,7 @@ void MurmurHash3_x86_128 ( const void * key, const int len,
227
232
case 1 : k1 ^= tail [ 0 ] << 0 ;
228
233
k1 *= c1 ; k1 = ROTL32 (k1 ,15 ); k1 *= c2 ; h1 ^= k1 ;
229
234
};
235
+ #pragma GCC diagnostic pop
230
236
231
237
//----------
232
238
// finalization
@@ -291,6 +297,8 @@ void MurmurHash3_x64_128 ( const void * key, const int len,
291
297
uint64_t k1 = 0 ;
292
298
uint64_t k2 = 0 ;
293
299
300
+ #pragma GCC diagnostic push
301
+ #pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
294
302
switch (len & 15 )
295
303
{
296
304
case 15 : k2 ^= (uint64_t )(tail [14 ]) << 48 ;
@@ -312,6 +320,7 @@ void MurmurHash3_x64_128 ( const void * key, const int len,
312
320
case 1 : k1 ^= (uint64_t )(tail [ 0 ]) << 0 ;
313
321
k1 *= c1 ; k1 = ROTL64 (k1 ,31 ); k1 *= c2 ; h1 ^= k1 ;
314
322
};
323
+ #pragma GCC diagnostic pop
315
324
316
325
//----------
317
326
// finalization
0 commit comments