Skip to content
Snippets Groups Projects
Commit cd37eaab authored by csr21's avatar csr21
Browse files

Quick, before I delete my repository again: for SBCL, bind

Quick, before I delete my repository again: for SBCL, bind
*DERIVE-FUNCTION-TYPES* around compilation of clx files, since we're not
going to be changing internals very often (and extremely rarely in a
type-incompatible way).

darcs-hash:20030602124548-ed5a3-0e1d5c74fec24f401a9752459b5aec8f98f9dbac.gz
parent 5d4adc09
No related branches found
No related tags found
No related merge requests found
...@@ -25,10 +25,13 @@ ...@@ -25,10 +25,13 @@
(pushnew :clx-ansi-common-lisp *features*) (pushnew :clx-ansi-common-lisp *features*)
(defclass clx-source-file (cl-source-file) ())
(defsystem CLX (defsystem CLX
:depends-on (sb-bsd-sockets) :depends-on (sb-bsd-sockets)
:version "0.5" :version "0.5.1"
:serial t :serial t
:default-component-class clx-source-file
:components :components
((:file "package") ((:file "package")
(:file "depdefs") (:file "depdefs")
...@@ -53,3 +56,16 @@ ...@@ -53,3 +56,16 @@
(:file "shape") (:file "shape")
(:file "xvidmode"))) (:file "xvidmode")))
;;; (:module doc ("doc") (:type :lisp-example)) ;;; (:module doc ("doc") (:type :lisp-example))
#+sbcl
(defmethod perform :around ((o compile-op) (f clx-source-file))
;; a variety of accessors, such as AREF-CARD32, are not declared
;; INLINE. Without this (non-ANSI) static-type-inference behaviour,
;; SBCL emits about 100 optimization notes (roughly one fifth of all
;; of the notes emitted). Since the internals are unlikely to
;; change much, and certainly the internals should stay in sync,
;; enabling this extension is a win. (Note that the use of this
;; does not imply that applications using CLX calls that expand into
;; calls to these accessors will be optimized in the same way).
(let ((sb-ext:*derive-function-types* t))
(call-next-method)))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment