[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#38388: [2.9.5] Inaccurate source location info for unbound variables
From: |
Ludovic Courtès |
Subject: |
bug#38388: [2.9.5] Inaccurate source location info for unbound variables |
Date: |
Thu, 28 Nov 2019 09:20:58 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hello!
Andy Wingo <address@hidden> skribis:
> On Tue 26 Nov 2019 16:20, Ludovic Courtès <address@hidden> writes:
>
>> I have a test that runs ‘guix system build’ on this file:
>>
>> (use-modules (gnu)) ; 1
>> (use-service-modules networking) ; 2
>>
>> (operating-system ; 4
>> (host-name "antelope") ; 5
>> (timezone "Europe/Paris") ; 6
>> (locale "en_US.UTF-8") ; 7
>>
>> (bootloader (GRUB-config (target "/dev/sdX"))) ; 9
>> (file-systems (cons (file-system
>> (device (file-system-label "root"))
>> (mount-point "/")
>> (type "ext4"))
>> %base-file-systems)))
>>
>> Here, ‘GRUB-config’ is unbound, and the test expects to see a stack
>> frame corresponding to line 9.
>>
>> However, the stack frame we get is for line 11, char 32, which
>> corresponds to (file-system-label "root").
>>
>> So it would seem that the IP-to-source-location mapping is not quite
>> working as expected.
>>
>> Thoughts?
>
> What version is this with?
The wrong location info is with 2.9.5. 2.2.x (and 2.0.x) work fine.
Any idea where I should poke for debugging?
> Unfortunately as you know, bare identifiers don't have good source
> location information. There are small improvements that can be made but
> larger improvments are gnarly. Could be this is a case for a small
> improvement though!
I know, that’s why this test checks a favorable case (symbol wrapped in
an sexp). So I agree this would be a welcome improvement, but I think
it’s unnecessary for the purposes of the use case above.
Thanks,
Ludo’.