0.8.1.21:
[sbcl.git] / src / code / target-misc.lisp
index a021148..37bb400 100644 (file)
         (let ((source (first (sb!c::compiled-debug-info-source info))))
           (cond ((and (eq (sb!c::debug-source-from source) :lisp)
                       (eq (sb!c::debug-source-info source) fun))
-                 (values (second (svref (sb!c::debug-source-name source) 0))
+                 (values (svref (sb!c::debug-source-name source) 0)
                          nil
                         name))
+               ;; FIXME: shouldn't these two clauses be the other way
+               ;; round?  Using VALID-FUNCTION-NAME-P to see if we
+               ;; want to find an inline-expansion?
                 ((stringp name)
                  (values nil t name))
                 (t
   "Return a string giving the name of the local machine."
   (sb!unix:unix-gethostname))
 
+(defvar *machine-version*)
+
+(defun machine-version ()
+  #!+sb-doc
+  "Return a string describing the version of the computer hardware we
+are running on, or NIL if we can't find any useful information."
+  (unless (boundp '*machine-version*)
+    (setf *machine-version* (get-machine-version)))
+  *machine-version*)
+  
 ;;; FIXME: Don't forget to set these in a sample site-init file.
 ;;; FIXME: Perhaps the functions could be SETFable instead of having the
 ;;; interface be through special variables? As far as I can tell