mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
module-use-interfaces! handles duplicate interfaces
* module/ice-9/boot-9.scm (module-use-interfaces!): Fix to have the same interface de-duplication characteristics as module-use!.
This commit is contained in:
parent
f92119034e
commit
4181e9200b
1 changed files with 10 additions and 4 deletions
|
@ -1965,10 +1965,16 @@ VALUE."
|
||||||
;; Same as MODULE-USE! but add multiple interfaces and check for duplicates
|
;; Same as MODULE-USE! but add multiple interfaces and check for duplicates
|
||||||
;;
|
;;
|
||||||
(define (module-use-interfaces! module interfaces)
|
(define (module-use-interfaces! module interfaces)
|
||||||
(set-module-uses! module
|
(let ((prev (filter (lambda (used)
|
||||||
(append (module-uses module) interfaces))
|
(and-map (lambda (iface)
|
||||||
(hash-clear! (module-import-obarray module))
|
(not (equal? (module-name used)
|
||||||
(module-modified module))
|
(module-name iface))))
|
||||||
|
interfaces))
|
||||||
|
(module-uses module))))
|
||||||
|
(set-module-uses! module
|
||||||
|
(append prev interfaces))
|
||||||
|
(hash-clear! (module-import-obarray module))
|
||||||
|
(module-modified module)))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue