1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 21:20:33 +02:00

records: Use SRFI-11 instead of SRFI-71, for Guile 2.0 compatibility.

This fixes a failure of 'tests/packages.scm' introduced in
b88e38d4b5: some of the tests import (guix
records) on the build side, which uses '%bootstrap-guile' (Guile 2.0)
where SRFI-71 is unavailable.

* guix/records.scm (match-record-inner): Use SRFI-11 instead of SRFI-71.
This commit is contained in:
Ludovic Courtès
2023-06-06 09:06:59 +02:00
parent d62c6170ef
commit dc0c5d56ee

View File

@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -20,8 +20,8 @@
(define-module (guix records)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-11)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-71)
#:use-module (ice-9 match)
#:use-module (ice-9 rdelim)
#:autoload (system base target) (target-most-positive-fixnum)
@@ -622,9 +622,11 @@ to thunked values. Raise a syntax violation when the field is not found."
(syntax-rules ()
((_ f)
(lookup-field+wrapper record field 0 f)))))
(let* ((offset wrap (type (map-fields type match-record)
field-offset+wrapper))
(variable (wrap (struct-ref record offset))))
(let*-values (((offset wrap)
(type (map-fields type match-record)
field-offset+wrapper))
((variable)
(wrap (struct-ref record offset))))
(match-record-inner record type (rest ...) body ...))))
((_ record type (field rest ...) body ...)
;; Redirect to the canonical form above.