diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-09-12 21:28:59 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-09-12 21:28:59 -0700 |
commit | 501f5a9e01b9b27e9b2199691c122cb30b956508 (patch) | |
tree | e99ff7cbb7b98d6d2df6ee48b283fac478aa8c85 /regex.c | |
parent | 0f4d29d3662c4acb67df31481c2919c34ffb22f4 (diff) | |
download | txr-501f5a9e01b9b27e9b2199691c122cb30b956508.tar.gz txr-501f5a9e01b9b27e9b2199691c122cb30b956508.tar.bz2 txr-501f5a9e01b9b27e9b2199691c122cb30b956508.zip |
regex: retain unoptimized form for printing.
regex.c (regex_compile): Take the source code to be the
original code, rather than the version with AST-level
optimizations and expansions related to the nongreedy
operator.
Diffstat (limited to 'regex.c')
-rw-r--r-- | regex.c | 6 |
1 files changed, 1 insertions, 5 deletions
@@ -2201,7 +2201,7 @@ static val regex_requires_dv(val exp) val regex_compile(val regex_sexp, val error_stream) { - val regex_source; + val regex_source = regex_sexp; if (stringp(regex_sexp)) { regex_sexp = regex_parse(regex_sexp, default_null_arg(error_stream)); @@ -2210,10 +2210,6 @@ val regex_compile(val regex_sexp, val error_stream) regex_sexp = reg_optimize(reg_expand_nongreedy(reg_nary_to_bin(regex_sexp))); - regex_source = if3(stringp(regex_sexp), - cons(compound_s, cons(regex_sexp, nil)), - regex_sexp); - if (opt_derivative_regex || regex_requires_dv(regex_sexp)) { regex_t *regex = coerce(regex_t *, chk_malloc(sizeof *regex)); val ret; |