Ignore:
Timestamp:
Jan 2, 2007, 2:00:15 PM (13 years ago)
Author:
gb
Message:

EQUAL on physical pathnames ignores the (new) version slot, as does practically
everything else.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/level-0/l0-pred.lisp

    r5451 r5671  
    374374                       (and (eq structname (%svref y 0))
    375375                            (or (eq structname 'pathname)
    376                                 (eq structname 'logical-pathname))))
    377                      (locally
    378                          (declare (optimize (speed 3) (safety 0)))
    379                        (let* ((x-size (uvsize x)))
    380                          (declare (fixnum x-size))
    381                          (if (= x-size (the fixnum (uvsize y)))
     376                                (eq structname 'logical-pathname)))
     377                       (locally
     378                           (declare (optimize (speed 3) (safety 0)))
     379                         (let* ((x-size (uvsize x)))
     380                           (declare (fixnum x-size))
     381                           (when (= x-size (the fixnum (uvsize y)))
     382                             ;; Ignore last (version) slot in physical pathnames.
     383                             (when (eq structname 'pathname)
     384                               (decf x-size))
    382385                             (do* ((i 1 (1+ i)))
    383386                                  ((= i x-size) t)
    384387                               (declare (fixnum i))
    385388                               (unless (equal (%svref x i) (%svref y i))
    386                                  (return))))))))))))
     389                                 (return)))))))))))))
    387390
    388391#+ppc32-target
Note: See TracChangeset for help on using the changeset viewer.