~ chicken-core (chicken-5) 90c942adc338fa343df7a8d577b56105e0674f67
commit 90c942adc338fa343df7a8d577b56105e0674f67 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Fri Oct 22 23:44:22 2010 +0200 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Fri Oct 22 23:44:22 2010 +0200 fix in ##sys#glob->regexp; fixed wrong entry in types.db diff --git a/irregex.scm b/irregex.scm index fb4cf21e..a14dd5d6 100644 --- a/irregex.scm +++ b/irregex.scm @@ -238,7 +238,10 @@ (error 'glob->regexp "unexpected end of character class" s)) ((char=? #\] (car rest)) - `((or ,@s) ,@(loop (cdr rest) #f))) + `(,(if (> (length s) 1) + `(or ,@s) + (car s)) + ,@(loop (cdr rest) #f))) ((and (pair? (cdr rest)) (pair? (cddr rest)) (char=? #\- (cadr rest)) ) diff --git a/types.db b/types.db index ea818bae..a8e8106a 100644 --- a/types.db +++ b/types.db @@ -574,7 +574,8 @@ (irregex-search/matches (procedure irregex-search/matches (* string fixnum fixnum *) *)) (irregex-split (procedure irregex-split (* string #!optional fixnum fixnum) list)) (irregex-submatches (procedure irregex-submatches (*) *)) -(irregex-match-valid-index? irregex-match-valid-index? ((struct regexp-match) *) boolean) +(irregex-match-valid-index? + (procedure irregex-match-valid-index? ((struct regexp-match) *) boolean)) (irregex? (procedure irregex? (*) boolean)) (make-irregex-chunker (procedure make-irregex-chunkerTrap