mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-17 06:42:18 -08:00
The previous version of streams.lsp failed to properly redefine CLOS and other functions
This commit is contained in:
parent
94ddca2413
commit
89046d6821
1 changed files with 6 additions and 5 deletions
|
|
@ -611,10 +611,11 @@
|
|||
(let ((x (si::package-lock "COMMON-LISP" nil)))
|
||||
(loop for cl-symbol in '#.+conflicting-symbols+
|
||||
with gray-package = (find-package "GRAY")
|
||||
do (let ((gray-symbol (find-symbol (symbol-name cl-symbol) gray-package)))
|
||||
(setf (fdefinition cl-symbol) (fdefinition gray-symbol))
|
||||
(unintern gray-symbol gray-package)
|
||||
(import cl-symbol gray-package)
|
||||
(export cl-symbol gray-package)))
|
||||
do (unless (typep (fdefinition cl-symbol) 'generic-function)
|
||||
(let ((gray-symbol (find-symbol (symbol-name cl-symbol) gray-package)))
|
||||
(setf (fdefinition cl-symbol) (fdefinition gray-symbol))
|
||||
(unintern gray-symbol gray-package)
|
||||
(import cl-symbol gray-package)
|
||||
(export cl-symbol gray-package))))
|
||||
(si::package-lock "COMMON-LISP" x)
|
||||
nil))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue