| From 6d8326275802a2e6e61d3e99460af6891ae8362f Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Wed, 13 Jan 2016 23:10:19 -0800 |
| Subject: [puzzles][PATCH] palisade: Fix warnings with clang on arm |
| |
| ARM treats 'char' as unsigned char when 'char' is not qualified with |
| 'signed' or 'unsigned' explicitly. |
| |
| This results in warnings e.g. |
| |
| palisade.c:531:22: error: comparison of constant -1 with expression of |
| type 'clue' (aka 'char') is always false |
| [-Werror,-Wtautological-constant-out-of-range-compare] |
| if (clues[i] == EMPTY) continue; |
| |
| Therefore, typcast the contant to char in such places to be explicit |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| Upstream-Status: Submitted |
| |
| palisade.c | 10 +++++----- |
| 1 file changed, 5 insertions(+), 5 deletions(-) |
| |
| diff --git a/palisade.c b/palisade.c |
| index 984e616..2b9c25c 100644 |
| --- a/palisade.c |
| +++ b/palisade.c |
| @@ -295,11 +295,11 @@ static void solver_connected_clues_versus_region_size(solver_ctx *ctx) |
| * If p = q = 3 then the region has size exactly 2. */ |
| |
| for (i = 0; i < wh; ++i) { |
| - if (ctx->clues[i] == EMPTY) continue; |
| + if (ctx->clues[i] == (char)EMPTY) continue; |
| for (dir = 0; dir < 4; ++dir) { |
| int j = i + dx[dir] + w*dy[dir]; |
| if (disconnected(ctx, i, j, dir)) continue; |
| - if (ctx->clues[j] == EMPTY) continue; |
| + if (ctx->clues[j] == (char)EMPTY) continue; |
| if ((8 - ctx->clues[i] - ctx->clues[j] > ctx->params->k) || |
| (ctx->clues[i] == 3 && ctx->clues[j] == 3 && |
| ctx->params->k != 2)) |
| @@ -317,7 +317,7 @@ static int solver_number_exhausted(solver_ctx *ctx) |
| int changed = FALSE; |
| |
| for (i = 0; i < wh; ++i) { |
| - if (ctx->clues[i] == EMPTY) continue; |
| + if (ctx->clues[i] == (char)EMPTY) continue; |
| |
| if (bitcount[(ctx->borders[i] & BORDER_MASK)] == ctx->clues[i]) { |
| for (dir = 0; dir < 4; ++dir) { |
| @@ -528,7 +528,7 @@ static int is_solved(const game_params *params, clue *clues, |
| for (i = 0; i < wh; ++i) { |
| if (dsf[i] == UNVISITED) dfs_dsf(i, params->w, border, dsf, TRUE); |
| if (dsf_size(dsf, i) != k) goto error; |
| - if (clues[i] == EMPTY) continue; |
| + if (clues[i] == (char)EMPTY) continue; |
| if (clues[i] != bitcount[border[i] & BORDER_MASK]) goto error; |
| } |
| |
| @@ -674,7 +674,7 @@ static char *new_game_desc(const game_params *params, random_state *rs, |
| p = numbers; |
| r = 0; |
| for (i = 0; i < wh; ++i) { |
| - if (numbers[i] != EMPTY) { |
| + if (numbers[i] != (char)EMPTY) { |
| while (r) { |
| while (r > 26) { |
| *p++ = 'z'; |
| -- |
| 2.7.0 |
| |