Ludovic Courtès <l...@gnu.org> skribis: >>From 7fd25c6f15f74fb6e45fc3f0db21a110267f262c Mon Sep 17 00:00:00 2001 > From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <l...@gnu.org> > Date: Wed, 16 Feb 2022 11:27:43 +0100 > Subject: [PATCH] gexp: Preserve source location for #~ and #$ read extensions. > > Read hash extensions preserve source location info as source properties > on their result. However, in Guile 3.0.8, that location would be > dismissed, leading 'local-file' to fail to resolve file names relative > to the source directory. > > Fixes <https://issues.guix.gnu.org/54003>. > Reported by Aleksandr Vityazev <avitya...@posteo.org>. > > * guix/gexp.scm <eval-when> [read-syntax-redefined?, read-procedure] > [read-syntax*]: New variables. > [read-ungexp]: Adjust to expect either sexps or syntax objects. > [read-gexp]: Call 'read-procedure'. > * tests/gexp.scm ("local-file, relative file name, within gexp") > ("local-file, relative file name, within gexp, compiled"): New tests.
Pushed as ca155a20aea25003b03ef5e0420c77e416d5f425 after verifying that it works with 3.0.7. I’m leaving the bug open so we can see what to do on the Guile side. Ludo’.