Ben Hutchings reports that gcc 4 gives an optimiser warning because
authorsimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Fri, 29 Jul 2005 11:34:02 +0000 (11:34 +0000)
committersimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Fri, 29 Jul 2005 11:34:02 +0000 (11:34 +0000)
it can't tell that one branch of a particular switch is always
taken. Adding a default clause with an automatic assertion failure
apparently fixes it.

git-svn-id: svn://svn.tartarus.org/sgt/puzzles@6148 cda61777-01e9-0310-a592-d414129be87e

rect.c

diff --git a/rect.c b/rect.c
index a7113af..439ae1f 100644 (file)
--- a/rect.c
+++ b/rect.c
@@ -1348,6 +1348,8 @@ static char *new_game_desc(game_params *params, random_state *rs,
                                 r1.x++;
                             r1.w--;
                             break;
+                          default:     /* should never happen */
+                            assert(!"invalid direction");
                         }
                         if (r1.h > 0 && r1.w > 0)
                             place_rect(params2, grid, r1);