diff --git a/asdf.asd b/asdf.asd index 1e8a007bf8f97c509932bd2f51a5f1873269e983..d1d64de2320db1054abb603101ef6e6898b74713 100644 --- a/asdf.asd +++ b/asdf.asd @@ -14,7 +14,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "2.21.2" ;; to be automatically updated by bin/bump-revision + :version "2.21.3" ;; to be automatically updated by bin/bump-revision :depends-on () :components ((:file "asdf") diff --git a/asdf.lisp b/asdf.lisp index 11ffd167449252f9c2699e7c1a6988fffe25f7da..b58362c47bfe7a74f9e4badcab85ef2df619c2aa 100644 --- a/asdf.lisp +++ b/asdf.lisp @@ -1,5 +1,5 @@ ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*- -;;; This is ASDF 2.21.2: Another System Definition Facility. +;;; This is ASDF 2.21.3: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to . @@ -116,7 +116,7 @@ ;; "2.345.6" would be a development version in the official upstream ;; "2.345.0.7" would be your seventh local modification of official release 2.345 ;; "2.345.6.7" would be your seventh local modification of development version 2.345.6 - (asdf-version "2.21.2") + (asdf-version "2.21.3") (existing-asdf (find-class 'component nil)) (existing-version *asdf-version*) (already-there (equal asdf-version existing-version))) @@ -2788,6 +2788,11 @@ details." directory-pathname (default-directory)))) +(defun* find-class* (x &optional (errorp t) environment) + (etypecase x + ((or standard-class built-in-class) x) + (symbol (find-class x errorp) environment))) + (defun* class-for-type (parent type) (or (loop :for symbol :in (list type @@ -2799,11 +2804,10 @@ details." class (find-class 'component))) :return class) (and (eq type :file) - (aif + (find-class* (or (loop :for module = parent :then (component-parent module) :while module :thereis (module-default-component-class module)) - *default-component-class*) - (find-class it))) + *default-component-class*) nil)) (sysdef-error "don't recognize component type ~A" type))) (defun* maybe-add-tree (tree op1 op2 c)