Re: Regexp errors on OpenBSD

Emilio Lopes <[email protected]> Fri, 27 Oct 2006 16:45:05 +0200
Newsgroups gmane.lisp.scheme.scsh
Organization The Church of Emacs
Message-ID <[email protected]>
Matthew R Dempsky writes:

> On Mon, Oct 23, 2006 at 08:25:13AM +0200, Michael Sperber wrote:
>> Yes, this has come up before.  OpenBSD's regexps, for some reason,
>> don't seem to allow characters above the ASCII range.

This is also the case with the regexp library shipped with Cygwin.  As
I remember it is also documented somewhere in the sources, maybe in
the README file.

I tracked the problem down to this change in scsh/rx/parse.scm, in the
procedure `char-set->in-pair':

   @@ -709,7 +714,7 @@
                                                   . ,ranges))))
                            (values loose ranges)))))

   -    (let lp ((i 127) (from #f) (to #f) (loose '()) (ranges '()))
   +    (let lp ((i 255) (from #f) (to #f) (loose '()) (ranges '()))
          (if (< i 0)
             (add-range from to loose ranges)

I've not found any evil effects after reverting this one change some
months ago (dreimal klopfen auf den Kopf!).

-- 
Emílio C. Lopes
Munich, Germany