X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=contrib%2Fsb-introspect%2Fintrospect.lisp;h=c7fc14fbef0c53dec1a035aa3be94deb101be9ca;hb=71bc8b09fc75083ea4bb2aee954abca1f1e1f214;hp=bf145462a6e5e9f79f4f74b5bad92aa4e6727f5e;hpb=a80a02aec71e15e1ae7bebd502399ab2b824d08b;p=sbcl.git diff --git a/contrib/sb-introspect/introspect.lisp b/contrib/sb-introspect/introspect.lisp index bf14546..c7fc14f 100644 --- a/contrib/sb-introspect/introspect.lisp +++ b/contrib/sb-introspect/introspect.lisp @@ -192,7 +192,8 @@ If an unsupported TYPE is requested, the function will return NIL. ((:function :generic-function) (when (and (fboundp name) (or (not (symbolp name)) - (not (macro-function name)))) + (not (macro-function name)) + (special-operator-p name))) (let ((fun (real-fdefinition name))) (when (eq (not (typep fun 'generic-function)) (not (eq type :generic-function))) @@ -901,7 +902,7 @@ Experimental: interface subject to change." (funcall fun part)))) (when ext (let ((table sb-pcl::*eql-specializer-table*)) - (call (sb-ext:with-locked-hash-table (table) + (call (sb-int:with-locked-system-table (table) (gethash object table))))) (etypecase object ((or bignum float sb-sys:system-area-pointer fixnum))