diff options
author | Marius Bakke <mbakke@fastmail.com> | 2019-12-15 21:27:31 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2019-12-18 22:36:37 +0100 |
commit | ab7010af1f1077c056529769a53a380147c3933f (patch) | |
tree | 3bd5460ce10b6e0205206a70026e925a8b0ca0c8 | |
parent | fe3110ac58364aceff71391b984e8056a6db9395 (diff) | |
download | guix-ab7010af1f1077c056529769a53a380147c3933f.tar guix-ab7010af1f1077c056529769a53a380147c3933f.tar.gz |
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.
-rw-r--r-- | gnu/tests.scm | 2 | ||||
-rw-r--r-- | guix/gexp.scm | 2 | ||||
-rw-r--r-- | guix/repl.scm | 2 | ||||
-rw-r--r-- | 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))) |