From 54e03b8693ccac182fd5d05473e01ecb37c281c8 Mon Sep 17 00:00:00 2001 From: marxin Date: Mon, 6 Jul 2020 20:09:15 +0800 Subject: [PATCH] Add FALLTHRU comment to handle GCC7 warnings. Upstream-Status: Backport [1] [1] https://github.com/json-c/json-c/commit/014924ba899f659917bb64392bbff7d3c803afc2 Signed-off-by: Jackie Huang --- json_object.c | 4 +++- json_tokener.c | 1 + linkhash.c | 22 +++++++++++----------- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/json_object.c b/json_object.c index f2b5ce0..5e867d0 100644 --- a/json_object.c +++ b/json_object.c @@ -545,7 +545,8 @@ int64_t json_object_get_int64(struct json_object *jso) case json_type_boolean: return jso->o.c_boolean; case json_type_string: - if (json_parse_int64(jso->o.c_string.str, &cint) == 0) return cint; + if (json_parse_int64(jso->o.c_string.str, &cint) == 0) return cint; + /* FALLTHRU */ default: return 0; } @@ -606,6 +607,7 @@ double json_object_get_double(struct json_object *jso) return jso->o.c_boolean; case json_type_string: if(sscanf(jso->o.c_string.str, "%lf", &cdouble) == 1) return cdouble; + /* FALLTHRU */ default: return 0.0; } diff --git a/json_tokener.c b/json_tokener.c index 7b3f3ec..54aa4f7 100644 --- a/json_tokener.c +++ b/json_tokener.c @@ -341,6 +341,7 @@ struct json_object* json_tokener_parse_ex(struct json_tokener *tok, tok->err = json_tokener_error_parse_unexpected; goto out; } + /* FALLTHRU */ break; case json_tokener_state_finish: diff --git a/linkhash.c b/linkhash.c index 712c387..74e3b0f 100644 --- a/linkhash.c +++ b/linkhash.c @@ -376,17 +376,17 @@ static uint32_t hashlittle( const void *key, size_t length, uint32_t initval) /*-------------------------------- 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; /* FALLTHRU */ + case 11: c+=((uint32_t)k[10])<<16; /* FALLTHRU */ + case 10: c+=((uint32_t)k[9])<<8; /* FALLTHRU */ + case 9 : c+=k[8]; /* FALLTHRU */ + case 8 : b+=((uint32_t)k[7])<<24; /* FALLTHRU */ + case 7 : b+=((uint32_t)k[6])<<16; /* FALLTHRU */ + case 6 : b+=((uint32_t)k[5])<<8; /* FALLTHRU */ + case 5 : b+=k[4]; /* FALLTHRU */ + case 4 : a+=((uint32_t)k[3])<<24; /* FALLTHRU */ + case 3 : a+=((uint32_t)k[2])<<16; /* FALLTHRU */ + case 2 : a+=((uint32_t)k[1])<<8; /* FALLTHRU */ case 1 : a+=k[0]; break; case 0 : return c; -- 2.7.4