From 61406d79ca9fefba2ddde79b18a934009bf16e38 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Mon, 12 Feb 1990 12:00:17 +0000 Subject: [PATCH] Changed STRUCTURE-TYPEP to use INFO TYPE DEFINED-STRUCTURE-INFO. --- code/pred.lisp | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/code/pred.lisp b/code/pred.lisp index 3e6c4c086..3895feee4 100644 --- a/code/pred.lisp +++ b/code/pred.lisp @@ -322,15 +322,13 @@ (declare (optimize speed)) (let ((type (type-expand type))) (if (symbolp type) - (case (info type kind type) - ((:primitive :structure) - (and (structurep object) - (let ((obj-name (%primitive header-ref object 0))) - (or (eq obj-name type) - (let ((def (info type structure-info obj-name))) - (not (null (memq type (c::dd-includes def))))))))) - (t - (error "~S is an unknown type specifier." type))) + (let ((def (info type defined-structure-info obj-name))) + (if def + (and (structurep object) + (let ((obj-name (%primitive header-ref object 0))) + (or (eq obj-name type) + (not (null (memq type (c::dd-includes def))))))) + (error "~S is an unknown type specifier." type))) (error "~S is an unknown type specifier." type)))) -- GitLab