Index: engine/cache.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/cache.c,v retrieving revision 1.16 diff -u -r1.16 cache.c --- engine/cache.c 10 Sep 2002 20:06:01 -0000 1.16 +++ engine/cache.c 31 Dec 2002 00:42:50 -0000 @@ -65,7 +65,7 @@ void read_result_dump(Read_result *result, FILE *outfile) { - fprintf(outfile, "Komaster %d (%d, %d) Routine %d, (%d, %d), depth: %d ", + fprintf(outfile, "Komaster %u (%d, %d) Routine %u, (%d, %d), depth: %u ", rr_get_komaster(*result), I(rr_get_kom_pos(*result)), J(rr_get_kom_pos(*result)), @@ -73,7 +73,7 @@ I(rr_get_str(*result)), J(rr_get_str(*result)), rr_get_stackp(*result)); - fprintf(outfile, "Result: %d %d, (%d, %d)\n", + fprintf(outfile, "Result: %u %u, (%d, %d)\n", rr_get_status(*result), rr_get_result(*result), I(rr_get_move(*result)), Index: engine/interface.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/interface.c,v retrieving revision 1.34 diff -u -r1.34 interface.c --- engine/interface.c 6 Dec 2002 23:31:42 -0000 1.34 +++ engine/interface.c 31 Dec 2002 00:51:37 -0000 @@ -456,7 +456,7 @@ if (handicap > bsize * bsize - 1 || handicap < 0) { fprintf(stderr, " Handicap HA[%d] is unreasonable.\n", handicap); fprintf(stderr, " Modify SGF file.\n"); - exit (1); + exit(EXIT_FAILURE); } } Index: engine/liberty.h =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/liberty.h,v retrieving revision 1.145 diff -u -r1.145 liberty.h --- engine/liberty.h 25 Dec 2002 20:26:44 -0000 1.145 +++ engine/liberty.h 31 Dec 2002 00:56:49 -0000 @@ -692,7 +692,6 @@ /* SGF routines for debugging purposes in sgffile.c */ -void sgffile_printboard(struct SGFTree_t *tree); void sgffile_begindump(struct SGFTree_t *tree); void sgffile_enddump(const char *filename); Index: engine/matchpat.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/matchpat.c,v retrieving revision 1.45 diff -u -r1.45 matchpat.c --- engine/matchpat.c 27 Dec 2002 03:08:28 -0000 1.45 +++ engine/matchpat.c 31 Dec 2002 00:57:20 -0000 @@ -787,8 +787,8 @@ extern int dfa_p[DFA_MAX_BOARD * 4 * DFA_MAX_BOARD * 4]; extern int spiral[MAX_ORDER][8]; -/* FIXME: what is this for? */ -const int convert[3][4]; +/* This is used by the EXPECTED_COLOR macro. */ +extern const int convert[3][4]; /* Forward declarations. */ static void dfa_prepare_for_match(int color); Index: engine/owl.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/owl.c,v retrieving revision 1.131 diff -u -r1.131 owl.c --- engine/owl.c 25 Dec 2002 20:26:44 -0000 1.131 +++ engine/owl.c 31 Dec 2002 00:57:30 -0000 @@ -5271,7 +5271,12 @@ if (kworm) { if (do_list) list_goal_worms(owl, list); - memcpy(dragon_goal_worms[dragon[str].id], list, sizeof (list)); + /* N.B. We cannot use sizeof(list) below because a formal array + * parameter implicitly is converted to a pointer and sizeof(list) + * thus equals sizeof(int *), which is not what we want. + */ + memcpy(dragon_goal_worms[dragon[str].id], list, + sizeof(dragon_goal_worms[dragon[str].id])); *flag = 1; } else Index: engine/printutils.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/engine/printutils.c,v retrieving revision 1.29 diff -u -r1.29 printutils.c --- engine/printutils.c 14 Dec 2002 16:30:00 -0000 1.29 +++ engine/printutils.c 31 Dec 2002 00:57:31 -0000 @@ -69,7 +69,7 @@ } case 'x': { - int d = va_arg(ap, int); + unsigned int d = va_arg(ap, unsigned int); fprintf(outputfile, "%x", d); break; } @@ -147,7 +147,7 @@ } case 'H': { - long h = va_arg(ap, int); + unsigned long h = va_arg(ap, unsigned long); fprintf(outputfile, "%lx", h); break; } Index: interface/gmp.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/interface/gmp.c,v retrieving revision 1.3 diff -u -r1.3 gmp.c --- interface/gmp.c 6 Sep 2001 21:34:20 -0000 1.3 +++ interface/gmp.c 31 Dec 2002 00:57:32 -0000 @@ -37,6 +37,10 @@ # endif #endif +#ifdef HAVE_SYS_TYPES_H +#include +#endif + #ifdef HAVE_UNISTD_H #include #endif @@ -308,7 +312,7 @@ if (ge->recvData[2] & 0x08) { /* Not-understood command. */ if (gmp_debug) { fprintf(stderr, "GMP: Unknown command byte 0x%x received.\n", - ge->recvData[2]); + (unsigned int) ge->recvData[2]); } return(gmp_nothing); } @@ -461,7 +465,7 @@ } else { if (gmp_debug) fprintf(stderr, "GMP: Send buffer full. Catastrophic error."); - exit(1); + exit(EXIT_FAILURE); } return; } Index: interface/play_ascii.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/interface/play_ascii.c,v retrieving revision 1.30 diff -u -r1.30 play_ascii.c --- interface/play_ascii.c 20 Oct 2002 10:58:22 -0000 1.30 +++ interface/play_ascii.c 31 Dec 2002 00:57:37 -0000 @@ -256,7 +256,7 @@ last_pos_was_move = 0; break; default: - fprintf(stderr, "Illegal board value %d\n", BOARD(i, j)); + fprintf(stderr, "Illegal board value %d\n", (int) BOARD(i, j)); exit(EXIT_FAILURE); break; } Index: interface/play_gmp.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/interface/play_gmp.c,v retrieving revision 1.16 diff -u -r1.16 play_gmp.c --- interface/play_gmp.c 16 Nov 2002 05:04:31 -0000 1.16 +++ interface/play_gmp.c 31 Dec 2002 00:57:38 -0000 @@ -71,12 +71,12 @@ if (message == gmp_err) { fprintf(stderr, "gnugo-gmp: Error \"%s\" occurred.\n", error); - exit(1); + exit(EXIT_FAILURE); } else if (message != gmp_newGame) { fprintf(stderr, "gnugo-gmp: Expecting a newGame, got %s\n", gmp_resultString(message)); - exit(1); + exit(EXIT_FAILURE); } gameinfo->handicap = gmp_handicap(ge); Index: interface/play_gtp.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/interface/play_gtp.c,v retrieving revision 1.107 diff -u -r1.107 play_gtp.c --- interface/play_gtp.c 22 Dec 2002 20:07:13 -0000 1.107 +++ interface/play_gtp.c 31 Dec 2002 00:57:44 -0000 @@ -2569,7 +2569,7 @@ * the command after the color, this is used as seed instead. */ seed = 0; - sscanf(s, "%u", &seed); + sscanf(s, "%d", &seed); random_seed = seed; finish_and_score_game(seed); @@ -2611,7 +2611,7 @@ * the command after the color, this is used as seed instead. */ seed = 0; - sscanf(s + n, "%u", &seed); + sscanf(s + n, "%d", &seed); random_seed = seed; finish_and_score_game(seed); @@ -2669,7 +2669,7 @@ * the command after the color, this is used as seed instead. */ seed = 0; - sscanf(s + n, "%u", &seed); + sscanf(s + n, "%d", &seed); random_seed = seed; finish_and_score_game(seed); Index: patterns/dfa.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/patterns/dfa.c,v retrieving revision 1.24 diff -u -r1.24 dfa.c --- patterns/dfa.c 9 Dec 2002 23:04:16 -0000 1.24 +++ patterns/dfa.c 31 Dec 2002 00:57:49 -0000 @@ -27,6 +27,7 @@ #include "patterns.h" #include "dfa.h" #include +#include #ifdef HAVE_CONFIG_H #include @@ -394,7 +395,7 @@ pBuf2 = realloc(pdfa->indexes, maxIndexes * sizeof(attrib_t)); if (pBuf == NULL || pBuf2 == NULL) { fprintf(stderr, "No memory left for dfa: %s", pdfa->name); - exit(1); + exit(EXIT_FAILURE); } for (i = pdfa->maxStates; i < maxStates; i++) @@ -550,20 +551,20 @@ if (sizeof(unsigned short) < 2) { fprintf(of, "#error shorts too short"); fprintf(stderr, "Error: shorts are expected to be at least 2 bytes long.\n"); - exit(2); + exit(EXIT_FAILURE); } assert (dfa_minmax_delta(pdfa, -1, 1) > 0); if (dfa_minmax_delta(pdfa, -1, 0) > 65535) { fprintf(of, "#error too many states"); fprintf(stderr, "Error: The dfa states are too disperse. Can't fit delta into a short.\n"); - exit(2); + exit(EXIT_FAILURE); } if (pdfa->lastIndex + 1 > 65535) { fprintf(of, "#error too many states"); fprintf(stderr, "Error: Too many index entries. Can't fit delta into a short.\n"); - exit(2); + exit(EXIT_FAILURE); } @@ -739,7 +740,7 @@ new_entry = malloc(sizeof(entry_t)); if (new_entry == NULL) { fprintf(stderr, "No memory left for new entry\n"); - exit(1); + exit(EXIT_FAILURE); } new_entry->pnext = *pplist; new_entry->l = l; Index: patterns/mkeyes.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/patterns/mkeyes.c,v retrieving revision 1.12 diff -u -r1.12 mkeyes.c --- patterns/mkeyes.c 4 Dec 2002 03:45:49 -0000 1.12 +++ patterns/mkeyes.c 31 Dec 2002 00:57:49 -0000 @@ -333,7 +333,7 @@ printf(" {%d, %d, %2d, %d, {%2d, %2d, %2d, %2d}}", - marginal[i][j], edge[i][j], flags[i][j], + marginal[i][j], (int) edge[i][j], (int) flags[i][j], neighbors[l], nb[0], nb[1], nb[2], nb[3]); if (l < esize[patno]-1) Index: patterns/mkpat.c =================================================================== RCS file: /cvsroot/gnugo/gnugo/patterns/mkpat.c,v retrieving revision 1.102 diff -u -r1.102 mkpat.c --- patterns/mkpat.c 25 Dec 2002 20:26:44 -0000 1.102 +++ patterns/mkpat.c 31 Dec 2002 00:57:55 -0000 @@ -141,7 +141,7 @@ int maxi, maxj; /* (i,j) offsets of largest element */ int mini, minj; /* offset of top-left element (0,0) unless there are edge constraints */ -int where; /* NORTH_EDGE | WEST_EDGE, etc */ +unsigned int where; /* NORTH_EDGE | WEST_EDGE, etc */ int el; /* next element number in current pattern */ struct patval_b elements[MAX_BOARD*MAX_BOARD]; /* elements of current pattern */ int num_stars; @@ -2660,7 +2660,7 @@ /* Forward declaration, which autohelpers might need. */ if (database_type != DB_FULLBOARD && database_type != DB_CORNER) - fprintf(output_FILE, "struct pattern %s[];\n\n", prefix); + fprintf(output_FILE, "extern struct pattern %s[];\n\n", prefix); /* Write the autohelper code. */ fprintf(output_FILE, "%s", autohelper_code); Index: patterns/patterns.h =================================================================== RCS file: /cvsroot/gnugo/gnugo/patterns/patterns.h,v retrieving revision 1.45 diff -u -r1.45 patterns.h --- patterns/patterns.h 20 Dec 2002 02:06:59 -0000 1.45 +++ patterns/patterns.h 31 Dec 2002 00:57:56 -0000 @@ -207,7 +207,8 @@ int mini, minj; /* min and max (relative to anchor) extent of ... */ int maxi, maxj; /* ...the pattern */ int height, width; /* differences between max and min extents */ - int edge_constraints; /* and combinations of NORTH, EAST etc. for edges */ + unsigned int edge_constraints; /* and combinations of NORTH, EAST etc. + * for edges */ int move_offset; /* offset of the suggested move (relative to anchor) */