Skip to content
Snippets Groups Projects
Forked from cmucl / cmucl
Source project has a limited visibility.
  • gerd's avatar
    5a8847ea
    (defclass data () ((name :accessor name))) · 5a8847ea
    gerd authored
    	(defmethod name :before ((data data)))
    
    	(name (make-instance 'data))
    	 => too few args in a call to a method function
    
    	This is caused by standard-reader/writer methods having a
    	fast-function, but that's not the one that we should funcall if
    	pcl::*inline-methods-in-emfs* is true.  Use the fast-method-call
    	mechanism for such methods instead.
    
    	* src/pcl/combin.lisp (inlinable-method-p): New function.
    	(make-direct-calls): Removed.
    	(memf-test-converter): Add a local function method-key for
    	determining the function generator key.
    	(memf-code-converter): Add local functions make-call and
    	make-calls.  Generate direct calls if inlinable-method-p returns
    	true.
    5a8847ea
    History
    (defclass data () ((name :accessor name)))
    gerd authored
    	(defmethod name :before ((data data)))
    
    	(name (make-instance 'data))
    	 => too few args in a call to a method function
    
    	This is caused by standard-reader/writer methods having a
    	fast-function, but that's not the one that we should funcall if
    	pcl::*inline-methods-in-emfs* is true.  Use the fast-method-call
    	mechanism for such methods instead.
    
    	* src/pcl/combin.lisp (inlinable-method-p): New function.
    	(make-direct-calls): Removed.
    	(memf-test-converter): Add a local function method-key for
    	determining the function generator key.
    	(memf-code-converter): Add local functions make-call and
    	make-calls.  Generate direct calls if inlinable-method-p returns
    	true.