1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-23 04:50:28 +02:00
guile/module
Andreas Rottmann 51c0fd8086 Use module identity to filter for existing modules
This fixes a problem with R6RS's `import' in particuliar: when importing
a subset of a library/module, the interface created for that purpose
inherits the name of the module it is derived from.  The low-level
primitives that are used for importing would then disregard earlier
imports from the same module.

An example for this bug can be seen with the following library
definition:

(library (test-guile2)
  (export foo)
  (import (only (rnrs base) define)
          (only (rnrs base) error))

  (define (foo . args)
    #t))

In the above, the import of `define' would be disregarded when `error'
is imported, thus leading to a syntax error, since `(foo . args)' is
treated as an application, since the binding of `define' would be not
present.

* module/ice-9/boot-9.scm (module-use!): Remove the filtering of the
  existing imports of the module by name; a check for identity is
  already done beforehand.
  (module-use-interfaces!): Filter the existing imports by identity
  instead of filtering them by their names.
2011-03-03 11:09:54 +01:00
..
ice-9 Use module identity to filter for existing modules 2011-03-03 11:09:54 +01:00
language Use vhash-delq' in (language tree-il analyze)'. 2011-02-22 00:32:42 +01:00
oop Allow GOOPS getters to add methods to primitive generics 2011-02-14 20:33:11 +01:00
rnrs Make `(rnrs base)' independent of other rnrs modules. 2011-02-22 00:32:39 +01:00
scripts Add `*current-warning-prefix*'. 2011-02-13 19:13:36 +01:00
srfi Get rid of `define-macro' in the SRFI 26 implementation 2010-12-07 23:13:55 +01:00
sxml sxml->xml fix 2010-12-02 22:24:26 +01:00
system flush all input on a read error 2011-02-27 23:26:08 +01:00
texinfo stexi->shtml supports itemx 2011-01-25 17:59:45 +01:00
web web server more assiduous about closing ports 2011-02-24 11:10:49 +01:00
Makefile.am Compile `(rnrs)' after all other RNRS modules, potentially. 2011-02-22 00:32:42 +01:00
rnrs.scm implement port-eof? 2011-01-21 08:27:08 +01:00
statprof.scm remove a number of debug options 2010-09-24 20:57:01 +02:00
texinfo.scm Remove unused top-level variables. 2010-01-11 01:21:14 +01:00