[GRASS5] [bug #2076] (grass) Same compilation error for modules: src/misc/m.kappa and src/raster/r.in.doq

this bug's URL: http://intevation.de/rt/webrt?serial_num=2076
-------------------------------------------------------------------------

Subject: Same compilation error for modules: src/misc/m.kappa and src/raster/r.in.doq

Platform: GNU/Linux/i386
grass obtained from: Trento Italy site
grass binary for platform: Compiled from Sources
GRASS Version: GRASS 5.0.2

Hi! My name is Stefano Perona
I have found the same compilation error (gcc version 3.3-23) in modules:

- src/misc/m.kappa
- src/raster/r.in.doq

About the "m.kappa" module the makelog is:

  SRC = /home/Stefano/grass5.0.2/src
  CMD = /home/Stefano/grass5.0.2/src/CMD
  UNUSED = /home/Stefano/grass5.0.2/unused
  HEADER = head.i686-pc-linux-gnu
  ARCH = i686-pc-linux-gnu
  GISBASE = /home/Stefano/grass5.0.2/dist.i686-pc-linux-gnu
  VERSION = 5.0.2 April 2003
#################################################################
/home/Stefano/grass5.0.2/src/misc/m.kappa
  make -f OBJ.i686-pc-linux-gnu/make.rules

/usr/local/bin/gmake5 -all
  SRC = /home/Stefano/grass5.0.2/src
  CMD = /home/Stefano/grass5.0.2/src/CMD
  UNUSED = /home/Stefano/grass5.0.2/unused
  HEADER = head.i686-pc-linux-gnu
  ARCH = i686-pc-linux-gnu
  GISBASE = /home/Stefano/grass5.0.2/dist.i686-pc-linux-gnu
  VERSION = 5.0.2 April 2003
#################################################################
/home/Stefano/grass5.0.2/src/misc/m.kappa/cmd
  make -f OBJ.i686-pc-linux-gnu/make.rules

make[1]: Entering directory `/home/Stefano/grass5.0.2/src/misc/m.kappa/cmd'
gcc -I/home/Stefano/grass5.0.2/src/include -g -O2 -c prt_hdr.c -o OBJ.i686-pc-linux-gnu/prt_hdr.o
prt_hdr.c: In function `prn_header':
prt_hdr.c:13: error: too few arguments to function `exit'
make[1]: *** [OBJ.i686-pc-linux-gnu/prt_hdr.o] Error 1
make[1]: Leaving directory `/home/Stefano/grass5.0.2/src/misc/m.kappa/cmd'
make: *** [all] Error 1

The file "prt_hdr.c" is:

#include "mkappa.h"

prn_header()
{
  FILE *fd;

  if (output == NULL)
    fd = stdout;
  else
    if ((fd = fopen(output, "w")) == NULL) {
      fprintf (stderr,
  "ERROR: can't open <%s> to write header information\n", output);
      exit();
    }

  fprintf (fd, "\n\t\t%s\n", title);
  fprintf (fd, "\t\t\t\t(%s)\n\n", G_date());

  if (output != NULL)
    fclose(fd);
}

The same error about the "exit" function occour in the makelog of "r.in.doq" module:

  SRC = /home/Stefano/grass5.0.2/src
  CMD = /home/Stefano/grass5.0.2/src/CMD
  UNUSED = /home/Stefano/grass5.0.2/unused
  HEADER = head.i686-pc-linux-gnu
  ARCH = i686-pc-linux-gnu
  GISBASE = /home/Stefano/grass5.0.2/dist.i686-pc-linux-gnu
  VERSION = 5.0.2 April 2003
#################################################################
/home/Stefano/grass5.0.2/src/raster/r.in.doq
  make -f OBJ.i686-pc-linux-gnu/make.rules

/usr/local/bin/gmake5 cmd
  SRC = /home/Stefano/grass5.0.2/src
  CMD = /home/Stefano/grass5.0.2/src/CMD
  UNUSED = /home/Stefano/grass5.0.2/unused
  HEADER = head.i686-pc-linux-gnu
  ARCH = i686-pc-linux-gnu
  GISBASE = /home/Stefano/grass5.0.2/dist.i686-pc-linux-gnu
  VERSION = 5.0.2 April 2003
#################################################################
/home/Stefano/grass5.0.2/src/raster/r.in.doq/cmd
  make -f OBJ.i686-pc-linux-gnu/make.rules

make[1]: Entering directory `/home/Stefano/grass5.0.2/src/raster/r.in.doq/cmd'
gcc -I/home/Stefano/grass5.0.2/src/include -g -O2 -c get_newhead.c -o OBJ.i686-pc-linux-gnu/get_newhead.o
get_newhead.c: In function `get_newhead':
get_newhead.c:46: error: too few arguments to function `exit'
get_newhead.c:64: error: too few arguments to function `exit'
make[1]: *** [OBJ.i686-pc-linux-gnu/get_newhead.o] Error 1
make[1]: Leaving directory `/home/Stefano/grass5.0.2/src/raster/r.in.doq/cmd'
make: *** [all] Error 2

Can you give my some hints to resolve the "too few arguments" error about the exit function?

Thanks in advance!

-------------------------------------------- Managed by Request Tracker

Request Tracker wrote:

this bug's URL: http://intevation.de/rt/webrt?serial_num=2076
-------------------------------------------------------------------------

make[1]: Entering directory `/home/Stefano/grass5.0.2/src/misc/m.kappa/cmd'
gcc -I/home/Stefano/grass5.0.2/src/include -g -O2 -c prt_hdr.c -o OBJ.i686-pc-linux-gnu/prt_hdr.o
prt_hdr.c: In function `prn_header':
prt_hdr.c:13: error: too few arguments to function `exit'

make[1]: Entering directory `/home/Stefano/grass5.0.2/src/raster/r.in.doq/cmd'
gcc -I/home/Stefano/grass5.0.2/src/include -g -O2 -c get_newhead.c -o OBJ.i686-pc-linux-gnu/get_newhead.o
get_newhead.c: In function `get_newhead':
get_newhead.c:46: error: too few arguments to function `exit'
get_newhead.c:64: error: too few arguments to function `exit'

Both of these are fixed in both the CVS HEAD and in the release
branch, and so will be fixed in 5.0.3.

Can you give my some hints to resolve the "too few arguments" error
about the exit function?

In all cases, change:

  exit();
to:
  exit(1);

BTW, both of those files should be including <stdlib.h>; that hasn't
been fixed in either CVS branch.

--
Glynn Clements <glynn.clements@virgin.net>