summaryrefslogtreecommitdiff
path: root/misc/regexp.c
diff options
context:
space:
mode:
Diffstat (limited to 'misc/regexp.c')
-rw-r--r--misc/regexp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/misc/regexp.c b/misc/regexp.c
index 5ffdfb35e6..85ff41e909 100644
--- a/misc/regexp.c
+++ b/misc/regexp.c
@@ -23,6 +23,7 @@
argument to 'step' and 'advance' was defined only in regexp.h,
as its definition depended on macros defined by the user. */
+#include <stdint.h>
#include <regex.h>
#include <shlib-compat.h>
@@ -50,7 +51,7 @@ step (const char *string, const char *expbuf)
regmatch_t match; /* We only need info about the full match. */
expbuf += __alignof (regex_t *);
- expbuf -= (expbuf - ((const char *) 0)) % __alignof__ (regex_t *);
+ expbuf -= ((uintptr_t) expbuf) % __alignof__ (regex_t *);
if (__regexec ((const regex_t *) expbuf, string, 1, &match, REG_NOTEOL)
== REG_NOMATCH)
@@ -73,7 +74,7 @@ advance (const char *string, const char *expbuf)
regmatch_t match; /* We only need info about the full match. */
expbuf += __alignof__ (regex_t *);
- expbuf -= (expbuf - ((const char *) 0)) % __alignof__ (regex_t *);
+ expbuf -= ((uintptr_t) expbuf) % __alignof__ (regex_t *);
if (__regexec ((const regex_t *) expbuf, string, 1, &match, REG_NOTEOL)
== REG_NOMATCH