chiark
/
gitweb
/
~mdw
/
clg
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Return a more robust warning when we try to define a type with a
[clg]
/
glib
/
gobject.lisp
diff --git
a/glib/gobject.lisp
b/glib/gobject.lisp
index bfde9d1cb28f52af745721e0ea721ac926fc0151..68ee82cb649549faec4b1d0e6d66258c737b2882 100644
(file)
--- a/
glib/gobject.lisp
+++ b/
glib/gobject.lisp
@@
-586,6
+586,10
@@
(defun expand-gobject-type (type forward-p options &optional (metaclass 'gobject
(let ((supers (cons (supertype type) (implements type)))
(class (type-from-number type))
(slots (getf options :slots)))
(let ((supers (cons (supertype type) (implements type)))
(class (type-from-number type))
(slots (getf options :slots)))
+ (when (member nil supers)
+ (error "Got NIL as a supertype for ~A (full list: ~A).~%~
+ This shouldn't happen - is the parent type correctly registered?"
+ (find-foreign-type-name type) supers))
`(defclass ,class ,supers
,(unless forward-p
(slot-definitions class (query-object-class-properties type) slots))
`(defclass ,class ,supers
,(unless forward-p
(slot-definitions class (query-object-class-properties type) slots))