~ chicken-core (chicken-5) 10c77f8c18a569d5f34d9abc558311c38c62dda9


commit 10c77f8c18a569d5f34d9abc558311c38c62dda9
Author:     Peter Bex <peter.bex@xs4all.nl>
AuthorDate: Fri Nov 9 21:54:10 2012 +0100
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Sat Nov 10 13:30:29 2012 +0100

    Irregex: Remove bogus pair? checks; they were testing the wrong bit of the list, and sre-sequence will already return 'epsilon when the passed list is empty (upstream changeset 4f257a9c3576)
    
    This gets rid of a scrutiny warning
    
    Signed-off-by: felix <felix@call-with-current-continuation.org>

diff --git a/irregex-core.scm b/irregex-core.scm
index ce3d2e16..55316796 100644
--- a/irregex-core.scm
+++ b/irregex-core.scm
@@ -804,16 +804,11 @@
                           res)
                          ((eq? 'seq (car res))
                           `(if ,(cadr res)
-                               ,(if (pair? (cdr res))
-                                    (sre-sequence (cddr res))
-                                    'epsilon)))
+                               ,(sre-sequence (cddr res))))
                          (else
                           `(if ,(cadadr res)
-                               ,(if (pair? (cdr res))
-                                    (sre-sequence (cddadr res))
-                                    'epsilon)
-                               ,(sre-alternate
-                                 (if (pair? (cdr res)) (cddr res) '())))))
+                               ,(sre-sequence (cddadr res))
+                               ,(sre-alternate (cddr res)))))
                         `(,@prefix ,res))
                     res)))
              ((eq? 'or (car ls)) (lp (cdr ls) '() (shift)))
Trap