From ab7010af1f1077c056529769a53a380147c3933f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 15 Dec 2019 21:27:31 +0100 Subject: gexp: Allow character literals in GEXP->SEXP. Fixes . * 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. --- gnu/tests.scm | 2 +- guix/gexp.scm | 2 +- guix/repl.scm | 2 +- tests/gexp.scm | 6 ++++++ 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/tests.scm b/gnu/tests.scm index 27cb39c2b9..cc72e56858 100644 --- a/gnu/tests.scm +++ b/gnu/tests.scm @@ -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 diff --git a/guix/gexp.scm b/guix/gexp.scm index a96592ac76..411f0844ff 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -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 diff --git a/guix/repl.scm b/guix/repl.scm index 1ead18c53b..0f75f9cd0b 100644 --- a/guix/repl.scm +++ b/guix/repl.scm @@ -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 diff --git a/tests/gexp.scm b/tests/gexp.scm index 84c16422c2..8b1596f66d 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -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))) -- cgit v1.2.3