1.0.18.20: Fewer STYLE-WARNINGs.
authorRichard M Kreuter <kreuter@users.sourceforge.net>
Wed, 16 Jul 2008 19:21:03 +0000 (19:21 +0000)
committerRichard M Kreuter <kreuter@users.sourceforge.net>
Wed, 16 Jul 2008 19:21:03 +0000 (19:21 +0000)
* Change definition of UNINTERESTING-ORDINARY-FUNCTION-REDEFINITION-P
  so that replacing an interpreted function is always uninteresting
  when the new definition comes from the same file.

* Monkey with source-locations so that they get created during LOAD of
  a source file when *EVALUATOR-MODE* is :INTERPRET.

package-data-list.lisp-expr
src/code/condition.lisp
src/code/early-source-location.lisp
src/code/source-location.lisp
version.lisp-expr

index 411f3ea..7238807 100644 (file)
@@ -272,6 +272,7 @@ of SBCL which maintained the CMU-CL-style split into two packages.)"
                "FUN-INFO-DERIVE-TYPE" "FUN-INFO-IR2-CONVERT"
                "FUN-INFO-LTN-ANNOTATE" "FUN-INFO-OPTIMIZER"
                "GET-VECTOR-SUBTYPE"
+               "GET-TOPLEVELISH-FILE-INFO"
                "HALT"
                "IF-EQ" "INLINE-SYNTACTIC-CLOSURE-LAMBDA"
                "INSERT-STEP-CONDITIONS"
index ace650c..07dca98 100644 (file)
@@ -1398,11 +1398,10 @@ is signaled, if the warning if of this type, it will be muffled.")
        ;; clearly uninteresting, and we'll say arbitrarily that
        ;; replacing an interpreted function with an interpreted
        ;; function is uninteresting, too, but leave out the
-       ;; compiled-to-interpreted and interpreted-to-compiled cases.
-       (when (or (and (typep old-fdefn
-                             '(or #!+sb-eval sb!eval:interpreted-function))
-                      (typep new-fdefn
-                             '(or #!+sb-eval sb!eval:interpreted-function)))
+       ;; compiled-to-interpreted case.
+       (when (or (typep
+                  old-fdefn
+                  '(or #!+sb-eval sb!eval:interpreted-function))
                  (and (typep old-fdefn
                              '(and compiled-function
                                (not funcallable-instance)))
index e7018e3..bb2fcda 100644 (file)
@@ -23,8 +23,7 @@
 
 (defvar *source-location-thunks* nil)
 
-;; Should get called only in unusual circumstances. Normally handled
-;; by a compiler macro.
+;; Will be redefined in src/code/source-location.lisp.
 (defun source-location ()
   nil)
 
@@ -35,7 +34,7 @@
              (symbol-value '*source-info*))
     `(cons ,(make-file-info-namestring
               *compile-file-pathname*
-              (source-info-file-info (symbol-value '*source-info*)))
+              (sb!c:get-toplevelish-file-info (symbol-value '*source-info*)))
            ,(when (boundp '*current-path*)
                   (source-path-tlf-number (symbol-value '*current-path*))))))
 
index 9cb1a9a..be5d1fd 100644 (file)
@@ -19,7 +19,7 @@
    (when (and (boundp '*source-info*)
               *source-info*)
      (make-file-info-namestring *compile-file-pathname*
-                                (source-info-file-info *source-info*)))
+                                (sb!c:get-toplevelish-file-info *source-info*)))
    :type (or string null))
   ;; Toplevel form index
   (toplevel-form-number
   (declare (ignore env))
   #-sb-xc-host (make-definition-source-location))
 
+;; We need a regular definition of SOURCE-LOCATION for calls processed
+;; during LOAD on a source file while *EVALUATOR-MODE* is :INTERPRET.
+#!+sb-source-locations
+(setf (symbol-function 'source-location)
+      (lambda () (make-definition-source-location)))
+
 (/show0 "/Processing source location thunks")
 #!+sb-source-locations
 (dolist (fun *source-location-thunks*)
index be751d8..dc841e8 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.18.19"
+"1.0.18.20"