changeset 240:fe9e6561a546

(re_match_2_internal): Add casts to shut up some compilers. (FREE_STACK_RETURN): Nest the free inside the return.
author Richard Stallman <rms@gnu.org>
date Fri, 15 Jul 1994 07:48:35 +0000
parents 1a287047bd80
children ea96d91a1676
files regex.c
diffstat 1 files changed, 7 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/regex.c
+++ b/regex.c
@@ -1493,12 +1493,7 @@
 
 /* Return, freeing storage we allocated.  */
 #define FREE_STACK_RETURN(value)		\
-do						\
-{						\
-  free (compile_stack.stack);			\
-  return value;					\
-}						\
-while (1)
+  return (free (compile_stack.stack), value)
 
 static reg_errcode_t
 regex_compile (pattern, size, syntax, bufp)
@@ -4298,7 +4293,7 @@
 #endif
 
                 if ((re_opcode_t) p1[3] == exactn
-		    && ! (p2[1] * BYTEWIDTH > p1[4]
+		    && ! ((int) p2[1] * BYTEWIDTH > (int) p1[4]
 			  && (p2[1 + p1[4] / BYTEWIDTH]
 			      & (1 << (p1[4] % BYTEWIDTH)))))
                   {
@@ -4312,9 +4307,9 @@
 		    int idx;
 		    /* We win if the charset_not inside the loop
 		       lists every character listed in the charset after.  */
-		    for (idx = 0; idx < p2[1]; idx++)
+		    for (idx = 0; idx < (int) p2[1]; idx++)
 		      if (! (p2[2 + idx] == 0
-			     || (idx < p1[4]
+			     || (idx < (int) p1[4]
 				 && ((p2[2 + idx] & ~ p1[5 + idx]) == 0))))
 			break;
 
@@ -4329,7 +4324,9 @@
 		    int idx;
 		    /* We win if the charset inside the loop
 		       has no overlap with the one after the loop.  */
-		    for (idx = 0; idx < p2[1] && idx < p1[4]; idx++)
+		    for (idx = 0;
+			 idx < (int) p2[1] && idx < (int) p1[4];
+			 idx++)
 		      if ((p2[2 + idx] & p1[5 + idx]) != 0)
 			break;