Hi, Mihail Iosilevich <yosik@paranoid.email> skribis:
> Guile (3.0.8) reports a compilation error when cond-expand tries to > check existence of a missing library: > > scheme@(guile-user)> (define-library (test) > (cond-expand > ((library (scheme sort)) > (import (scheme sort))))) > While compiling expression: > no code for module (scheme sort) > > It looks like bug #40252 was not fully eliminated. > > Also, (library ...) cannot handle module names like (srfi 1), though > (import (srfi 1)) works fine. For example, this code fails: > > scheme@(guile-user)> (define-library (test) > (cond-expand > ((library (srfi 1)) > (import (srfi 1))))) > While compiling expression: > In procedure symbol->string: Wrong type argument in position 1 > (expecting symbol): 1 > > There are probably other cases when (library ...) and (import ...) does > not work identically: (library ...) uses resolve-interface while > (import ...) uses resolve-r6rs-interface. > > This patch fixes both issues. That looks reasonable to me. I added a ChangeLog-style entry and committed it, thanks! Ludo’.