[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/02: self: Prevent inlining of internal procedures used by 'doc/build.
From: |
guix-commits |
Subject: |
01/02: self: Prevent inlining of internal procedures used by 'doc/build.scm'. |
Date: |
Sun, 12 Apr 2020 19:22:01 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit b36217c54dd92bdfa0984b9eded0765a3b388426
Author: Ludovic Courtès <address@hidden>
AuthorDate: Mon Apr 13 00:08:48 2020 +0200
self: Prevent inlining of internal procedures used by 'doc/build.scm'.
This allows 'doc/build.scm' to keep using '@@' for these. (This sets a
bad example, don't follow it.)
* guix/self.scm (prevent-inlining!): New macro.
<top level>: Use it for 'file-append*', 'translate-texi-manuals', and
'info-manual'.
---
guix/self.scm | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/guix/self.scm b/guix/self.scm
index 6b633f9..1040c27 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -489,6 +489,13 @@ TRANSLATIONS, an alist of msgid and msgstr."
(computed-file "guix-manual" build))
+(define-syntax-rule (prevent-inlining! identifier ...)
+ (begin (set! identifier identifier) ...))
+
+;; XXX: These procedures are actually used by 'doc/build.scm'. Protect them
+;; from inlining on Guile 3.
+(prevent-inlining! file-append* translate-texi-manuals info-manual)
+
(define* (guile-module-union things #:key (name "guix-module-union"))
"Return the union of the subset of THINGS (packages, computed files, etc.)
that provide Guile modules."