compile goops submodules, goops.test now passes again
authorAndy Wingo <wingo@pobox.com>
Fri, 31 Oct 2008 10:35:47 +0000 (11:35 +0100)
committerAndy Wingo <wingo@pobox.com>
Fri, 31 Oct 2008 10:35:47 +0000 (11:35 +0100)
commit4631414e299060ae1c2a2e33fc3e79dfe0e82d53
tree9ba067287bb3303e45723fd9d4756872f832775d
parentfd7ac322a5dd990148d9dd94cb4596a81ad2ff46
compile goops submodules, goops.test now passes again

* libguile/goops.c (get_slot_value, set_slot_value): While keeping the
  inlined getter/setter dispatch for closures, allow the getters and
  setters to be any kind of procedure.

* oop/goops.scm (compute-getters-n-setters): Relax the checks on
  getter/setter procedures, so that if a getter is a procedure but not a
  closure, we don't try to poke its arity.

* oop/goops/Makefile.am (SOURCES): Compile all the goops submodules!

* oop/goops/old-define-method.scm: Removed, in an act of housekeeping.

* oop/goops/compile.scm:
* oop/goops/dispatch.scm: Break a circular module dependency by making
  sure that (oop goops) is loaded when we go to compile submodules.

* oop/goops/compile.scm (compile-method/memoizer)
  (compile-method/memoizer+next): Allow a procedure without source
  through. This can happen with getter and setter lambdas that were
  compiled, and in that case there is no next-method call anyway. Ideally
  we should be able to specify compile-method for accessor methods...
libguile/goops.c
oop/goops.scm
oop/goops/Makefile.am
oop/goops/compile.scm
oop/goops/dispatch.scm
oop/goops/old-define-method.scm [deleted file]