summaryrefslogtreecommitdiff
path: root/regex/regexec.c
diff options
context:
space:
mode:
Diffstat (limited to 'regex/regexec.c')
-rw-r--r--regex/regexec.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/regex/regexec.c b/regex/regexec.c
index c52a79fd8f5..853bd7aa263 100644
--- a/regex/regexec.c
+++ b/regex/regexec.c
@@ -22,24 +22,24 @@ static int nope = 0; /* for use in asserts; shuts lint up */
#define states long
#define states1 states /* for later use in regexec() decision */
#define CLEAR(v) ((v) = 0)
-#define SET0(v, n) ((v) &= ~(1 << (n)))
-#define SET1(v, n) ((v) |= 1 << (n))
-#define ISSET(v, n) ((v) & (1 << (n)))
+#define SET0(v, n) ((v) &= ~((states) 1 << (n)))
+#define SET1(v, n) ((v) |= (states) 1 << (n))
+#define ISSET(v, n) ((v) & ((states) 1 << (n)))
#define ASSIGN(d, s) ((d) = (s))
#define EQ(a, b) ((a) == (b))
#define STATEVARS int dummy /* dummy version */
#define STATESETUP(m, n) /* nothing */
#define STATETEARDOWN(m) /* nothing */
#define SETUP(v) ((v) = 0)
-#define onestate int
-#define INIT(o, n) ((o) = (unsigned)1 << (n))
+#define onestate long /* Changed from int by Monty */
+#define INIT(o, n) ((o) = (unsigned states)1 << (n))
#define INC(o) ((o) <<= 1)
#define ISSTATEIN(v, o) ((v) & (o))
/* some abbreviations; note that some of these know variable names! */
/* do "if I'm here, I can also be there" etc without branches */
-#define FWD(dst, src, n) ((dst) |= ((unsigned)(src)&(here)) << (n))
-#define BACK(dst, src, n) ((dst) |= ((unsigned)(src)&(here)) >> (n))
-#define ISSETBACK(v, n) ((v) & ((unsigned)here >> (n)))
+#define FWD(dst, src, n) ((dst) |= ((unsigned states)(src)&(here)) << (n))
+#define BACK(dst, src, n) ((dst) |= ((unsigned states)(src)&(here)) >> (n))
+#define ISSETBACK(v, n) ((v) & ((unsigned states)here >> (n)))
/* function names */
#define SNAMES /* engine.c looks after details */