* the expander now signals a proper error if it cannot find an
imported library.
This commit is contained in:
parent
9cdaa11a60
commit
22b191334f
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -45,10 +45,6 @@
|
||||||
(find-library-by
|
(find-library-by
|
||||||
(lambda (x) (equal? (library-name x) name))))
|
(lambda (x) (equal? (library-name x) name))))
|
||||||
|
|
||||||
(define (find-library-by-name/die name)
|
|
||||||
(or (find-library-by-name name)
|
|
||||||
(error #f "cannot find library ~s" name)))
|
|
||||||
|
|
||||||
(define (find-library-by-spec/die spec)
|
(define (find-library-by-spec/die spec)
|
||||||
(let ([id (car spec)])
|
(let ([id (car spec)])
|
||||||
(or (find-library-by
|
(or (find-library-by
|
||||||
|
|
|
@ -117,6 +117,7 @@
|
||||||
(make-vector (vector-length sym*) 0))))))
|
(make-vector (vector-length sym*) 0))))))
|
||||||
(define (unseal-rib! rib)
|
(define (unseal-rib! rib)
|
||||||
(when (rib-sealed/freq rib)
|
(when (rib-sealed/freq rib)
|
||||||
|
;(printf "[ribsize ~s]\n" (vector-length (rib-sealed/freq rib)))
|
||||||
(set-rib-sealed/freq! rib #f)
|
(set-rib-sealed/freq! rib #f)
|
||||||
(set-rib-sym*! rib (vector->list (rib-sym* rib)))
|
(set-rib-sym*! rib (vector->list (rib-sym* rib)))
|
||||||
(set-rib-mark**! rib (vector->list (rib-mark** rib)))
|
(set-rib-mark**! rib (vector->list (rib-mark** rib)))
|
||||||
|
@ -2093,6 +2094,8 @@
|
||||||
[(prefix) (error #f "prefix found")]
|
[(prefix) (error #f "prefix found")]
|
||||||
[else
|
[else
|
||||||
(let ([lib (find-library-by-name spec)])
|
(let ([lib (find-library-by-name spec)])
|
||||||
|
(unless lib
|
||||||
|
(error 'import "cannot find library satisfying ~s" spec))
|
||||||
(let-values ([(s _r) (library-subst/env lib)])
|
(let-values ([(s _r) (library-subst/env lib)])
|
||||||
(values s lib)))]))
|
(values s lib)))]))
|
||||||
(cond
|
(cond
|
||||||
|
|
Loading…
Reference in New Issue