[Ecls-list] error building ecl from latest cvs

Josh Elsasser josh at elsasser.org
Sun Oct 5 02:29:15 UTC 2008


On Sat, Oct 04, 2008 at 07:37:18PM -0300, Pedro Kr??ger wrote:
> 
> Hi,
> 
> now I get this error while building ecl from today's cvs repository:
> 
> gcc -c -DECL_API -I. -I/home/kroger/dados/programas/ecl/build -I/home/kroger/dados/programas/ecl/src/c -I../ecl/gc  -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fPIC  -Dlinux  -o unixsys.o unixsys.c
> /home/kroger/dados/programas/ecl/src/c/unixsys.d: In function ???si_run_program???:
> /home/kroger/dados/programas/ecl/src/c/unixsys.d:331: warning: passing argument 2 of ???execvp??? from incompatible pointer type
> /home/kroger/dados/programas/ecl/src/c/unixsys.d:342: error: incompatible types in assignment
> make[2]: *** [unixsys.o] Error 1
> rm unixsys.c

Oops, sorry about that.  Try this patch:

diff --git src/c/unixsys.d src/c/unixsys.d
index da5bf35..3ca2057 100644
--- src/c/unixsys.d
+++ src/c/unixsys.d
@@ -338,9 +338,9 @@ si_make_pipe()
 	close(child_stdout);
 	close(child_stderr);
 	if (child_pid > 0 && wait != Cnil) {
-	   	int status[0];
-		waitpid(child_pid, status, 0);
-		exit_status = MAKE_FIXNUM(WEXITSTATUS(status));
+	   	int status;
+		if (0 < waitpid(child_pid, &status, 0))
+			exit_status = MAKE_FIXNUM(WEXITSTATUS(status));
 	}
 }
 #endif /* mingw */




More information about the ecl-devel mailing list