1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 11:50:28 +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:
Andy Wingo 2011-02-08 23:37:54 +01:00
parent f92119034e
commit 4181e9200b

View file

@ -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)
(let ((prev (filter (lambda (used)
(and-map (lambda (iface)
(not (equal? (module-name used)
(module-name iface))))
interfaces))
(module-uses module))))
(set-module-uses! module (set-module-uses! module
(append (module-uses module) interfaces)) (append prev interfaces))
(hash-clear! (module-import-obarray module)) (hash-clear! (module-import-obarray module))
(module-modified module)) (module-modified module)))