summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/packages.scm9
1 files changed, 6 insertions, 3 deletions
diff --git a/guix/packages.scm b/guix/packages.scm
index ec5420f6c0..e8ae2fb817 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -181,9 +181,12 @@ representation."
(let ((field (assoc field inits)))
(match field
((_ value)
- (and=> (or (source-properties value)
- (source-properties field))
- source-properties->location))
+ ;; Put the `or' here, and not in the first argument of
+ ;; `and=>', to work around a compiler bug in 2.0.5.
+ (or (and=> (source-properties value)
+ source-properties->location)
+ (and=> (source-properties field)
+ source-properties->location)))
(_
#f))))
(_