Julian Graham <jool...@gmail.com> writes:

> Incidentally, my naive attempt to refine the behavior of
> `beautify-user-module!' straight-up failed:
>
> guile> (define m (resolve-module '(foo)))
> guile> (let ((interface (make-module 31)))
> ... (set-module-name! interface (module-name m))
> ... (set-module-kind! interface 'interface)
> ... (set-module-public-interface! m interface))
> #f
> guile> (set-module-uses! m '((guile) :select (if)))
> ((guile) :select (if))
> guile> (set-current-module m)
> #<directory (guile-user) b7d61630>
> guile> if
> Segmentation fault

I haven't managed to test this yet, but I think your
`(set-module-uses! m '((guile) :select (if)))' should be
`(set-module-uses! m (list (resolve-interface '(guile) #:select '(if))))'.

(And we should also add type-checking to set-module-uses!)

Regards,
        Neil


Reply via email to