Commit 9423c735 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

2.29.8: avoid using reify-simple-sexp which only obscures errors

Also, some more tweak of exported symbol test, for ECL.
parent 400465c0
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
:licence "MIT" :licence "MIT"
:description "Another System Definition Facility" :description "Another System Definition Facility"
:long-description "ASDF builds Common Lisp software organized into defined systems." :long-description "ASDF builds Common Lisp software organized into defined systems."
:version "2.29.7" ;; to be automatically updated by make bump-version :version "2.29.8" ;; to be automatically updated by make bump-version
:depends-on () :depends-on ()
#+asdf3 :encoding #+asdf3 :utf-8 #+asdf3 :encoding #+asdf3 :utf-8
;; For most purposes, asdf itself specially counts as a builtin system. ;; For most purposes, asdf itself specially counts as a builtin system.
......
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.29.7: Another System Definition Facility. ;;; This is ASDF 2.29.8: Another System Definition Facility.
;;; ;;;
;;; Feedback, bug reports, and patches are all welcome: ;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>. ;;; please mail to <asdf-devel@common-lisp.net>.
......
...@@ -215,16 +215,14 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -215,16 +215,14 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
(ccl::make-source-note :filename filename :start-pos start-pos :end-pos end-pos (ccl::make-source-note :filename filename :start-pos start-pos :end-pos end-pos
:source (unreify-source-note source))))) :source (unreify-source-note source)))))
(defun reify-function-name (function-name) (defun reify-function-name (function-name)
(reify-simple-sexp (if-let (setfed (gethash function-name ccl::%setf-function-name-inverses%))
(if-let (setfed (gethash function-name ccl::%setf-function-name-inverses%)) `(setf ,setfed)
`(setf ,setfed) function-name))
function-name)))
(defun unreify-function-name (function-name) (defun unreify-function-name (function-name)
(let ((name (unreify-simple-sexp function-name))) (if (and (consp function-name) (eq (first function-name) 'setf))
(if (and (consp name) (eq (first name) 'setf)) (let ((setfed (second function-name)))
(let ((setfed (second name))) (gethash setfed ccl::%setf-function-names%))
(gethash setfed ccl::%setf-function-names%)) function-name))
name)))
(defun reify-deferred-warning (deferred-warning) (defun reify-deferred-warning (deferred-warning)
(with-accessors ((warning-type ccl::compiler-warning-warning-type) (with-accessors ((warning-type ccl::compiler-warning-warning-type)
(args ccl::compiler-warning-args) (args ccl::compiler-warning-args)
...@@ -233,7 +231,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -233,7 +231,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
(list :warning-type warning-type :function-name (reify-function-name function-name) (list :warning-type warning-type :function-name (reify-function-name function-name)
:source-note (reify-source-note source-note) :source-note (reify-source-note source-note)
:args (destructuring-bind (fun . formals) args :args (destructuring-bind (fun . formals) args
(cons (reify-function-name fun) (reify-simple-sexp formals)))))) (cons (reify-function-name fun) formals)))))
(defun unreify-deferred-warning (reified-deferred-warning) (defun unreify-deferred-warning (reified-deferred-warning)
(destructuring-bind (&key warning-type function-name source-note args) (destructuring-bind (&key warning-type function-name source-note args)
reified-deferred-warning reified-deferred-warning
...@@ -243,7 +241,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -243,7 +241,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
:source-note (unreify-source-note source-note) :source-note (unreify-source-note source-note)
:warning-type warning-type :warning-type warning-type
:args (destructuring-bind (fun . formals) args :args (destructuring-bind (fun . formals) args
(cons (unreify-function-name fun) (unreify-simple-sexp formals))))))) (cons (unreify-function-name fun) formals))))))
#+(or cmu scl) #+(or cmu scl)
(defun reify-undefined-warning (warning) (defun reify-undefined-warning (warning)
;; Extracting undefined-warnings from the compilation-unit ;; Extracting undefined-warnings from the compilation-unit
...@@ -289,9 +287,8 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when ...@@ -289,9 +287,8 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
using READ within a WITH-SAFE-IO-SYNTAX, that represents the warnings currently deferred by using READ within a WITH-SAFE-IO-SYNTAX, that represents the warnings currently deferred by
WITH-COMPILATION-UNIT. One of three functions required for deferred-warnings support in ASDF." WITH-COMPILATION-UNIT. One of three functions required for deferred-warnings support in ASDF."
#+allegro #+allegro
(reify-simple-sexp (list :functions-defined excl::.functions-defined.
(list :functions-defined excl::.functions-defined. :functions-called excl::.functions-called.)
:functions-called excl::.functions-called.))
#+clozure #+clozure
(mapcar 'reify-deferred-warning (mapcar 'reify-deferred-warning
(if-let (dw ccl::*outstanding-deferred-warnings*) (if-let (dw ccl::*outstanding-deferred-warnings*)
...@@ -333,7 +330,7 @@ One of three functions required for deferred-warnings support in ASDF." ...@@ -333,7 +330,7 @@ One of three functions required for deferred-warnings support in ASDF."
(declare (ignorable reified-deferred-warnings)) (declare (ignorable reified-deferred-warnings))
#+allegro #+allegro
(destructuring-bind (&key functions-defined functions-called) (destructuring-bind (&key functions-defined functions-called)
(unreify-simple-sexp reified-deferred-warnings) reified-deferred-warnings
(setf excl::.functions-defined. (setf excl::.functions-defined.
(append functions-defined excl::.functions-defined.) (append functions-defined excl::.functions-defined.)
excl::.functions-called. excl::.functions-called.
......
...@@ -140,6 +140,7 @@ ...@@ -140,6 +140,7 @@
ASDF/BUNDLE:REGISTER-PRE-BUILT-SYSTEM ASDF/BUNDLE:REGISTER-PRE-BUILT-SYSTEM
ASDF/BUNDLE:STATIC-LIBRARY ASDF/BUNDLE:STATIC-LIBRARY
ASDF/IMAGE:CREATE-IMAGE ASDF/IMAGE:CREATE-IMAGE
ASDF/IMAGE:DUMP-IMAGE
ASDF/LISP-BUILD:REIFY-UNDEFINED-WARNING ASDF/LISP-BUILD:REIFY-UNDEFINED-WARNING
ASDF/OS:PARSE-FILE-LOCATION-INFO ASDF/OS:PARSE-FILE-LOCATION-INFO
ASDF/OS:PARSE-WINDOWS-SHORTCUT ASDF/OS:PARSE-WINDOWS-SHORTCUT
......
...@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ...@@ -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.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.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 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
(asdf-version "2.29.7") (asdf-version "2.29.8")
(existing-version (asdf-version))) (existing-version (asdf-version)))
(setf *asdf-version* asdf-version) (setf *asdf-version* asdf-version)
(when (and existing-version (not (equal asdf-version existing-version))) (when (and existing-version (not (equal asdf-version existing-version)))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment