/[slime]/slime/swank-sbcl.lisp
ViewVC logotype

Diff of /slime/swank-sbcl.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.178 by mbaringer, Wed May 23 14:22:06 2007 UTC revision 1.179 by trittweiler, Thu Aug 23 16:20:11 2007 UTC
# Line 16  Line 16 
16  (eval-when (:compile-toplevel :load-toplevel :execute)  (eval-when (:compile-toplevel :load-toplevel :execute)
17    (require 'sb-bsd-sockets)    (require 'sb-bsd-sockets)
18    (require 'sb-introspect)    (require 'sb-introspect)
19    (require 'sb-posix))    (require 'sb-posix)
20      (require 'sb-cltl2))
21    
22  (declaim (optimize (debug 2) (sb-c:insert-step-conditions 0)))  (declaim (optimize (debug 2) (sb-c:insert-step-conditions 0)))
23    
# Line 273  Line 274 
274    (check-type f function)    (check-type f function)
275    (sb-impl::%fun-name f))    (sb-impl::%fun-name f))
276    
277    (defmethod declaration-arglist ((decl-identifier (eql 'optimize)))
278      (flet ((ensure-list (thing) (if (listp thing) thing (list thing))))
279        (let* ((flags (sb-cltl2:declaration-information decl-identifier)))
280          (if flags
281              ;; Symbols aren't printed with package qualifiers, but the FLAGS would
282              ;; have to be fully qualified when used inside a declaration. So we
283              ;; strip those as long as there's no better way. (FIXME)
284              `(&any ,@(remove-if-not #'(lambda (qualifier)
285                                          (find-symbol (symbol-name (first qualifier)) :cl))
286                                      flags :key #'ensure-list))
287              (call-next-method)))))
288    
289  (defvar *buffer-name* nil)  (defvar *buffer-name* nil)
290  (defvar *buffer-offset*)  (defvar *buffer-offset*)
291  (defvar *buffer-substring* nil)  (defvar *buffer-substring* nil)

Legend:
Removed from v.1.178  
changed lines
  Added in v.1.179

  ViewVC Help
Powered by ViewVC 1.1.5