diff --git a/src/cmp/cmpmain.lsp b/src/cmp/cmpmain.lsp index be5bbf9bd..09b268ac4 100755 --- a/src/cmp/cmpmain.lsp +++ b/src/cmp/cmpmain.lsp @@ -432,6 +432,13 @@ filesystem or in the database of ASDF modules." (setf wrap-name (init-function-name (pathname-name output-name) :kind target :prefix "wrap_"))) (unless main-name (setf main-name (compute-init-name output-name :kind target :prefix "main_"))) + + ;; fixup for ASDF + (when (equal init-name wrap-name) + (let ((new-name (init-function-name (pathname-name output-name) :kind target :prefix "wrap_"))) + (cmpwarn "It seems that you put result of the internal function `compute-init-name' as `init-name' key parameter. Fixing to ~s." new-name) + (setf wrap-name new-name))) + ;; ;; The epilogue-code can be either a string made of C code, or a ;; lisp form. In the latter case we add some additional C code to