#ifndef EMACS18_REGEXP
#  define EMACS19_REGEXP
#endif /* not EMACS18_REGEXP */

#if defined (EMACS18_REGEXP)
/* Type for byte offsets within the string.  POSIX mandates this.  */
typedef int regoff_t;

/* search.c (search_buffer) in Emacs needs this one opcode value.  It is
   defined both in `regex.c' and here.  */
#define RE_EXACTN_VALUE 1

/* If `regs_allocated' is REGS_UNALLOCATED in the pattern buffer,
   `re_match_2' returns information about at least this many registers
   the first time a `regs' structure is passed.  */
#ifndef RE_NREGS
#define RE_NREGS 100
#endif

        /* If REGS_UNALLOCATED, allocate space in the `regs' structure
             for `max (RE_NREGS, re_nsub + 1)' groups.
           If REGS_REALLOCATE, reallocate space if necessary.
           If REGS_FIXED, use what's there.  */
#define REGS_UNALLOCATED 0
#define REGS_REALLOCATE 1
#define REGS_FIXED 2

#define EMULATE_EMACS19
#include "regex18.h"
#else  /* not EMACS18_REGEXP */
#include <sys/types.h>
#include "regex19.h"
#endif /* not EMACS18_REGEXP */
