CC=gcc
-CFLAGS=-Wall -Wextra -g
+CFLAGS=-Wall -Wextra -Werror -g
 TARGET_SERVER=roguelike-server
 TARGET_CLIENT=roguelike-client
 SRCDIR=src
 
         || match_func(c, &f, 'm', draw_win_map)
         || match_func(c, &f, '0', draw_win_keybindings_global)
         || match_func(c, &f, '1', draw_win_keybindings_winconf_geometry)
-        || match_func(c, &f, '2', draw_win_keybindings_winconf_keybindings));
+        || match_func(c, &f, '2', draw_win_keybindings_winconf_keybindings))
+    {
+        ;
+    }
     return f;
 }
 
     /* Only resize .v_screen if the rightmost window column has changed. */
     char * err_s = "refit_v_screen() grows virtual screen beyond legal sizes.";
     char * err_m = "refit_v_screen() triggers memory alloc error in wresize().";
-    if (getmaxx(world.winDB.v_screen) + 1 != lastwcol)
+    if ((uint32_t) getmaxx(world.winDB.v_screen) + 1 != lastwcol)
     {
         uint8_t t = (lastwcol + 2 > UINT16_MAX);
         exit_err(t, err_s);
 
             }
             last_stop--;
         }
-        if (   (last_stop + 1) - last_nl == strlen(text)
+        if (   (last_stop + 1) - last_nl == (uint16_t) strlen(text)
             && 0 == strncmp(world.log + last_nl, text, strlen(text)))
         {
             text = ".";
         || match_dir(d, &dsc_dir, '7', "north-west")
         || match_dir(d, &dsc_dir, '9', "north-east")
         || match_dir(d, &dsc_dir, '1', "south-west")
-        || match_dir(d, &dsc_dir, '3', "south-east"));
+        || match_dir(d, &dsc_dir, '3', "south-east"))
+    {
+        ;
+    }
     char * dsc_move = "You move ";
     if (0 == passable)
     {