gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gnugo-devel] GNU Go 3.1.32


From: Gunnar Farneback
Subject: Re: [gnugo-devel] GNU Go 3.1.32
Date: Fri, 19 Apr 2002 18:01:12 +0200
User-agent: EMH/1.14.1 SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/20.7 (sparc-sun-solaris2.7) (with unibyte mode)

Dan wrote:
> Currently we are in the extreme late phase of the
> release cycle. Please try building on different
> platforms.  Particularly, I'd like to hear that
> this release builds OK on VC, OS X and any random
> Unixes you have lying around.

--------------

Alpha with Linux, gcc:
Builds with serious warnings, passes regressions cleanly.

Warnings (notice that this platform has 64 bit pointers but 32 bit
ints):

matchpat.c: In function `tree_initialize_pointers':
matchpat.c:790: warning: cast from pointer to integer of different size
matchpat.c:792: warning: cast from pointer to integer of different size
matchpat.c:794: warning: cast from pointer to integer of different size
matchpat.c:800: warning: cast from pointer to integer of different size

mkpat.c: In function `dump_tree_node':
mkpat.c:1815: warning: cast to pointer from integer of different size
mkpat.c:1818: warning: cast to pointer from integer of different size
mkpat.c:1830: warning: cast to pointer from integer of different size
mkpat.c:1855: warning: cast to pointer from integer of different size
mkpat.c:1868: warning: cast to pointer from integer of different size
mkpat.c: In function `tree_write_patterns':
mkpat.c:1916: warning: cast to pointer from integer of different size
mkpat.c:1928: warning: cast from pointer to integer of different size
mkpat.c:1932: warning: cast from pointer to integer of different size
mkpat.c:1933: warning: cast from pointer to integer of different size
mkpat.c:1943: warning: cast from pointer to integer of different size

These are solved by Dan's recent patch to disable the tree pattern
matching code.

mkpat.c: In function `main':
mkpat.c:2098: warning: `input_FILE' might be used uninitialized in this function
mkpat.c:2099: warning: `output_FILE' might be used uninitialized in this 
function

Fixed by the appended patch.

display.c: In function `gg_vwprintw':
display.c:64: warning: passing arg 2 of `vwprintw' discards `const' from 
pointer target type

Well known problem that const is used in headers on some platforms but
not on others. For the platforms below this counts as an unimportant
warning.

--------------

DEC 3000 with Digital Unix, gcc:
Same warnings as above about casts, regressions not run

--------------

HP-UX 11.00, native compiler:
builds cleanly, passes regressions cleanly.

--------------

AIX 4.2, gcc:
builds with unimportant warnings, passes regressions cleanly

--------------

Cray J90, native compiler:
builds cleanly, four unexpected regression results

./regress.sh . nngs1.tst
45 unexpected PASS!
./regress.sh . nngs.tst
250 unexpected FAIL: Correct '!S15', got 'S15'
260 unexpected PASS!
710 unexpected PASS!

These may be fixed by my and Arend's recent patches, but I'll wait for
3.1.33 to find out.

--------------

Solaris 8, gcc:
builds with unimportant warnings, passes regressions cleanly

--------------

Solaris 8, native compiler:
builds with numerous warnings, passes regressions cleanly

Most of the warnings are entirely pointless, but it correctly reports
that the class field of Y patterns is improperly initialized. The
problem is that the class field is an int but would need to be an
unsigned int. Fixed by the appended patch.

--------------

- class field in struct pattern and class_mask static variable in
  matchpat.c changed from int to unsigned int
- input_FILE and output_FILE in mkpat.c explicitly initialized

/Gunnar

Index: engine/matchpat.c
===================================================================
RCS file: /cvsroot/gnugo/gnugo/engine/matchpat.c,v
retrieving revision 1.30
diff -u -r1.30 matchpat.c
--- engine/matchpat.c   31 Mar 2002 20:46:47 -0000      1.30
+++ engine/matchpat.c   18 Apr 2002 19:08:44 -0000
@@ -213,7 +213,7 @@
  * we care about each time.
  */
   
-static int class_mask[MAX_DRAGON_STATUS][3];
+static unsigned int class_mask[MAX_DRAGON_STATUS][3];
 
 
 /* In the current implementation, the edge constraints depend on
Index: engine/shapes.c
===================================================================
RCS file: /cvsroot/gnugo/gnugo/engine/shapes.c,v
retrieving revision 1.29
diff -u -r1.29 shapes.c
--- engine/shapes.c     7 Apr 2002 14:48:33 -0000       1.29
+++ engine/shapes.c     18 Apr 2002 19:08:44 -0000
@@ -67,7 +67,7 @@
   int your_ndragons = 0;
 
   /* Make a local copy of the classification that we may modify. */
-  int class = pattern->class;
+  unsigned int class = pattern->class;
   
   /* Y patterns get rejected if F flag does not match with
    * experimental_influence mode.
Index: patterns/mkpat.c
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/mkpat.c,v
retrieving revision 1.66
diff -u -r1.66 mkpat.c
--- patterns/mkpat.c    31 Mar 2002 20:46:47 -0000      1.66
+++ patterns/mkpat.c    18 Apr 2002 19:08:45 -0000
@@ -2095,8 +2101,8 @@
   char line[MAXLINE];  /* current line from file */
   char *input_file_names[MAX_INPUT_FILE_NAMES];
   char *output_file_name = NULL;
-  FILE *input_FILE;
-  FILE *output_FILE;
+  FILE *input_FILE = NULL;
+  FILE *output_FILE = NULL;
   int state = 0;
   int ifc = 0;
   int i;
Index: patterns/patterns.h
===================================================================
RCS file: /cvsroot/gnugo/gnugo/patterns/patterns.h,v
retrieving revision 1.31
diff -u -r1.31 patterns.h
--- patterns/patterns.h 31 Mar 2002 20:46:47 -0000      1.31
+++ patterns/patterns.h 18 Apr 2002 19:08:45 -0000
@@ -233,7 +233,7 @@
   unsigned int val_mask[8]; /* 4x4 grid around anchor */
 #endif
 
-  int class;            /* classification of pattern */
+  unsigned int class;   /* classification of pattern */
   float value;          /* value for pattern, if matched */
   float maxvalue;
   float minterritory;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]