Changeset 9518


Ignore:
Timestamp:
May 16, 2008, 1:29:15 AM (11 years ago)
Author:
gb
Message:

Remove some type-predicates, TYPE-OF uses %CLASS-PROPER-NAME; could
probably avoid CLASS-OF in more cases.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711-perf/ccl/level-1/sysutils.lisp

    r9340 r9518  
    4646    (float . floatp)
    4747    (function . functionp)
    48     (hash-table . hash-table-p)
     48    (hash-table . nil)
    4949    (integer . integerp)
    5050    (real . realp)
     
    5757    (package . packagep)
    5858    (pathname . pathnamep)
    59     (logical-pathname . logical-pathname-p)
    60     (random-state . random-state-p)
     59    (logical-pathname . nil)
     60    (random-state . nil)
    6161    (ratio . ratiop)
    6262    (rational . rationalp)
    6363    (readtable . readtablep)
     64    (semaphore . semaphorep)
    6465    (sequence . sequencep)
    6566    (short-float . short-float-p)
     
    233234          '(integer  #.(1+ target::target-most-positive-fixnum))))
    234235       ((or array complex) (type-specifier (ctype-of form)))
     236       (single-float 'single-float)
     237       (double-float 'double-float)
    235238       (t
    236239        (if (eql (typecode form) target::subtag-istruct)
    237           (%svref form 0)
    238           (let* ((class (class-of form))
    239                  (class-name (class-name class)))
    240             (if (eq class (find-class class-name nil))
    241               class-name
    242               class))))))))
     240          (istruct-type-name form)
     241          (let* ((class (class-of form)))
     242            (or (%class-proper-name class)
     243                class))))))))
    243244
    244245;;; Create the list-style description of an array.
     
    527528
    528529(defparameter *outstanding-deferred-warnings* nil)
    529 (def-accessors (deferred-warnings) %svref
    530   nil
    531   deferred-warnings.parent
    532   deferred-warnings.warnings
    533   deferred-warnings.defs
    534   deferred-warnings.flags ; might use to distinguish interactive case/compile-file
    535 )
     530
    536531
    537532(defun %defer-warnings (override &optional flags)
Note: See TracChangeset for help on using the changeset viewer.