]> git.neil.brown.name Git - wiggle.git/commitdiff
hash.c: add /* fallthrough markers */
authorNeilBrown <neil@brown.name>
Thu, 28 Sep 2017 12:29:12 +0000 (22:29 +1000)
committerNeilBrown <neil@brown.name>
Thu, 28 Sep 2017 12:29:12 +0000 (22:29 +1000)
Recent gcc warns about case fall-through, so tell it not to.

Signed-off-by: NeilBrown <neil@brown.name>
ccan/hash/hash.c

index 59c4d24b3b989013a6ef7004f99e62151dc6ebfc..2659b92235b50058a1cdb6474dc1f9b6258fb3e4 100644 (file)
@@ -209,10 +209,10 @@ uint32_t        initval)         /* the previous hash, or an arbitrary value */
   /*------------------------------------------- handle the last 3 uint32_t's */
   switch(length)                     /* all the case statements fall through */
   { 
-  case 3 : c+=k[2];
-  case 2 : b+=k[1];
+  case 3 : c+=k[2]; /* fallthrough */
+  case 2 : b+=k[1]; /* fallthrough */
   case 1 : a+=k[0];
-    final(a,b,c);
+    final(a,b,c); /* fallthrough */
   case 0:     /* case 0: nothing left to add */
     break;
   }
@@ -397,17 +397,17 @@ static uint32_t hashlittle( const void *key, size_t length, uint32_t *val2 )
     /*-------------------------------- last block: affect all 32 bits of (c) */
     switch(length)                   /* all the case statements fall through */
     {
-    case 12: c+=((uint32_t)k[11])<<24;
-    case 11: c+=((uint32_t)k[10])<<16;
-    case 10: c+=((uint32_t)k[9])<<8;
-    case 9 : c+=k[8];
-    case 8 : b+=((uint32_t)k[7])<<24;
-    case 7 : b+=((uint32_t)k[6])<<16;
-    case 6 : b+=((uint32_t)k[5])<<8;
-    case 5 : b+=k[4];
-    case 4 : a+=((uint32_t)k[3])<<24;
-    case 3 : a+=((uint32_t)k[2])<<16;
-    case 2 : a+=((uint32_t)k[1])<<8;
+    case 12: c+=((uint32_t)k[11])<<24; /* fallthrough */
+    case 11: c+=((uint32_t)k[10])<<16; /* fallthrough */
+    case 10: c+=((uint32_t)k[9])<<8;   /* fallthrough */
+    case 9 : c+=k[8];                  /* fallthrough */
+    case 8 : b+=((uint32_t)k[7])<<24;  /* fallthrough */
+    case 7 : b+=((uint32_t)k[6])<<16;  /* fallthrough */
+    case 6 : b+=((uint32_t)k[5])<<8;   /* fallthrough */
+    case 5 : b+=k[4];                  /* fallthrough */
+    case 4 : a+=((uint32_t)k[3])<<24;  /* fallthrough */
+    case 3 : a+=((uint32_t)k[2])<<16;  /* fallthrough */
+    case 2 : a+=((uint32_t)k[1])<<8;   /* fallthrough */
     case 1 : a+=k[0];
              break;
     case 0 : return c;
@@ -527,17 +527,17 @@ static uint32_t hashbig( const void *key, size_t length, uint32_t *val2)
     /*-------------------------------- last block: affect all 32 bits of (c) */
     switch(length)                   /* all the case statements fall through */
     {
-    case 12: c+=k[11];
-    case 11: c+=((uint32_t)k[10])<<8;
-    case 10: c+=((uint32_t)k[9])<<16;
-    case 9 : c+=((uint32_t)k[8])<<24;
-    case 8 : b+=k[7];
-    case 7 : b+=((uint32_t)k[6])<<8;
-    case 6 : b+=((uint32_t)k[5])<<16;
-    case 5 : b+=((uint32_t)k[4])<<24;
-    case 4 : a+=k[3];
-    case 3 : a+=((uint32_t)k[2])<<8;
-    case 2 : a+=((uint32_t)k[1])<<16;
+    case 12: c+=k[11];                 /* fallthrough */
+    case 11: c+=((uint32_t)k[10])<<8;  /* fallthrough */
+    case 10: c+=((uint32_t)k[9])<<16;  /* fallthrough */
+    case 9 : c+=((uint32_t)k[8])<<24;  /* fallthrough */
+    case 8 : b+=k[7];                  /* fallthrough */
+    case 7 : b+=((uint32_t)k[6])<<8;   /* fallthrough */
+    case 6 : b+=((uint32_t)k[5])<<16;  /* fallthrough */
+    case 5 : b+=((uint32_t)k[4])<<24;  /* fallthrough */
+    case 4 : a+=k[3];                  /* fallthrough */
+    case 3 : a+=((uint32_t)k[2])<<8;   /* fallthrough */
+    case 2 : a+=((uint32_t)k[1])<<16;  /* fallthrough */
     case 1 : a+=((uint32_t)k[0])<<24;
              break;
     case 0 : return c;
@@ -611,9 +611,9 @@ uint64_t hash64_stable_32(const void *key, size_t n, uint64_t base)
        }
        switch (n) {
        case 2:
-               b += (uint32_t)k[1];
+               b += (uint32_t)k[1];  /* fallthrough */
        case 1:
-               a += (uint32_t)k[0];
+               a += (uint32_t)k[0]; 
                break;
        case 0:
                return c;
@@ -642,13 +642,13 @@ uint64_t hash64_stable_16(const void *key, size_t n, uint64_t base)
 
        switch (n) {
        case 5:
-               c += (uint32_t)k[4];
+               c += (uint32_t)k[4];         /* fallthrough */
        case 4:
-               b += ((uint32_t)k[3] << 16);
+               b += ((uint32_t)k[3] << 16); /* fallthrough */
        case 3:
-               b += (uint32_t)k[2];
+               b += (uint32_t)k[2];         /* fallthrough */
        case 2:
-               a += ((uint32_t)k[1] << 16);
+               a += ((uint32_t)k[1] << 16); /* fallthrough */
        case 1:
                a += (uint32_t)k[0];
                break;