run-makefile-gcc4.diff [plain text]
diff -ruN ./makefile ../../awk-new/awk/makefile
--- ./makefile	2005-05-03 13:55:49.000000000 -0700
+++ ../../awk-new/awk/makefile	2005-05-03 14:06:31.000000000 -0700
@@ -48,7 +48,7 @@
 	vcvars32.bat buildwin.bat mac.code awk.1
 
 a.out:	ytab.o $(OFILES)
-	$(CC) $(CFLAGS) ytab.o $(OFILES) $(ALLOC)  -lm
+	$(CC) $(CFLAGS) ytab.o $(OFILES) $(ALLOC)  -lm -o a.out
 
 $(OFILES):	awk.h ytab.h proto.h
 
diff -ruN ./run.c ../../awk-new/awk/run.c
--- ./run.c	2005-05-03 13:55:50.000000000 -0700
+++ ../../awk-new/awk/run.c	2005-05-03 14:26:56.000000000 -0700
@@ -1024,6 +1024,7 @@
 			FATAL("division by zero in mod");
 		modf(i/j, &v);
 		i = i - j * v;
+		if (i == -0) i = 0;
 		break;
 	case UMINUS:
 		i = -i;
--- ./run.c	2005-06-23 14:32:34.000000000 -0700
+++ /tmp/run.c	2005-06-23 14:44:29.000000000 -0700
@@ -1122,6 +1122,7 @@
 			FATAL("division by zero in %%=");
 		modf(xf/yf, &v);
 		xf = xf - yf * v;
+		if (xf == -0) xf = 0;
 		break;
 	case POWEQ:
 		if (yf >= 0 && modf(yf, &v) == 0.0)	/* pos integer exponent */

Generated by GNU enscript 1.6.4.