Commit 039449d4 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.32.26: more CCL deferred warning hacks.

TODO: make sense of the CCL code base and how function names
and arguments are actually computed or used.
parent 304923f7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@
  :licence "MIT"
  :description "Another System Definition Facility"
  :long-description "ASDF builds Common Lisp software organized into defined systems."
  :version "2.32.25" ;; to be automatically updated by make bump-version
  :version "2.32.26" ;; to be automatically updated by make bump-version
  :depends-on ()
  #+asdf3 :encoding #+asdf3 :utf-8
  ;; For most purposes, asdf itself specially counts as a builtin system.
+1 −1
Original line number Diff line number Diff line
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.32.25: Another System Definition Facility.
;;; This is ASDF 2.32.26: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.

test/test1.preferences

deleted100644 → 0
+0 −3
Original line number Diff line number Diff line
(in-package :asdf-test)

(setf *test6* :yes)
+15 −10
Original line number Diff line number Diff line
@@ -231,10 +231,18 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
          name))
    (defun reify-function-name (function-name)
      (let ((name (or (first function-name) ;; defun: extract the name
                      (first (second function-name))))) ;; defmethod: keep gf name, drop method specializers
                      (let ((sec (second function-name)))
                        (or (and (atom sec) sec) ; scoped method: drop scope
                            (first sec)))))) ; method: keep gf name, drop method specializers
        (list name)))
    (defun unreify-function-name (function-name)
      function-name)
    (defun nullify-non-literals (sexp)
      (typecase sexp
        ((or number character simple-string symbol pathname) sexp)
        (cons (cons (nullify-non-literals (car sexp))
                    (nullify-non-literals (cdr sexp))))
        (t nil)))
    (defun reify-deferred-warning (deferred-warning)
      (with-accessors ((warning-type ccl::compiler-warning-warning-type)
                       (args ccl::compiler-warning-args)
@@ -242,13 +250,10 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
                       (function-name ccl:compiler-warning-function-name)) deferred-warning
        (list :warning-type warning-type :function-name (reify-function-name function-name)
              :source-note (reify-source-note source-note)
              :args (destructuring-bind (fun formals env) args
                      (declare (ignorable env))
                      (list (unsymbolify-function-name fun)
                            (loop :for arg :in formals :collect
                                  (typecase arg ;; notably preserve constant keyword arguments
                                    ((or symbol number character simple-string pathname) arg)))
                            nil)))))
              :args (destructuring-bind (fun &rest more)
                        args
                      (cons (unsymbolify-function-name fun)
                            (nullify-non-literals more))))))
    (defun unreify-deferred-warning (reified-deferred-warning)
      (destructuring-bind (&key warning-type function-name source-note args)
          reified-deferred-warning
@@ -257,8 +262,8 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
                        :function-name (unreify-function-name function-name)
                        :source-note (unreify-source-note source-note)
                        :warning-type warning-type
                        :args (destructuring-bind (fun . formals) args
                                (cons (symbolify-function-name fun) formals))))))
                        :args (destructuring-bind (fun . more) args
                                (cons (symbolify-function-name fun) more))))))
  #+(or cmu scl)
  (defun reify-undefined-warning (warning)
    ;; Extracting undefined-warnings from the compilation-unit
+1 −1
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO
         ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5.
         ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5
         ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
         (asdf-version "2.32.25")
         (asdf-version "2.32.26")
         (existing-version (asdf-version)))
    (setf *asdf-version* asdf-version)
    (when (and existing-version (not (equal asdf-version existing-version)))
Loading