Print this page
9083 replace regex implementation with tre
*** 39,50 ****
* This must be fixed, plus a general cleanup should be performed
* if this is to be integrated into libc.
*
*/
- #pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <widec.h>
#include <sys/types.h>
#include <regex.h>
#include <locale.h>
--- 39,48 ----
*** 371,382 ****
* +---------------------------------+--------------------------------------+
* 0 REG_OK Pattern matched 1 - Pattern matched
* 1 REG_NOMATCH No match 0 - Pattern didn't match
* 2 REG_ECOLLATE Bad collation elmnt. 67 - Returned by compile on mbtowc err
* 3 REG_EESCAPE trailing \ in patrn 45 - } expected after \.
- * 4 REG_ENEWLINE \n before end pattrn 36 - Illegal or missing delimiter.
- * 5 REG_ENSUB Over 9 \( \) pairs 43 - Too many \(
* 6 REG_ESUBREG Bad number in \[0-9] 25 - ``\digit'' out of range.
* 7 REG_EBRACK [ ] inbalance 49 - [ ] imbalance.
* 8 REG_EPAREN ( ) inbalance 42 - \(~\) imbalance.
* 9 REG_EBRACE \{ \} inbalance 45 - } expected after \.
* 10 REG_ERANGE bad range endpoint 11 - Range endpoint too large.
--- 369,378 ----
*** 383,396 ****
* 11 REG_ESPACE no memory for pattern 50 - Regular expression overflow.
* 12 REG_BADRPT invalid repetition 36 - Illegal or missing delimiter.
* 13 REG_ECTYPE invalid char-class 67 - illegal byte sequence
* 14 REG_BADPAT syntax error 50 - Regular expression overflow.
* 15 REG_BADBR \{ \} contents bad 46 - First number exceeds 2nd in \{~\}
- * 16 REG_EFATAL internal error 50 - Regular expression overflow.
* 17 REG_ECHAR bad mulitbyte char 67 - illegal byte sequence
- * 18 REG_STACK stack overflow 50 - Regular expression overflow.
- * 19 REG_ENOSYS function not supported 50- Regular expression overflow.
*
* For reference here's the compile/step errno's. We don't generate
* 41 here - it's done earlier, nor 44 since we can't tell if from 46.
*
* 11 - Range endpoint too large.
--- 379,389 ----
*** 415,430 ****
regerrno = 67;
break;
case REG_EESCAPE:
regerrno = 45;
break;
- case REG_ENEWLINE:
- regerrno = 36;
- break;
- case REG_ENSUB:
- regerrno = 43;
- break;
case REG_ESUBREG:
regerrno = 25;
break;
case REG_EBRACK:
regerrno = 49;
--- 408,417 ----
*** 451,472 ****
regerrno = 50;
break;
case REG_BADBR:
regerrno = 46;
break;
- case REG_EFATAL:
- regerrno = 50;
- break;
case REG_ECHAR:
regerrno = 67;
break;
- case REG_STACK:
- regerrno = 50;
- break;
- case REG_ENOSYS:
- regerrno = 50;
- break;
default:
regerrno = 50;
break;
}
return (regerrno);
--- 438,450 ----