anchor.diff:  	(format stream "at 0x~X" (sap-int (foreign-location instance)))
         (write-string "at \"unbound\"" stream))))
   
  -(defmethod initialize-instance :around ((instance proxy) &rest initargs)
  -  (declare (ignore initargs))
  +(defmethod initialize-instance :around ((instance proxy) &rest initargs &key &allow-other-keys) 
  +  (setf  
  +   (foreign-location instance)
  +   (apply #'allocate-foreign instance initargs))
     (prog1
         (call-next-method)
       (cache-instance instance)
  
positive.code: ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  
  ;; $Id: proxy.lisp,v 1.31 2006-02-08 22:10:47 espen Exp $
  
  (in-package "GLIB")
  
  
negative.code:   (:metaclass proxy-class)
    (:size 0))
  
  (defmethod allocate-foreign ((struct struct) &rest initargs)
    (declare (ignore initargs))
    (let ((size (foreign-size (class-of struct))))
      (if (zerop size)
  	(error "~A has zero size" (class-of struct))
        (allocate-memory size))))
  
  
  ;;;; Metaclasses used for subclasses of struct
  