gexp: Allow character literals in GEXP->SEXP.
Fixes <https://bugs.gnu.org/38628>. * tests/gexp.scm ("lower-gexp, character literal"): New test. * guix/gexp.scm (gexp->sexp)[self-quoting?]: Add CHAR? to the tested types. * guix/repl.scm (self-quoting?): Likewise. * gnu/tests.scm (marionette-shepherd-service)[self-quoting?]: Likewise.master
parent
fe3110ac58
commit
ab7010af1f
|
@ -98,7 +98,7 @@
|
|||
(or (pred x)
|
||||
(one-of rest ...))))))
|
||||
(one-of symbol? string? keyword? pair? null? array?
|
||||
number? boolean?)))
|
||||
number? boolean? char?)))
|
||||
|
||||
(match (primitive-fork)
|
||||
(0
|
||||
|
|
|
@ -1028,7 +1028,7 @@ and in the current monad setting (system type, etc.)"
|
|||
(or (pred x)
|
||||
(one-of rest ...))))))
|
||||
(one-of symbol? string? keyword? pair? null? array?
|
||||
number? boolean?)))
|
||||
number? boolean? char?)))
|
||||
|
||||
(define* (reference->sexp ref #:optional native?)
|
||||
(with-monad %store-monad
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
(or (pred x)
|
||||
(one-of rest ...))))))
|
||||
(one-of symbol? string? keyword? pair? null? array?
|
||||
number? boolean?)))
|
||||
number? boolean? char?)))
|
||||
|
||||
(define (send-repl-response exp output)
|
||||
"Write the response corresponding to the evaluation of EXP to PORT, an
|
||||
|
|
|
@ -886,6 +886,12 @@
|
|||
(run-with-store %store
|
||||
(lower-gexp #~(foo #$+)))))
|
||||
|
||||
(test-equal "lower-gexp, character literal"
|
||||
'(#\+)
|
||||
(lowered-gexp-sexp
|
||||
(run-with-store %store
|
||||
(lower-gexp #~(#\+)))))
|
||||
|
||||
(test-assertm "gexp->derivation #:references-graphs"
|
||||
(mlet* %store-monad
|
||||
((one (text-file "one" (random-text)))
|
||||
|
|
Reference in New Issue