From: Bimba Shrestha Date: Fri, 31 Jan 2020 18:47:17 +0000 (-0800) Subject: Adding static assert and using it in cli X-Git-Tag: v1.4.5^2~103^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=38d010eea048aed776fcea07e958883b18cea174;p=thirdparty%2Fzstd.git Adding static assert and using it in cli --- diff --git a/programs/zstdcli.c b/programs/zstdcli.c index fed0a179f..01be5fdc1 100644 --- a/programs/zstdcli.c +++ b/programs/zstdcli.c @@ -544,7 +544,10 @@ static int init_cLevel(void) { return ZSTDCLI_CLEVEL_DEFAULT; } +#define ZSTD_CLI_STATIC_ASSERT(c) (void)sizeof(char[(c) ? 1 : -1]) + #define ZSTD_NB_STRATEGIES ZSTD_STRATEGY_MAX + static const char* ZSTD_strategyMap[ZSTD_NB_STRATEGIES + 1] = { "", "ZSTD_fast", "ZSTD_dfast", "ZSTD_greedy", "ZSTD_lazy", "ZSTD_lazy2", "ZSTD_btlazy2", "ZSTD_btopt", "ZSTD_btultra", "ZSTD_btultra2"}; @@ -1227,6 +1230,8 @@ int main(int const argCount, const char* argv[]) if (adaptMin > cLevel) cLevel = adaptMin; if (adaptMax < cLevel) cLevel = adaptMax; + ZSTD_CLI_STATIC_ASSERT(ZSTD_NB_STRATEGIES >= ZSTD_STRATEGY_MIN && ZSTD_NB_STRATEGIES <= ZSTD_STRATEGY_MAX); + if (showDefaultCParams) { size_t fileNb; for (fileNb = 0; fileNb < (size_t)filenames->tableSize; fileNb++) {