summaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorChristophe Rhodes <csr21@cantab.net>2024-05-22 15:09:37 +0100
committerChristophe Rhodes <csr21@cantab.net>2024-05-30 19:28:01 +0100
commita13a1c2dd6ccb115db9146f7b0931c3100e08b35 (patch)
tree933edd53a56bc418b31344718cd36a046abe1eb3 /NEWS
parentb8af399c0820e2c935d117a0408d81406d0784ac (diff)
Improve NAME-CONFLICT for IMPORT
Collect all symbols of the same name from the designated list of symbols to import, so that in the case of collisions between imported symbols (and possibly already-accessible symbols) we can present the user with a single such conflict to resolve (per name) rather than a sequence of them. Make NAME-CONFLICT for IMPORT take as a datum not a single symbol, but all the symbols requested for import of the same name. Any already-accessible symbol should be passed in as an element of the SYMBOLS &rest list. Make the pairwise restarts SHADOWING-IMPORT-IT and DONT-IMPORT-IT only active when there are two symbols involved in the conflict, one of which is accesible. A comment (but not much of the subsequent code) is invalidated by this change, so delete it. Instead, make sure that if there is no current accessible symbol of the name being imported, the resulting operation should be an IMPORT, not a SHADOWING-IMPORT. This fixes long-standing test :IMPORT-SINGLE-CONFLICT in packages.impure.lisp
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS4
1 files changed, 4 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 4d983521d..11f65dd1a 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,9 @@
;;;; -*- coding: utf-8; fill-column: 78 -*-
+changes relative to sbcl-2.4.5:
+ * enhancement: name conflicts resulting from colliding symbols in IMPORT are
+ resolved once for each name, rather than pairwise.
+
changes in sbcl-2.4.5 relative to sbcl-2.4.4:
* incompatible change: attempting to pass or return alien structs by value
now signals errors. Previously, such attempts would silently tend to