Changeset 11879 in project


Ignore:
Timestamp:
09/03/08 20:07:08 (11 years ago)
Author:
kon
Message:

Changes for PCRE 7.7

Location:
release/3/regex-extras
Files:
8 edited
1 copied

Legend:

Unmodified
Added
Removed
  • release/3/regex-extras/tags/1.1/config.h

    r9129 r11879  
    1 /* config.h.  From PCRE 7.6 config.h generated from config.h.in by configure.  */
     1/* config.h.  From PCRE 7.7 config.h generated from config.h.in by configure.  */
    22
    3 #if defined(HAVE_CONFIG_H) || defined(HAVE_CHICKEN_CONFIG_H)
     3/* For HAVE_* macros */
     4#ifdef HAVE_CHICKEN_CONFIG_H
    45# include "chicken-config.h"
    56#endif
    67
    7 /* On Unix-like systems config.h.in is converted by "configure" into config.h.
    8 Some other environments also support the use of "configure". PCRE is written in
    9 Standard C, but there are a few non-standard things it can cope with, allowing
    10 it to run on SunOS4 and other "close to standard" systems.
     8/* By default, the \R escape sequence matches any Unicode line ending
     9   character or sequence of characters. If BSR_ANYCRLF is defined, this is
     10   changed so that backslash-R matches only CR, LF, or CRLF. The build- time
     11   default can be overridden by the user of PCRE at runtime. On systems that
     12   support it, "configure" can be used to override the default. */
     13/* #undef BSR_ANYCRLF */
    1114
    12 If you are going to build PCRE "by hand" on a system without "configure" you
    13 should copy the distributed config.h.generic to config.h, and then set up the
    14 macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
    15 all of your compile commands, so that config.h is included at the start of
    16 every source.
    17 
    18 Alternatively, you can avoid editing by using -D on the compiler command line
    19 to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
    20 
    21 PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
    22 HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
    23 them both to 0; an emulation function will be used. */
    24 
    25 /* Define to 1 if you have the `memmove' function. */
    26 #ifndef HAVE_MEMMOVE
    27 /* hm... there must be a better way */
    28 # define HAVE_MEMMOVE 1
    29 #endif
    3015
    3116/* The value of LINK_SIZE determines the number of bytes used to store links
     
    8267   (ANYCRLF). */
    8368#ifndef NEWLINE
    84 #define NEWLINE '\n'
     69#define NEWLINE 10
    8570#endif
     71
     72/* PCRE uses recursive function calls to handle backtracking while matching.
     73   This can sometimes be a problem on systems that have stacks of limited
     74   size. Define NO_RECURSE to get a version that doesn't use recursion in the
     75   match() function; instead it creates its own stack by steam using
     76   pcre_recurse_malloc() to obtain memory from the heap. For more detail, see
     77   the comments and other stuff just above the match() function. On systems
     78   that support it, "configure" can be used to set this in the Makefile (use
     79   --disable-stack-for-recursion). */
     80/* #undef NO_RECURSE */
     81/* Make independent of Chicken stack - KRL */
     82#define NO_RECURSE 1
    8683
    8784/* Name of package */
     
    9592
    9693/* Define to the full name and version of this package. */
    97 #define PACKAGE_STRING "PCRE 7.6"
     94#define PACKAGE_STRING "PCRE 7.7"
    9895
    9996/* Define to the one symbol short name of this package. */
     
    10198
    10299/* Define to the version of this package. */
    103 #define PACKAGE_VERSION "7.6"
     100#define PACKAGE_VERSION "7.7"
    104101
    105102/* When calling PCRE via the POSIX interface, additional working storage is
     
    131128
    132129/* Version number of package */
    133 #define VERSION "7.6"
     130#define VERSION "7.7"
    134131
    135132/* Define to empty if `const' does not conform to ANSI C. */
  • release/3/regex-extras/tags/1.1/pcre_internal.h

    r9129 r11879  
    6666#define DPRINTF(p) /* Nothing */
    6767#endif
    68 
    69 
    70 /* Get the definitions provided by running "configure" */
    71 
    72 #include "config.h"
    7368
    7469
     
    520515   PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY|PCRE_UTF8| \
    521516   PCRE_NO_AUTO_CAPTURE|PCRE_NO_UTF8_CHECK|PCRE_AUTO_CALLOUT|PCRE_FIRSTLINE| \
    522    PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE)
     517   PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE| \
     518   PCRE_JAVASCRIPT_COMPAT)
    523519
    524520#define PUBLIC_EXEC_OPTIONS \
     
    610606their negation. Also, they must appear in the same order as in the opcode
    611607definitions below, up to ESC_z. There's a dummy for OP_ANY because it
    612 corresponds to "." rather than an escape sequence. The final one must be
    613 ESC_REF as subsequent values are used for backreferences (\1, \2, \3, etc).
    614 There are two tests in the code for an escape greater than ESC_b and less than
    615 ESC_Z to detect the types that may be repeated. These are the types that
    616 consume characters. If any new escapes are put in between that don't consume a
    617 character, that code will have to change. */
     608corresponds to "." rather than an escape sequence, and another for OP_ALLANY
     609(which is used for [^] in JavaScript compatibility mode).
     610
     611The final escape must be ESC_REF as subsequent values are used for
     612backreferences (\1, \2, \3, etc). There are two tests in the code for an escape
     613greater than ESC_b and less than ESC_Z to detect the types that may be
     614repeated. These are the types that consume characters. If any new escapes are
     615put in between that don't consume a character, that code will have to change.
     616*/
    618617
    619618enum { ESC_A = 1, ESC_G, ESC_K, ESC_B, ESC_b, ESC_D, ESC_d, ESC_S, ESC_s,
    620        ESC_W, ESC_w, ESC_dum1, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H, ESC_h,
    621        ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, ESC_E, ESC_Q, ESC_k, ESC_REF };
     619       ESC_W, ESC_w, ESC_dum1, ESC_dum2, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H,
     620       ESC_h, ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, ESC_E, ESC_Q, ESC_g, ESC_k,
     621       ESC_REF };
    622622
    623623
     
    645645  OP_NOT_WORDCHAR,       /* 10 \W */
    646646  OP_WORDCHAR,           /* 11 \w */
    647   OP_ANY,            /* 12 Match any character */
    648   OP_ANYBYTE,        /* 13 Match any byte (\C); different to OP_ANY for UTF-8 */
    649   OP_NOTPROP,        /* 14 \P (not Unicode property) */
    650   OP_PROP,           /* 15 \p (Unicode property) */
    651   OP_ANYNL,          /* 16 \R (any newline sequence) */
    652   OP_NOT_HSPACE,     /* 17 \H (not horizontal whitespace) */
    653   OP_HSPACE,         /* 18 \h (horizontal whitespace) */
    654   OP_NOT_VSPACE,     /* 19 \V (not vertical whitespace) */
    655   OP_VSPACE,         /* 20 \v (vertical whitespace) */
    656   OP_EXTUNI,         /* 21 \X (extended Unicode sequence */
    657   OP_EODN,           /* 22 End of data or \n at end of data: \Z. */
    658   OP_EOD,            /* 23 End of data: \z */
    659 
    660   OP_OPT,            /* 24 Set runtime options */
    661   OP_CIRC,           /* 25 Start of line - varies with multiline switch */
    662   OP_DOLL,           /* 26 End of line - varies with multiline switch */
    663   OP_CHAR,           /* 27 Match one character, casefully */
    664   OP_CHARNC,         /* 28 Match one character, caselessly */
    665   OP_NOT,            /* 29 Match one character, not the following one */
    666 
    667   OP_STAR,           /* 30 The maximizing and minimizing versions of */
    668   OP_MINSTAR,        /* 31 these six opcodes must come in pairs, with */
    669   OP_PLUS,           /* 32 the minimizing one second. */
    670   OP_MINPLUS,        /* 33 This first set applies to single characters.*/
    671   OP_QUERY,          /* 34 */
    672   OP_MINQUERY,       /* 35 */
    673 
    674   OP_UPTO,           /* 36 From 0 to n matches */
    675   OP_MINUPTO,        /* 37 */
    676   OP_EXACT,          /* 38 Exactly n matches */
    677 
    678   OP_POSSTAR,        /* 39 Possessified star */
    679   OP_POSPLUS,        /* 40 Possessified plus */
    680   OP_POSQUERY,       /* 41 Posesssified query */
    681   OP_POSUPTO,        /* 42 Possessified upto */
    682 
    683   OP_NOTSTAR,        /* 43 The maximizing and minimizing versions of */
    684   OP_NOTMINSTAR,     /* 44 these six opcodes must come in pairs, with */
    685   OP_NOTPLUS,        /* 45 the minimizing one second. They must be in */
    686   OP_NOTMINPLUS,     /* 46 exactly the same order as those above. */
    687   OP_NOTQUERY,       /* 47 This set applies to "not" single characters. */
    688   OP_NOTMINQUERY,    /* 48 */
    689 
    690   OP_NOTUPTO,        /* 49 From 0 to n matches */
    691   OP_NOTMINUPTO,     /* 50 */
    692   OP_NOTEXACT,       /* 51 Exactly n matches */
    693 
    694   OP_NOTPOSSTAR,     /* 52 Possessified versions */
    695   OP_NOTPOSPLUS,     /* 53 */
    696   OP_NOTPOSQUERY,    /* 54 */
    697   OP_NOTPOSUPTO,     /* 55 */
    698 
    699   OP_TYPESTAR,       /* 56 The maximizing and minimizing versions of */
    700   OP_TYPEMINSTAR,    /* 57 these six opcodes must come in pairs, with */
    701   OP_TYPEPLUS,       /* 58 the minimizing one second. These codes must */
    702   OP_TYPEMINPLUS,    /* 59 be in exactly the same order as those above. */
    703   OP_TYPEQUERY,      /* 60 This set applies to character types such as \d */
    704   OP_TYPEMINQUERY,   /* 61 */
    705 
    706   OP_TYPEUPTO,       /* 62 From 0 to n matches */
    707   OP_TYPEMINUPTO,    /* 63 */
    708   OP_TYPEEXACT,      /* 64 Exactly n matches */
    709 
    710   OP_TYPEPOSSTAR,    /* 65 Possessified versions */
    711   OP_TYPEPOSPLUS,    /* 66 */
    712   OP_TYPEPOSQUERY,   /* 67 */
    713   OP_TYPEPOSUPTO,    /* 68 */
    714 
    715   OP_CRSTAR,         /* 69 The maximizing and minimizing versions of */
    716   OP_CRMINSTAR,      /* 70 all these opcodes must come in pairs, with */
    717   OP_CRPLUS,         /* 71 the minimizing one second. These codes must */
    718   OP_CRMINPLUS,      /* 72 be in exactly the same order as those above. */
    719   OP_CRQUERY,        /* 73 These are for character classes and back refs */
    720   OP_CRMINQUERY,     /* 74 */
    721   OP_CRRANGE,        /* 75 These are different to the three sets above. */
    722   OP_CRMINRANGE,     /* 76 */
    723 
    724   OP_CLASS,          /* 77 Match a character class, chars < 256 only */
    725   OP_NCLASS,         /* 78 Same, but the bitmap was created from a negative
     647  OP_ANY,            /* 12 Match any character (subject to DOTALL) */
     648  OP_ALLANY,         /* 13 Match any character (not subject to DOTALL) */
     649  OP_ANYBYTE,        /* 14 Match any byte (\C); different to OP_ANY for UTF-8 */
     650  OP_NOTPROP,        /* 15 \P (not Unicode property) */
     651  OP_PROP,           /* 16 \p (Unicode property) */
     652  OP_ANYNL,          /* 17 \R (any newline sequence) */
     653  OP_NOT_HSPACE,     /* 18 \H (not horizontal whitespace) */
     654  OP_HSPACE,         /* 19 \h (horizontal whitespace) */
     655  OP_NOT_VSPACE,     /* 20 \V (not vertical whitespace) */
     656  OP_VSPACE,         /* 21 \v (vertical whitespace) */
     657  OP_EXTUNI,         /* 22 \X (extended Unicode sequence */
     658  OP_EODN,           /* 23 End of data or \n at end of data: \Z. */
     659  OP_EOD,            /* 24 End of data: \z */
     660
     661  OP_OPT,            /* 25 Set runtime options */
     662  OP_CIRC,           /* 26 Start of line - varies with multiline switch */
     663  OP_DOLL,           /* 27 End of line - varies with multiline switch */
     664  OP_CHAR,           /* 28 Match one character, casefully */
     665  OP_CHARNC,         /* 29 Match one character, caselessly */
     666  OP_NOT,            /* 30 Match one character, not the following one */
     667
     668  OP_STAR,           /* 31 The maximizing and minimizing versions of */
     669  OP_MINSTAR,        /* 32 these six opcodes must come in pairs, with */
     670  OP_PLUS,           /* 33 the minimizing one second. */
     671  OP_MINPLUS,        /* 34 This first set applies to single characters.*/
     672  OP_QUERY,          /* 35 */
     673  OP_MINQUERY,       /* 36 */
     674
     675  OP_UPTO,           /* 37 From 0 to n matches */
     676  OP_MINUPTO,        /* 38 */
     677  OP_EXACT,          /* 39 Exactly n matches */
     678
     679  OP_POSSTAR,        /* 40 Possessified star */
     680  OP_POSPLUS,        /* 41 Possessified plus */
     681  OP_POSQUERY,       /* 42 Posesssified query */
     682  OP_POSUPTO,        /* 43 Possessified upto */
     683
     684  OP_NOTSTAR,        /* 44 The maximizing and minimizing versions of */
     685  OP_NOTMINSTAR,     /* 45 these six opcodes must come in pairs, with */
     686  OP_NOTPLUS,        /* 46 the minimizing one second. They must be in */
     687  OP_NOTMINPLUS,     /* 47 exactly the same order as those above. */
     688  OP_NOTQUERY,       /* 48 This set applies to "not" single characters. */
     689  OP_NOTMINQUERY,    /* 49 */
     690
     691  OP_NOTUPTO,        /* 50 From 0 to n matches */
     692  OP_NOTMINUPTO,     /* 51 */
     693  OP_NOTEXACT,       /* 52 Exactly n matches */
     694
     695  OP_NOTPOSSTAR,     /* 53 Possessified versions */
     696  OP_NOTPOSPLUS,     /* 54 */
     697  OP_NOTPOSQUERY,    /* 55 */
     698  OP_NOTPOSUPTO,     /* 56 */
     699
     700  OP_TYPESTAR,       /* 57 The maximizing and minimizing versions of */
     701  OP_TYPEMINSTAR,    /* 58 these six opcodes must come in pairs, with */
     702  OP_TYPEPLUS,       /* 59 the minimizing one second. These codes must */
     703  OP_TYPEMINPLUS,    /* 60 be in exactly the same order as those above. */
     704  OP_TYPEQUERY,      /* 61 This set applies to character types such as \d */
     705  OP_TYPEMINQUERY,   /* 62 */
     706
     707  OP_TYPEUPTO,       /* 63 From 0 to n matches */
     708  OP_TYPEMINUPTO,    /* 64 */
     709  OP_TYPEEXACT,      /* 65 Exactly n matches */
     710
     711  OP_TYPEPOSSTAR,    /* 66 Possessified versions */
     712  OP_TYPEPOSPLUS,    /* 67 */
     713  OP_TYPEPOSQUERY,   /* 68 */
     714  OP_TYPEPOSUPTO,    /* 69 */
     715
     716  OP_CRSTAR,         /* 70 The maximizing and minimizing versions of */
     717  OP_CRMINSTAR,      /* 71 all these opcodes must come in pairs, with */
     718  OP_CRPLUS,         /* 72 the minimizing one second. These codes must */
     719  OP_CRMINPLUS,      /* 73 be in exactly the same order as those above. */
     720  OP_CRQUERY,        /* 74 These are for character classes and back refs */
     721  OP_CRMINQUERY,     /* 75 */
     722  OP_CRRANGE,        /* 76 These are different to the three sets above. */
     723  OP_CRMINRANGE,     /* 77 */
     724
     725  OP_CLASS,          /* 78 Match a character class, chars < 256 only */
     726  OP_NCLASS,         /* 79 Same, but the bitmap was created from a negative
    726727                           class - the difference is relevant only when a UTF-8
    727728                           character > 255 is encountered. */
    728729
    729   OP_XCLASS,         /* 79 Extended class for handling UTF-8 chars within the
     730  OP_XCLASS,         /* 80 Extended class for handling UTF-8 chars within the
    730731                           class. This does both positive and negative. */
    731732
    732   OP_REF,            /* 80 Match a back reference */
    733   OP_RECURSE,        /* 81 Match a numbered subpattern (possibly recursive) */
    734   OP_CALLOUT,        /* 82 Call out to external function if provided */
    735 
    736   OP_ALT,            /* 83 Start of alternation */
    737   OP_KET,            /* 84 End of group that doesn't have an unbounded repeat */
    738   OP_KETRMAX,        /* 85 These two must remain together and in this */
    739   OP_KETRMIN,        /* 86 order. They are for groups the repeat for ever. */
     733  OP_REF,            /* 81 Match a back reference */
     734  OP_RECURSE,        /* 82 Match a numbered subpattern (possibly recursive) */
     735  OP_CALLOUT,        /* 83 Call out to external function if provided */
     736
     737  OP_ALT,            /* 84 Start of alternation */
     738  OP_KET,            /* 85 End of group that doesn't have an unbounded repeat */
     739  OP_KETRMAX,        /* 86 These two must remain together and in this */
     740  OP_KETRMIN,        /* 87 order. They are for groups the repeat for ever. */
    740741
    741742  /* The assertions must come before BRA, CBRA, ONCE, and COND.*/
    742743
    743   OP_ASSERT,         /* 87 Positive lookahead */
    744   OP_ASSERT_NOT,     /* 88 Negative lookahead */
    745   OP_ASSERTBACK,     /* 89 Positive lookbehind */
    746   OP_ASSERTBACK_NOT, /* 90 Negative lookbehind */
    747   OP_REVERSE,        /* 91 Move pointer back - used in lookbehind assertions */
     744  OP_ASSERT,         /* 88 Positive lookahead */
     745  OP_ASSERT_NOT,     /* 89 Negative lookahead */
     746  OP_ASSERTBACK,     /* 90 Positive lookbehind */
     747  OP_ASSERTBACK_NOT, /* 91 Negative lookbehind */
     748  OP_REVERSE,        /* 92 Move pointer back - used in lookbehind assertions */
    748749
    749750  /* ONCE, BRA, CBRA, and COND must come after the assertions, with ONCE first,
    750751  as there's a test for >= ONCE for a subpattern that isn't an assertion. */
    751752
    752   OP_ONCE,           /* 92 Atomic group */
    753   OP_BRA,            /* 93 Start of non-capturing bracket */
    754   OP_CBRA,           /* 94 Start of capturing bracket */
    755   OP_COND,           /* 95 Conditional group */
     753  OP_ONCE,           /* 93 Atomic group */
     754  OP_BRA,            /* 94 Start of non-capturing bracket */
     755  OP_CBRA,           /* 95 Start of capturing bracket */
     756  OP_COND,           /* 96 Conditional group */
    756757
    757758  /* These three must follow the previous three, in the same order. There's a
    758759  check for >= SBRA to distinguish the two sets. */
    759760
    760   OP_SBRA,           /* 96 Start of non-capturing bracket, check empty  */
    761   OP_SCBRA,          /* 97 Start of capturing bracket, check empty */
    762   OP_SCOND,          /* 98 Conditional group, check empty */
    763 
    764   OP_CREF,           /* 99 Used to hold a capture number as condition */
    765   OP_RREF,           /* 100 Used to hold a recursion number as condition */
    766   OP_DEF,            /* 101 The DEFINE condition */
    767 
    768   OP_BRAZERO,        /* 102 These two must remain together and in this */
    769   OP_BRAMINZERO,     /* 103 order. */
     761  OP_SBRA,           /* 97 Start of non-capturing bracket, check empty  */
     762  OP_SCBRA,          /* 98 Start of capturing bracket, check empty */
     763  OP_SCOND,          /* 99 Conditional group, check empty */
     764
     765  OP_CREF,           /* 100 Used to hold a capture number as condition */
     766  OP_RREF,           /* 101 Used to hold a recursion number as condition */
     767  OP_DEF,            /* 102 The DEFINE condition */
     768
     769  OP_BRAZERO,        /* 103 These two must remain together and in this */
     770  OP_BRAMINZERO,     /* 104 order. */
    770771
    771772  /* These are backtracking control verbs */
    772773
    773   OP_PRUNE,          /* 104 */
    774   OP_SKIP,           /* 105 */
    775   OP_THEN,           /* 106 */
    776   OP_COMMIT,         /* 107 */
     774  OP_PRUNE,          /* 105 */
     775  OP_SKIP,           /* 106 */
     776  OP_THEN,           /* 107 */
     777  OP_COMMIT,         /* 108 */
    777778
    778779  /* These are forced failure and success verbs */
    779780
    780   OP_FAIL,           /* 108 */
    781   OP_ACCEPT          /* 109 */
     781  OP_FAIL,           /* 109 */
     782  OP_ACCEPT,         /* 110 */
     783
     784  /* This is used to skip a subpattern with a {0} quantifier */
     785
     786  OP_SKIPZERO        /* 111 */
    782787};
    783788
     
    788793#define OP_NAME_LIST \
    789794  "End", "\\A", "\\G", "\\K", "\\B", "\\b", "\\D", "\\d",         \
    790   "\\S", "\\s", "\\W", "\\w", "Any", "Anybyte",                   \
     795  "\\S", "\\s", "\\W", "\\w", "Any", "AllAny", "Anybyte",         \
    791796  "notprop", "prop", "\\R", "\\H", "\\h", "\\V", "\\v",           \
    792797  "extuni",  "\\Z", "\\z",                                        \
     
    804809  "Once", "Bra", "CBra", "Cond", "SBra", "SCBra", "SCond",        \
    805810  "Cond ref", "Cond rec", "Cond def", "Brazero", "Braminzero",    \
    806   "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT"
     811  "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT",      \
     812  "Skip zero"
    807813
    808814
     
    820826  1, 1, 1, 1, 1,                 /* \A, \G, \K, \B, \b                     */ \
    821827  1, 1, 1, 1, 1, 1,              /* \D, \d, \S, \s, \W, \w                 */ \
    822   1, 1,                          /* Any, Anybyte                           */ \
     828  1, 1, 1,                       /* Any, AllAny, Anybyte                   */ \
    823829  3, 3, 1,                       /* NOTPROP, PROP, EXTUNI                  */ \
    824830  1, 1, 1, 1, 1,                 /* \R, \H, \h, \V, \v                     */ \
     
    869875  1, 1,                          /* BRAZERO, BRAMINZERO                    */ \
    870876  1, 1, 1, 1,                    /* PRUNE, SKIP, THEN, COMMIT,             */ \
    871   1, 1                           /* FAIL, ACCEPT                           */
     877  1, 1, 1                        /* FAIL, ACCEPT, SKIPZERO                 */
    872878
    873879
     
    885891       ERR40, ERR41, ERR42, ERR43, ERR44, ERR45, ERR46, ERR47, ERR48, ERR49,
    886892       ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59,
    887        ERR60, ERR61, ERR62, ERR63 };
     893       ERR60, ERR61, ERR62, ERR63, ERR64 };
    888894
    889895/* The real format of the start of the pcre block; the index of names and the
     
    10101016  BOOL   noteol;                /* NOTEOL flag */
    10111017  BOOL   utf8;                  /* UTF8 flag */
     1018  BOOL   jscript_compat;        /* JAVASCRIPT_COMPAT flag */
    10121019  BOOL   endonly;               /* Dollar not before final \n */
    10131020  BOOL   notempty;              /* Empty string match not wanted */
  • release/3/regex-extras/tags/1.1/regex-chardefs.scm

    r8400 r11879  
    3939
    4040#>
     41#include "config.h"
    4142#include "pcre.h"
    4243#include "pcre_internal.h"
  • release/3/regex-extras/tags/1.1/regex-extras.setup

    r9129 r11879  
    44         (find-library "pcre" "pcre_malloc"))
    55  (install-dynld regex-extras *version* (documentation "regex-extras.html"))
    6   (error "cannot build without an installed PCRE 7.6 or better") )
     6  (error "cannot build without an installed PCRE 7.7 or better") )
    77
    88(if (and (find-header "pcre_internal.h")
     
    1414    (begin
    1515      (newline)
    16       (print "*** Building regex-chardefs with own PCRE 7.6 internal headers. ***")
     16      (print "*** Building regex-chardefs with own PCRE 7.7 internal headers. ***")
    1717      (install-dynld regex-chardefs *version* -I. (documentation "regex-extras.html")) ) )
  • release/3/regex-extras/trunk/config.h

    r9129 r11879  
    1 /* config.h.  From PCRE 7.6 config.h generated from config.h.in by configure.  */
     1/* config.h.  From PCRE 7.7 config.h generated from config.h.in by configure.  */
    22
    3 #if defined(HAVE_CONFIG_H) || defined(HAVE_CHICKEN_CONFIG_H)
     3/* For HAVE_* macros */
     4#ifdef HAVE_CHICKEN_CONFIG_H
    45# include "chicken-config.h"
    56#endif
    67
    7 /* On Unix-like systems config.h.in is converted by "configure" into config.h.
    8 Some other environments also support the use of "configure". PCRE is written in
    9 Standard C, but there are a few non-standard things it can cope with, allowing
    10 it to run on SunOS4 and other "close to standard" systems.
     8/* By default, the \R escape sequence matches any Unicode line ending
     9   character or sequence of characters. If BSR_ANYCRLF is defined, this is
     10   changed so that backslash-R matches only CR, LF, or CRLF. The build- time
     11   default can be overridden by the user of PCRE at runtime. On systems that
     12   support it, "configure" can be used to override the default. */
     13/* #undef BSR_ANYCRLF */
    1114
    12 If you are going to build PCRE "by hand" on a system without "configure" you
    13 should copy the distributed config.h.generic to config.h, and then set up the
    14 macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
    15 all of your compile commands, so that config.h is included at the start of
    16 every source.
    17 
    18 Alternatively, you can avoid editing by using -D on the compiler command line
    19 to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
    20 
    21 PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
    22 HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
    23 them both to 0; an emulation function will be used. */
    24 
    25 /* Define to 1 if you have the `memmove' function. */
    26 #ifndef HAVE_MEMMOVE
    27 /* hm... there must be a better way */
    28 # define HAVE_MEMMOVE 1
    29 #endif
    3015
    3116/* The value of LINK_SIZE determines the number of bytes used to store links
     
    8267   (ANYCRLF). */
    8368#ifndef NEWLINE
    84 #define NEWLINE '\n'
     69#define NEWLINE 10
    8570#endif
     71
     72/* PCRE uses recursive function calls to handle backtracking while matching.
     73   This can sometimes be a problem on systems that have stacks of limited
     74   size. Define NO_RECURSE to get a version that doesn't use recursion in the
     75   match() function; instead it creates its own stack by steam using
     76   pcre_recurse_malloc() to obtain memory from the heap. For more detail, see
     77   the comments and other stuff just above the match() function. On systems
     78   that support it, "configure" can be used to set this in the Makefile (use
     79   --disable-stack-for-recursion). */
     80/* #undef NO_RECURSE */
     81/* Make independent of Chicken stack - KRL */
     82#define NO_RECURSE 1
    8683
    8784/* Name of package */
     
    9592
    9693/* Define to the full name and version of this package. */
    97 #define PACKAGE_STRING "PCRE 7.6"
     94#define PACKAGE_STRING "PCRE 7.7"
    9895
    9996/* Define to the one symbol short name of this package. */
     
    10198
    10299/* Define to the version of this package. */
    103 #define PACKAGE_VERSION "7.6"
     100#define PACKAGE_VERSION "7.7"
    104101
    105102/* When calling PCRE via the POSIX interface, additional working storage is
     
    131128
    132129/* Version number of package */
    133 #define VERSION "7.6"
     130#define VERSION "7.7"
    134131
    135132/* Define to empty if `const' does not conform to ANSI C. */
  • release/3/regex-extras/trunk/pcre_internal.h

    r9129 r11879  
    6666#define DPRINTF(p) /* Nothing */
    6767#endif
    68 
    69 
    70 /* Get the definitions provided by running "configure" */
    71 
    72 #include "config.h"
    7368
    7469
     
    520515   PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY|PCRE_UTF8| \
    521516   PCRE_NO_AUTO_CAPTURE|PCRE_NO_UTF8_CHECK|PCRE_AUTO_CALLOUT|PCRE_FIRSTLINE| \
    522    PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE)
     517   PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE| \
     518   PCRE_JAVASCRIPT_COMPAT)
    523519
    524520#define PUBLIC_EXEC_OPTIONS \
     
    610606their negation. Also, they must appear in the same order as in the opcode
    611607definitions below, up to ESC_z. There's a dummy for OP_ANY because it
    612 corresponds to "." rather than an escape sequence. The final one must be
    613 ESC_REF as subsequent values are used for backreferences (\1, \2, \3, etc).
    614 There are two tests in the code for an escape greater than ESC_b and less than
    615 ESC_Z to detect the types that may be repeated. These are the types that
    616 consume characters. If any new escapes are put in between that don't consume a
    617 character, that code will have to change. */
     608corresponds to "." rather than an escape sequence, and another for OP_ALLANY
     609(which is used for [^] in JavaScript compatibility mode).
     610
     611The final escape must be ESC_REF as subsequent values are used for
     612backreferences (\1, \2, \3, etc). There are two tests in the code for an escape
     613greater than ESC_b and less than ESC_Z to detect the types that may be
     614repeated. These are the types that consume characters. If any new escapes are
     615put in between that don't consume a character, that code will have to change.
     616*/
    618617
    619618enum { ESC_A = 1, ESC_G, ESC_K, ESC_B, ESC_b, ESC_D, ESC_d, ESC_S, ESC_s,
    620        ESC_W, ESC_w, ESC_dum1, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H, ESC_h,
    621        ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, ESC_E, ESC_Q, ESC_k, ESC_REF };
     619       ESC_W, ESC_w, ESC_dum1, ESC_dum2, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H,
     620       ESC_h, ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, ESC_E, ESC_Q, ESC_g, ESC_k,
     621       ESC_REF };
    622622
    623623
     
    645645  OP_NOT_WORDCHAR,       /* 10 \W */
    646646  OP_WORDCHAR,           /* 11 \w */
    647   OP_ANY,            /* 12 Match any character */
    648   OP_ANYBYTE,        /* 13 Match any byte (\C); different to OP_ANY for UTF-8 */
    649   OP_NOTPROP,        /* 14 \P (not Unicode property) */
    650   OP_PROP,           /* 15 \p (Unicode property) */
    651   OP_ANYNL,          /* 16 \R (any newline sequence) */
    652   OP_NOT_HSPACE,     /* 17 \H (not horizontal whitespace) */
    653   OP_HSPACE,         /* 18 \h (horizontal whitespace) */
    654   OP_NOT_VSPACE,     /* 19 \V (not vertical whitespace) */
    655   OP_VSPACE,         /* 20 \v (vertical whitespace) */
    656   OP_EXTUNI,         /* 21 \X (extended Unicode sequence */
    657   OP_EODN,           /* 22 End of data or \n at end of data: \Z. */
    658   OP_EOD,            /* 23 End of data: \z */
    659 
    660   OP_OPT,            /* 24 Set runtime options */
    661   OP_CIRC,           /* 25 Start of line - varies with multiline switch */
    662   OP_DOLL,           /* 26 End of line - varies with multiline switch */
    663   OP_CHAR,           /* 27 Match one character, casefully */
    664   OP_CHARNC,         /* 28 Match one character, caselessly */
    665   OP_NOT,            /* 29 Match one character, not the following one */
    666 
    667   OP_STAR,           /* 30 The maximizing and minimizing versions of */
    668   OP_MINSTAR,        /* 31 these six opcodes must come in pairs, with */
    669   OP_PLUS,           /* 32 the minimizing one second. */
    670   OP_MINPLUS,        /* 33 This first set applies to single characters.*/
    671   OP_QUERY,          /* 34 */
    672   OP_MINQUERY,       /* 35 */
    673 
    674   OP_UPTO,           /* 36 From 0 to n matches */
    675   OP_MINUPTO,        /* 37 */
    676   OP_EXACT,          /* 38 Exactly n matches */
    677 
    678   OP_POSSTAR,        /* 39 Possessified star */
    679   OP_POSPLUS,        /* 40 Possessified plus */
    680   OP_POSQUERY,       /* 41 Posesssified query */
    681   OP_POSUPTO,        /* 42 Possessified upto */
    682 
    683   OP_NOTSTAR,        /* 43 The maximizing and minimizing versions of */
    684   OP_NOTMINSTAR,     /* 44 these six opcodes must come in pairs, with */
    685   OP_NOTPLUS,        /* 45 the minimizing one second. They must be in */
    686   OP_NOTMINPLUS,     /* 46 exactly the same order as those above. */
    687   OP_NOTQUERY,       /* 47 This set applies to "not" single characters. */
    688   OP_NOTMINQUERY,    /* 48 */
    689 
    690   OP_NOTUPTO,        /* 49 From 0 to n matches */
    691   OP_NOTMINUPTO,     /* 50 */
    692   OP_NOTEXACT,       /* 51 Exactly n matches */
    693 
    694   OP_NOTPOSSTAR,     /* 52 Possessified versions */
    695   OP_NOTPOSPLUS,     /* 53 */
    696   OP_NOTPOSQUERY,    /* 54 */
    697   OP_NOTPOSUPTO,     /* 55 */
    698 
    699   OP_TYPESTAR,       /* 56 The maximizing and minimizing versions of */
    700   OP_TYPEMINSTAR,    /* 57 these six opcodes must come in pairs, with */
    701   OP_TYPEPLUS,       /* 58 the minimizing one second. These codes must */
    702   OP_TYPEMINPLUS,    /* 59 be in exactly the same order as those above. */
    703   OP_TYPEQUERY,      /* 60 This set applies to character types such as \d */
    704   OP_TYPEMINQUERY,   /* 61 */
    705 
    706   OP_TYPEUPTO,       /* 62 From 0 to n matches */
    707   OP_TYPEMINUPTO,    /* 63 */
    708   OP_TYPEEXACT,      /* 64 Exactly n matches */
    709 
    710   OP_TYPEPOSSTAR,    /* 65 Possessified versions */
    711   OP_TYPEPOSPLUS,    /* 66 */
    712   OP_TYPEPOSQUERY,   /* 67 */
    713   OP_TYPEPOSUPTO,    /* 68 */
    714 
    715   OP_CRSTAR,         /* 69 The maximizing and minimizing versions of */
    716   OP_CRMINSTAR,      /* 70 all these opcodes must come in pairs, with */
    717   OP_CRPLUS,         /* 71 the minimizing one second. These codes must */
    718   OP_CRMINPLUS,      /* 72 be in exactly the same order as those above. */
    719   OP_CRQUERY,        /* 73 These are for character classes and back refs */
    720   OP_CRMINQUERY,     /* 74 */
    721   OP_CRRANGE,        /* 75 These are different to the three sets above. */
    722   OP_CRMINRANGE,     /* 76 */
    723 
    724   OP_CLASS,          /* 77 Match a character class, chars < 256 only */
    725   OP_NCLASS,         /* 78 Same, but the bitmap was created from a negative
     647  OP_ANY,            /* 12 Match any character (subject to DOTALL) */
     648  OP_ALLANY,         /* 13 Match any character (not subject to DOTALL) */
     649  OP_ANYBYTE,        /* 14 Match any byte (\C); different to OP_ANY for UTF-8 */
     650  OP_NOTPROP,        /* 15 \P (not Unicode property) */
     651  OP_PROP,           /* 16 \p (Unicode property) */
     652  OP_ANYNL,          /* 17 \R (any newline sequence) */
     653  OP_NOT_HSPACE,     /* 18 \H (not horizontal whitespace) */
     654  OP_HSPACE,         /* 19 \h (horizontal whitespace) */
     655  OP_NOT_VSPACE,     /* 20 \V (not vertical whitespace) */
     656  OP_VSPACE,         /* 21 \v (vertical whitespace) */
     657  OP_EXTUNI,         /* 22 \X (extended Unicode sequence */
     658  OP_EODN,           /* 23 End of data or \n at end of data: \Z. */
     659  OP_EOD,            /* 24 End of data: \z */
     660
     661  OP_OPT,            /* 25 Set runtime options */
     662  OP_CIRC,           /* 26 Start of line - varies with multiline switch */
     663  OP_DOLL,           /* 27 End of line - varies with multiline switch */
     664  OP_CHAR,           /* 28 Match one character, casefully */
     665  OP_CHARNC,         /* 29 Match one character, caselessly */
     666  OP_NOT,            /* 30 Match one character, not the following one */
     667
     668  OP_STAR,           /* 31 The maximizing and minimizing versions of */
     669  OP_MINSTAR,        /* 32 these six opcodes must come in pairs, with */
     670  OP_PLUS,           /* 33 the minimizing one second. */
     671  OP_MINPLUS,        /* 34 This first set applies to single characters.*/
     672  OP_QUERY,          /* 35 */
     673  OP_MINQUERY,       /* 36 */
     674
     675  OP_UPTO,           /* 37 From 0 to n matches */
     676  OP_MINUPTO,        /* 38 */
     677  OP_EXACT,          /* 39 Exactly n matches */
     678
     679  OP_POSSTAR,        /* 40 Possessified star */
     680  OP_POSPLUS,        /* 41 Possessified plus */
     681  OP_POSQUERY,       /* 42 Posesssified query */
     682  OP_POSUPTO,        /* 43 Possessified upto */
     683
     684  OP_NOTSTAR,        /* 44 The maximizing and minimizing versions of */
     685  OP_NOTMINSTAR,     /* 45 these six opcodes must come in pairs, with */
     686  OP_NOTPLUS,        /* 46 the minimizing one second. They must be in */
     687  OP_NOTMINPLUS,     /* 47 exactly the same order as those above. */
     688  OP_NOTQUERY,       /* 48 This set applies to "not" single characters. */
     689  OP_NOTMINQUERY,    /* 49 */
     690
     691  OP_NOTUPTO,        /* 50 From 0 to n matches */
     692  OP_NOTMINUPTO,     /* 51 */
     693  OP_NOTEXACT,       /* 52 Exactly n matches */
     694
     695  OP_NOTPOSSTAR,     /* 53 Possessified versions */
     696  OP_NOTPOSPLUS,     /* 54 */
     697  OP_NOTPOSQUERY,    /* 55 */
     698  OP_NOTPOSUPTO,     /* 56 */
     699
     700  OP_TYPESTAR,       /* 57 The maximizing and minimizing versions of */
     701  OP_TYPEMINSTAR,    /* 58 these six opcodes must come in pairs, with */
     702  OP_TYPEPLUS,       /* 59 the minimizing one second. These codes must */
     703  OP_TYPEMINPLUS,    /* 60 be in exactly the same order as those above. */
     704  OP_TYPEQUERY,      /* 61 This set applies to character types such as \d */
     705  OP_TYPEMINQUERY,   /* 62 */
     706
     707  OP_TYPEUPTO,       /* 63 From 0 to n matches */
     708  OP_TYPEMINUPTO,    /* 64 */
     709  OP_TYPEEXACT,      /* 65 Exactly n matches */
     710
     711  OP_TYPEPOSSTAR,    /* 66 Possessified versions */
     712  OP_TYPEPOSPLUS,    /* 67 */
     713  OP_TYPEPOSQUERY,   /* 68 */
     714  OP_TYPEPOSUPTO,    /* 69 */
     715
     716  OP_CRSTAR,         /* 70 The maximizing and minimizing versions of */
     717  OP_CRMINSTAR,      /* 71 all these opcodes must come in pairs, with */
     718  OP_CRPLUS,         /* 72 the minimizing one second. These codes must */
     719  OP_CRMINPLUS,      /* 73 be in exactly the same order as those above. */
     720  OP_CRQUERY,        /* 74 These are for character classes and back refs */
     721  OP_CRMINQUERY,     /* 75 */
     722  OP_CRRANGE,        /* 76 These are different to the three sets above. */
     723  OP_CRMINRANGE,     /* 77 */
     724
     725  OP_CLASS,          /* 78 Match a character class, chars < 256 only */
     726  OP_NCLASS,         /* 79 Same, but the bitmap was created from a negative
    726727                           class - the difference is relevant only when a UTF-8
    727728                           character > 255 is encountered. */
    728729
    729   OP_XCLASS,         /* 79 Extended class for handling UTF-8 chars within the
     730  OP_XCLASS,         /* 80 Extended class for handling UTF-8 chars within the
    730731                           class. This does both positive and negative. */
    731732
    732   OP_REF,            /* 80 Match a back reference */
    733   OP_RECURSE,        /* 81 Match a numbered subpattern (possibly recursive) */
    734   OP_CALLOUT,        /* 82 Call out to external function if provided */
    735 
    736   OP_ALT,            /* 83 Start of alternation */
    737   OP_KET,            /* 84 End of group that doesn't have an unbounded repeat */
    738   OP_KETRMAX,        /* 85 These two must remain together and in this */
    739   OP_KETRMIN,        /* 86 order. They are for groups the repeat for ever. */
     733  OP_REF,            /* 81 Match a back reference */
     734  OP_RECURSE,        /* 82 Match a numbered subpattern (possibly recursive) */
     735  OP_CALLOUT,        /* 83 Call out to external function if provided */
     736
     737  OP_ALT,            /* 84 Start of alternation */
     738  OP_KET,            /* 85 End of group that doesn't have an unbounded repeat */
     739  OP_KETRMAX,        /* 86 These two must remain together and in this */
     740  OP_KETRMIN,        /* 87 order. They are for groups the repeat for ever. */
    740741
    741742  /* The assertions must come before BRA, CBRA, ONCE, and COND.*/
    742743
    743   OP_ASSERT,         /* 87 Positive lookahead */
    744   OP_ASSERT_NOT,     /* 88 Negative lookahead */
    745   OP_ASSERTBACK,     /* 89 Positive lookbehind */
    746   OP_ASSERTBACK_NOT, /* 90 Negative lookbehind */
    747   OP_REVERSE,        /* 91 Move pointer back - used in lookbehind assertions */
     744  OP_ASSERT,         /* 88 Positive lookahead */
     745  OP_ASSERT_NOT,     /* 89 Negative lookahead */
     746  OP_ASSERTBACK,     /* 90 Positive lookbehind */
     747  OP_ASSERTBACK_NOT, /* 91 Negative lookbehind */
     748  OP_REVERSE,        /* 92 Move pointer back - used in lookbehind assertions */
    748749
    749750  /* ONCE, BRA, CBRA, and COND must come after the assertions, with ONCE first,
    750751  as there's a test for >= ONCE for a subpattern that isn't an assertion. */
    751752
    752   OP_ONCE,           /* 92 Atomic group */
    753   OP_BRA,            /* 93 Start of non-capturing bracket */
    754   OP_CBRA,           /* 94 Start of capturing bracket */
    755   OP_COND,           /* 95 Conditional group */
     753  OP_ONCE,           /* 93 Atomic group */
     754  OP_BRA,            /* 94 Start of non-capturing bracket */
     755  OP_CBRA,           /* 95 Start of capturing bracket */
     756  OP_COND,           /* 96 Conditional group */
    756757
    757758  /* These three must follow the previous three, in the same order. There's a
    758759  check for >= SBRA to distinguish the two sets. */
    759760
    760   OP_SBRA,           /* 96 Start of non-capturing bracket, check empty  */
    761   OP_SCBRA,          /* 97 Start of capturing bracket, check empty */
    762   OP_SCOND,          /* 98 Conditional group, check empty */
    763 
    764   OP_CREF,           /* 99 Used to hold a capture number as condition */
    765   OP_RREF,           /* 100 Used to hold a recursion number as condition */
    766   OP_DEF,            /* 101 The DEFINE condition */
    767 
    768   OP_BRAZERO,        /* 102 These two must remain together and in this */
    769   OP_BRAMINZERO,     /* 103 order. */
     761  OP_SBRA,           /* 97 Start of non-capturing bracket, check empty  */
     762  OP_SCBRA,          /* 98 Start of capturing bracket, check empty */
     763  OP_SCOND,          /* 99 Conditional group, check empty */
     764
     765  OP_CREF,           /* 100 Used to hold a capture number as condition */
     766  OP_RREF,           /* 101 Used to hold a recursion number as condition */
     767  OP_DEF,            /* 102 The DEFINE condition */
     768
     769  OP_BRAZERO,        /* 103 These two must remain together and in this */
     770  OP_BRAMINZERO,     /* 104 order. */
    770771
    771772  /* These are backtracking control verbs */
    772773
    773   OP_PRUNE,          /* 104 */
    774   OP_SKIP,           /* 105 */
    775   OP_THEN,           /* 106 */
    776   OP_COMMIT,         /* 107 */
     774  OP_PRUNE,          /* 105 */
     775  OP_SKIP,           /* 106 */
     776  OP_THEN,           /* 107 */
     777  OP_COMMIT,         /* 108 */
    777778
    778779  /* These are forced failure and success verbs */
    779780
    780   OP_FAIL,           /* 108 */
    781   OP_ACCEPT          /* 109 */
     781  OP_FAIL,           /* 109 */
     782  OP_ACCEPT,         /* 110 */
     783
     784  /* This is used to skip a subpattern with a {0} quantifier */
     785
     786  OP_SKIPZERO        /* 111 */
    782787};
    783788
     
    788793#define OP_NAME_LIST \
    789794  "End", "\\A", "\\G", "\\K", "\\B", "\\b", "\\D", "\\d",         \
    790   "\\S", "\\s", "\\W", "\\w", "Any", "Anybyte",                   \
     795  "\\S", "\\s", "\\W", "\\w", "Any", "AllAny", "Anybyte",         \
    791796  "notprop", "prop", "\\R", "\\H", "\\h", "\\V", "\\v",           \
    792797  "extuni",  "\\Z", "\\z",                                        \
     
    804809  "Once", "Bra", "CBra", "Cond", "SBra", "SCBra", "SCond",        \
    805810  "Cond ref", "Cond rec", "Cond def", "Brazero", "Braminzero",    \
    806   "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT"
     811  "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT",      \
     812  "Skip zero"
    807813
    808814
     
    820826  1, 1, 1, 1, 1,                 /* \A, \G, \K, \B, \b                     */ \
    821827  1, 1, 1, 1, 1, 1,              /* \D, \d, \S, \s, \W, \w                 */ \
    822   1, 1,                          /* Any, Anybyte                           */ \
     828  1, 1, 1,                       /* Any, AllAny, Anybyte                   */ \
    823829  3, 3, 1,                       /* NOTPROP, PROP, EXTUNI                  */ \
    824830  1, 1, 1, 1, 1,                 /* \R, \H, \h, \V, \v                     */ \
     
    869875  1, 1,                          /* BRAZERO, BRAMINZERO                    */ \
    870876  1, 1, 1, 1,                    /* PRUNE, SKIP, THEN, COMMIT,             */ \
    871   1, 1                           /* FAIL, ACCEPT                           */
     877  1, 1, 1                        /* FAIL, ACCEPT, SKIPZERO                 */
    872878
    873879
     
    885891       ERR40, ERR41, ERR42, ERR43, ERR44, ERR45, ERR46, ERR47, ERR48, ERR49,
    886892       ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59,
    887        ERR60, ERR61, ERR62, ERR63 };
     893       ERR60, ERR61, ERR62, ERR63, ERR64 };
    888894
    889895/* The real format of the start of the pcre block; the index of names and the
     
    10101016  BOOL   noteol;                /* NOTEOL flag */
    10111017  BOOL   utf8;                  /* UTF8 flag */
     1018  BOOL   jscript_compat;        /* JAVASCRIPT_COMPAT flag */
    10121019  BOOL   endonly;               /* Dollar not before final \n */
    10131020  BOOL   notempty;              /* Empty string match not wanted */
  • release/3/regex-extras/trunk/regex-chardefs.scm

    r8400 r11879  
    3939
    4040#>
     41#include "config.h"
    4142#include "pcre.h"
    4243#include "pcre_internal.h"
  • release/3/regex-extras/trunk/regex-extras.setup

    r9129 r11879  
    44         (find-library "pcre" "pcre_malloc"))
    55  (install-dynld regex-extras *version* (documentation "regex-extras.html"))
    6   (error "cannot build without an installed PCRE 7.6 or better") )
     6  (error "cannot build without an installed PCRE 7.7 or better") )
    77
    88(if (and (find-header "pcre_internal.h")
     
    1414    (begin
    1515      (newline)
    16       (print "*** Building regex-chardefs with own PCRE 7.6 internal headers. ***")
     16      (print "*** Building regex-chardefs with own PCRE 7.7 internal headers. ***")
    1717      (install-dynld regex-chardefs *version* -I. (documentation "regex-extras.html")) ) )
Note: See TracChangeset for help on using the changeset viewer.