--- guile-gnome-platform-2.15.93/glib/gnome/gw/support/gobject.scm.false 2007-08-19 17:42:53.000000000 +0200
+++ guile-gnome-platform-2.15.93/glib/gnome/gw/support/gobject.scm 2007-08-19 17:48:04.000000000 +0200
@@ -194,7 +194,8 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Wrap objects.
-(define-class <gobject-object-type> (<gobject-classed-pointer-type>))
+(define-class <gobject-object-type> (<gobject-classed-pointer-type>)
+ #:allowed-options '(null-ok))
(define-method (unwrap-null-checked (value <gw-value>)
status-var
@@ -246,7 +247,8 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Wrap boxed types, represented on the scheme side by GValues.
-(define-class <gobject-boxed-type> (<gobject-classed-pointer-type>))
+(define-class <gobject-boxed-type> (<gobject-classed-pointer-type>)
+ #:allowed-options '(null-ok))
(define-method (make-typespec (type <gobject-boxed-type>) (options <list>))
(next-method type (cons 'unspecialized options)))
@@ -350,7 +352,8 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Wrap interfaces. We only understand interfaces implemented by objects.
-(define-class <gobject-interface-type> (<gobject-classed-pointer-type>))
+(define-class <gobject-interface-type> (<gobject-classed-pointer-type>)
+ #:allowed-options '(null-ok))
(define-method (wrap-interface! (ws <gobject-wrapset-base>) . args)
(let ((type (apply make <gobject-interface-type> args)))
@@ -516,10 +519,6 @@
#:c-const-type-name (string-append "const " ctype))))
(add-type-alias! ws ctype (name type))))
-(for-each (lambda (null-ok-class)
- (class-slot-set! null-ok-class 'allowed-options '(null-ok)))
- (list <gobject-object-type> <gobject-boxed-type>
- <gobject-interface-type>))
;; Used for functions that operate on classes, e.g.
;; gtk_widget_class_install_style_property,