2000-08-21 Ulrich Drepper <drepper@redhat.com>
+ * stdlib/random_r.c (__setstate_r): Correct offset when computing
+ new rptr and fptr. Reported by Michael Fischer <fischer@cs.yale.edu>.
+
+ * posix/regex.h: Add macro definitions to allow compiling outside
+ glibc.
+
* sysdeps/i370/Implies: Removed.
* sysdeps/mvs/Implies: Removed.
# endif
#endif
+/* GCC 2.95 and later have "__restrict"; C99 compilers have
+ "restrict", and "configure" may have defined "restrict". */
+#ifndef __restrict
+# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__))
+# if defined restrict || 199901L <= __STDC_VERSION__
+# define __restrict restrict
+# else
+# define __restrict
+# endif
+# endif
+/* For now unconditionally define __restrict_arr to expand to nothing.
+ Ideally we would have a test for the compiler which allows defining
+ it to restrict. */
+# define __restrict_arr
+#endif
+
/* POSIX compatibility. */
extern int regcomp _RE_ARGS ((regex_t *__restrict __preg,
const char *__restrict __pattern,
if (type != TYPE_0)
{
int rear = new_state[0] / MAX_TYPES;
- buf->rptr = &new_state[rear];
- buf->fptr = &new_state[(rear + separation) % degree];
+ buf->rptr = &new_state[1 + rear];
+ buf->fptr = &new_state[1 + (rear + separation) % degree];
}
buf->state = &new_state[1];
/* Set end_ptr too. */