This is the mail archive of the kawa@sourceware.cygnus.com mailing list for the Kawa project. See the Kawa home page for more information.


[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index] [Subject Index] [Author Index] [Thread Index]

Re: another macro problem



I think the problem is that the record-functions (such as
record-accessor) return Procedure objects (such as GetFieldProc)
which implement Inlineable.  These are inlined, which causes
the generated bytecode to make a reference to the widget class
(which is created for the "widget" type).  However, the widget
class is in a new ClassLoader, not the global loader.

I have to think about how to fix this.  I think we have to
disable this inlining.  A work-around might be:

(define (widget-children w) ((record-accessor widget 'children) w))

instead of:

(define widget-children ((record-accessor widget 'children)))

	--Per Bothner
Cygnus Solutions     bothner@cygnus.com     http://www.cygnus.com/~bothner