diff --git a/src/libraries/libisc-new/src/isc_socket.c b/src/libraries/libisc-new/src/isc_socket.c
index 680541da47fb832dd3ee0bf40dce78ed1047f479..9285ed8ed3ddc91fb61bf9e087d594cec41a9733 100644
--- a/src/libraries/libisc-new/src/isc_socket.c
+++ b/src/libraries/libisc-new/src/isc_socket.c
@@ -55,7 +55,7 @@ extern int accept(int fd, struct sockaddr *sock, int *len);
 #undef inet_ntoa
 #endif
 
-static char *inet_ntoa(ad)
+char *inet_ntoa(ad)
     struct in_addr ad;
 {
   u_long s_ad;
diff --git a/src/libraries/libisc-new/src/printf.c b/src/libraries/libisc-new/src/printf.c
index badac43883b1c49e98e5e7612a18fa678ecc28b1..1470f49beba0aa302a4fc3d79f2b2a411b359fdb 100644
--- a/src/libraries/libisc-new/src/printf.c
+++ b/src/libraries/libisc-new/src/printf.c
@@ -240,9 +240,10 @@ rflag:		switch (*++fmt)
 			 * zeroes later, so buffer size stays rational.
 			 */
 			if (prec > MAXFRACT) {
-				if (*fmt != 'g' && *fmt != 'G' || (flags&ALT))
-					fpprec = prec - MAXFRACT;
-				prec = MAXFRACT;
+			  if ((*fmt != 'g' && *fmt != 'G') ||
+			      (flags&ALT))
+			    fpprec = prec - MAXFRACT;
+			  prec = MAXFRACT;
 			}
 			else if (prec == -1)
 				prec = DEFPREC;
@@ -556,7 +557,7 @@ eformat:	if (expcnt) {
 		 * conversion is less than -4 or greater than the precision.''
 		 *	-- ANSI X3J11
 		 */
-		if (expcnt > prec || !expcnt && fract && fract < .0001) {
+		if (expcnt > prec || (!expcnt && fract && fract < .0001)) {
 			/*
 			 * g/G format counts "significant digits, not digits of
 			 * precision; for the e/E format, this just causes an