mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-05-26 02:51:49 +02:00
gexp: 'file-append' correctly handles bases without an expander.
This fixes this use case:
(file-append (let-system ...) ...)
* guix/gexp.scm (file-append-compiler): When BASE lacks an expander,
delegate to LOWERED.
* tests/gexp.scm ("let-system in file-append"): New test.
This commit is contained in:
@@ -441,6 +441,17 @@
|
||||
'(system-binding)))
|
||||
(x x)))))
|
||||
|
||||
(test-assert "let-system in file-append"
|
||||
(let ((mixed (file-append (let-system (system target)
|
||||
(if (not target) grep sed))
|
||||
"/bin"))
|
||||
(grep (file-append grep "/bin"))
|
||||
(sed (file-append sed "/bin")))
|
||||
(and (equal? (gexp->sexp* #~(list #$mixed))
|
||||
(gexp->sexp* #~(list #$grep)))
|
||||
(equal? (gexp->sexp* #~(list #$mixed) "powerpc64le-linux-gnu")
|
||||
(gexp->sexp* #~(list #$sed) "powerpc64le-linux-gnu")))))
|
||||
|
||||
(test-assert "ungexp + ungexp-native"
|
||||
(let* ((exp (gexp (list (ungexp-native %bootstrap-guile)
|
||||
(ungexp coreutils)
|
||||
|
||||
Reference in New Issue
Block a user