diff --git a/src/CHANGELOG b/src/CHANGELOG index a47b22412..c4bddabc6 100644 --- a/src/CHANGELOG +++ b/src/CHANGELOG @@ -102,6 +102,11 @@ ECL 1.0: - Variable EXT:*HELP-MESSAGE* and EXT:+DEFAULT-COMMAND-ARG-RULES+ exported. + - C:BUILD-PROGRAM now uses a unique prefix for the initialization function, + init_ECL_PROGRAM, to avoid collisions when both the program and a component + have the same name: + (C:BUILD-PROGRAM "ls" :lisp-files '("ls.o")) + * Contributed code: - New examples: cmdline/ls.lsp diff --git a/src/cmp/cmpmain.lsp b/src/cmp/cmpmain.lsp index 252b9b42a..23b49acca 100644 --- a/src/cmp/cmpmain.lsp +++ b/src/cmp/cmpmain.lsp @@ -292,7 +292,7 @@ static cl_object VV[VM]; (when (or (symbolp output-name) (stringp output-name)) (setf output-name (compile-file-pathname output-name :type :program))) (unless init-name - (setf init-name (init-function-name (pathname-name output-name) nil))) + (setf init-name (init-function-name "ECL_PROGRAM" nil))) (format c-file +lisp-program-init+ init-name "" shared-data-file submodules "") (format c-file #+:win32 (ecase system (:console +lisp-program-main+)