From: Juho Snellman Date: Sun, 10 Oct 2010 00:34:11 +0000 (+0000) Subject: 1.0.43.40: Allow use of unmangled win32 function names X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=d79b182441a71b5c372c9aca18469efa34b472b3;p=sbcl.git 1.0.43.40: Allow use of unmangled win32 function names * Patch lp#657117 from Kalyanov Dmitry --- diff --git a/src/compiler/generic/genesis.lisp b/src/compiler/generic/genesis.lisp index 8f99ba4..fac1eb4 100644 --- a/src/compiler/generic/genesis.lisp +++ b/src/compiler/generic/genesis.lisp @@ -1612,7 +1612,19 @@ core and return a descriptor to it." (warn "redefining ~S from #X~X to #X~X" name old-value value))) (/show "adding to *cold-foreign-symbol-table*:" name value) - (setf (gethash name *cold-foreign-symbol-table*) value)))))) + (setf (gethash name *cold-foreign-symbol-table*) value) + #!+win32 + (let ((at-position (position #\@ name))) + (when at-position + (let ((name (subseq name 0 at-position))) + (multiple-value-bind (old-value found) + (gethash name *cold-foreign-symbol-table*) + (when (and found + (not (= old-value value))) + (warn "redefining ~S from #X~X to #X~X" + name old-value value))) + (setf (gethash name *cold-foreign-symbol-table*) + value))))))))) (values)) ;; PROGN (defun cold-foreign-symbol-address (name) diff --git a/version.lisp-expr b/version.lisp-expr index 6fbe420..bb57b58 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.43.39" +"1.0.43.40"