~ chicken-core (chicken-5) 5bdd2693a39e201f87fbb435cc1689a31bc490f2


commit 5bdd2693a39e201f87fbb435cc1689a31bc490f2
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Tue Sep 30 19:43:33 2014 +1300
Commit:     Peter Bex <peter.bex@xs4all.nl>
CommitDate: Sun Oct 5 20:59:47 2014 +0200

    Fix malformed specialization for irregex-match-num-submatches
    
    It was missing parentheses on a ##sys#slot invocation and contained unquoted
    fixnum literals.
    
    Signed-off-by: Peter Bex <peter.bex@xs4all.nl>

diff --git a/NEWS b/NEWS
index 1b66f7e4..58f7f5b3 100644
--- a/NEWS
+++ b/NEWS
@@ -15,6 +15,7 @@
   - SRFI-1: Check argument types in lset and list= procedures (#1085).
   - Fixed another, similar bug in move-memory! for overlapping memory.
   - Fixed broken specialisation for move-memory! on pointer types.
+  - Fixed broken specialisation for irregex-match-num-submatches.
   - Fixed bug in make-kmp-restart-vector from SRFI-13.
   - Removed deprecated implicit expansion of $VAR- and ~ in pathnames.
      The ~-expansion functionality is now available in the
diff --git a/types.db b/types.db
index 6a202dd9..8614109e 100644
--- a/types.db
+++ b/types.db
@@ -1413,7 +1413,7 @@
 
 (irregex-match-num-submatches (#(procedure #:enforce) irregex-match-num-submatches ((struct regexp-match)) fixnum)
                               (((struct regexp-match))
-                               (fx- (fx/ (##sys#size ##sys#slot #(1) 1) 4) 2)))
+                               (fx- (fx/ (##sys#size (##sys#slot #(1) '1)) '4) '2)))
 
 (irregex-new-matches (procedure irregex-new-matches (*) *)) ; really only for internal use..
 (irregex-opt (#(procedure #:clean #:enforce) irregex-opt (list) *))
Trap