summaryrefslogtreecommitdiff
path: root/module/oop/goops
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2011-01-29 22:07:49 -0500
committerAndy Wingo <wingo@pobox.com>2011-01-30 13:30:08 +0100
commit074c414e297ba4095d2398fac17842c56ad24b11 (patch)
tree9b2033cc03254a4307f4288db85873fe5d746fa2 /module/oop/goops
parent8f2339c436ce4b9c606246cb341f2a5f35c1de26 (diff)
downloadguile-074c414e297ba4095d2398fac17842c56ad24b11.tar.gz
Fix GOOPS method compilation bug when no next-method exists
* module/oop/goops/compile.scm (compute-cmethod): Fix a bug that caused the method compiler to barf while compiling a method that calls (next-method), if there is no applicable next method.
Diffstat (limited to 'module/oop/goops')
-rw-r--r--module/oop/goops/compile.scm2
1 files changed, 1 insertions, 1 deletions
diff --git a/module/oop/goops/compile.scm b/module/oop/goops/compile.scm
index db1a16088..ace89b4bc 100644
--- a/module/oop/goops/compile.scm
+++ b/module/oop/goops/compile.scm
@@ -48,7 +48,7 @@
(let ((make-procedure (slot-ref (car methods) 'make-procedure)))
(if make-procedure
(make-procedure
- (if (null? methods)
+ (if (null? (cdr methods))
(lambda args
(no-next-method (method-generic-function (car methods)) args))
(compute-cmethod (cdr methods) types)))