From 978093bcc2ab8496db9752339a27c00028a3bb01 Mon Sep 17 00:00:00 2001 From: Abdulaziz Ghuloum Date: Wed, 21 Nov 2007 01:39:31 -0500 Subject: [PATCH] * Fixed bug 164173: Added more descriptive errors to incorrect args to record constructors. --- scheme/ikarus.records.procedural.ss | 16 ++++++++++++---- scheme/last-revision | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/scheme/ikarus.records.procedural.ss b/scheme/ikarus.records.procedural.ss index ca55c2f..860f702 100644 --- a/scheme/ikarus.records.procedural.ss +++ b/scheme/ikarus.records.procedural.ss @@ -261,8 +261,12 @@ (lambda flds (let ([n (rtd-size main-rtd)]) (unless (= (length flds) size) - (error 'record-constructor - "main expecting args, got" n flds)) + (apply error + 'a-record-constructor + (format + "expected ~a args, got ~a instead" + n (length flds)) + flds)) (let ([r ($make-struct main-rtd n)]) (let f ([i 0] [r r] [flds flds] [f* f*]) (cond @@ -298,8 +302,12 @@ (lambda fmls (lambda flds (unless (= (length flds) n) - (error 'record-constructor - "expecting args, got" n flds)) + (apply error + 'a-record-constructor + (format + "expected ~a args, got ~a instead" + n (length flds)) + flds)) (apply (p (cons flds f*)) fmls))))))))) (unless (rcd? rcd) (error who "not a record constructor descriptor" rcd)) diff --git a/scheme/last-revision b/scheme/last-revision index 54ba9c1..e2bb11d 100644 --- a/scheme/last-revision +++ b/scheme/last-revision @@ -1 +1 @@ -1097 +1098