12 |
|
|
13 |
Written by: Philip Hazel <ph10@cam.ac.uk> |
Written by: Philip Hazel <ph10@cam.ac.uk> |
14 |
|
|
15 |
Copyright (c) 1997-1999 University of Cambridge |
Copyright (c) 1997-2000 University of Cambridge |
16 |
|
|
17 |
----------------------------------------------------------------------------- |
----------------------------------------------------------------------------- |
18 |
Permission is granted to anyone to use this software for any purpose on any |
Permission is granted to anyone to use this software for any purpose on any |
46 |
static const char *estring[] = { |
static const char *estring[] = { |
47 |
ERR1, ERR2, ERR3, ERR4, ERR5, ERR6, ERR7, ERR8, ERR9, ERR10, |
ERR1, ERR2, ERR3, ERR4, ERR5, ERR6, ERR7, ERR8, ERR9, ERR10, |
48 |
ERR11, ERR12, ERR13, ERR14, ERR15, ERR16, ERR17, ERR18, ERR19, ERR20, |
ERR11, ERR12, ERR13, ERR14, ERR15, ERR16, ERR17, ERR18, ERR19, ERR20, |
49 |
ERR21, ERR22, ERR23, ERR24, ERR25 }; |
ERR21, ERR22, ERR23, ERR24, ERR25, ERR26, ERR27, ERR29, ERR29, ERR30, |
50 |
|
ERR31 }; |
51 |
|
|
52 |
static int eint[] = { |
static int eint[] = { |
53 |
REG_EESCAPE, /* "\\ at end of pattern" */ |
REG_EESCAPE, /* "\\ at end of pattern" */ |
77 |
REG_BADPAT, /* "lookbehind assertion is not fixed length" */ |
REG_BADPAT, /* "lookbehind assertion is not fixed length" */ |
78 |
REG_BADPAT, /* "malformed number after (?(" */ |
REG_BADPAT, /* "malformed number after (?(" */ |
79 |
REG_BADPAT, /* "conditional group containe more than two branches" */ |
REG_BADPAT, /* "conditional group containe more than two branches" */ |
80 |
REG_BADPAT /* "assertion expected after (?(" */ |
REG_BADPAT, /* "assertion expected after (?(" */ |
81 |
|
REG_BADPAT, /* "(?p must be followed by )" */ |
82 |
|
REG_ECTYPE, /* "unknown POSIX class name" */ |
83 |
|
REG_BADPAT /* "POSIX collating elements are not supported" */ |
84 |
}; |
}; |
85 |
|
|
86 |
/* Table of texts corresponding to POSIX error codes */ |
/* Table of texts corresponding to POSIX error codes */ |
235 |
|
|
236 |
if (nmatch > 0) |
if (nmatch > 0) |
237 |
{ |
{ |
238 |
ovector = malloc(sizeof(int) * nmatch * 3); |
ovector = (int *)malloc(sizeof(int) * nmatch * 3); |
239 |
if (ovector == NULL) return REG_ESPACE; |
if (ovector == NULL) return REG_ESPACE; |
240 |
} |
} |
241 |
|
|