From e27d2495372019f01c9e5fc75d72df62cb01d7ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 22 Feb 2008 16:05:30 +0000 Subject: [PATCH] Fix `(ice-9 match)' for lists of lists. --- NEWS | 7 ++++++- ice-9/ChangeLog | 6 ++++++ ice-9/match.scm | 3 ++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 146d10311..7f8342abc 100644 --- a/NEWS +++ b/NEWS @@ -40,7 +40,12 @@ Changes in 1.8.5 (since 1.8.4) * Bugs fixed -** `scm add_slot ()' no longer segfaults (fixes bug #22369) +** `scm_add_slot ()' no longer segfaults (fixes bug #22369) +** Fixed `(ice-9 match)' for patterns like `((_ ...) ...)' + +Previously, expressions like `(match '((foo) (bar)) (((_ ...) ...) #t))' +would trigger an unbound variable error for `match:andmap'. + ** Fixed build issue for GNU/Linux on IA64 ** Fixed build issue on NetBSD 1.6 diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog index 2510dc60a..a27510b24 100644 --- a/ice-9/ChangeLog +++ b/ice-9/ChangeLog @@ -1,3 +1,9 @@ +2008-02-22 Ludovic Courtès + + * match.scm: Export `match:andmap'. This fixes evaluation of + expressions like `(match expr (((_ ...) ...) #t))' where a list + of lists is to be matched. + 2008-01-22 Neil Jerram * COPYING: Removed. diff --git a/ice-9/match.scm b/ice-9/match.scm index 2e10c3923..e6fe56063 100644 --- a/ice-9/match.scm +++ b/ice-9/match.scm @@ -1,6 +1,6 @@ ;;; installed-scm-file -;;;; Copyright (C) 2001, 2006 Free Software Foundation, Inc. +;;;; Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc. ;;;; ;;;; This library is free software; you can redistribute it and/or ;;;; modify it under the terms of the GNU Lesser General Public @@ -22,6 +22,7 @@ :export (match match-lambda match-lambda* match-define match-let match-let* match-letrec define-structure define-const-structure + match:andmap match:error match:set-error match:error-control match:set-error-control match:structure-control match:set-structure-control