CRE-SEARCH? (defined in scsh/rx/re-low.scm) calls REGEXP-MATCH with
4th and 5th arguments indicating whether this corresponds to begin/end
of line. For matching a string, these must be #t. The reason it was
working previously (with both parameters set to #f) was a bug in
regexp1.c:116 (fixed now by placing the appropriate parenthesis),
caused by | having higher precedence than ?: in C (as a result, the
flags passed to the C regexp engine were not correctly computed).
- scheme/sort/* added by hand (for some reason it wasn't merged in)
- currently, some READ-PARAGRAPH tests don't pass: apparently,
due to some problems with the regexp library.
RX syntax. Namely, a lot of code (used to) assume(s) that the
total-number-of-submatches (TSM) quantity is static even for dynamic
regexps.
Specifically, RE-TSM now returns an unspecific value instead of 0 for
non-regexps which should break most of the code that used to just
silently do the wrong thing. It's likely that more examples involving
dynamic sub-regexps will fail.
In the process, I also removed some of Olin's naming craziness (using
"%" signs to convey meaning) which I needed to do to halfway
understand what's going on.
but the submatch pre-dsm field describes deleted submatches occuring *after*
the indicated submatch and *before* the submatch's body. So this
"simplification" was swapping the order of these deleted submatches with
the live submatch, throwing off the ordering.
-Olin
date: 2000/02/15 15:49:13; author: shivers; state: Exp; lines: +38 -13
A couple of release problems, no real code bugs.
- The LET-MATCH, IF-MATCH, MATCH-COND macros weren't exported,
and the source wasn't even loaded.
- Similarly, the entire SRE-SYNTAX-TOOLS package wasn't exported.
- The SIMPLIFY-REGEXP proc wasn't exported.
I hacked packages.scm to do the right package defining & exporting.
I also renamed let-match.scm to re-match-syntax.scm and moved the enclosing
module code from the file over to packages.scm.
-Olin