GNU bug report logs -
#63103
30.0.50; nconc compiler optimization breaks user packages
Previous Next
Reported by: Maks <mvproton <at> gmail.com>
Date: Thu, 27 Apr 2023 04:17:04 UTC
Severity: normal
Merged with 63100,
63101
Found in version 30.0.50
Done: Mattias EngdegÄrd <mattiase <at> acm.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On 4/27/23 15:54, Drew Adams wrote:
>> Well, my assumption didn't completely stand on its own. Given that the
>> last argument can be a non-list suggests that the last argument is not
>> inspected or mutated, but just overwrites the cdr of the second to last
>> argument. This then implies that the second to last argument could also
>> be an improper list. Given that CL and Elisp have behaved like this for
>> a long time, it seems better to preserve this property. I think it is
>> kind of nice that `nconc' can be used as a tool to turn a proper list
>> into an improper list and vice versa. It may be good to document this in
>> the `nconc' docstring and the Elisp manual.
>
> +1.
>
> You both agree that this behavior (1) shouldn't be
> lost and (2) should be documented. That's exactly
> the position taken by Common Lisp.
>
> Please document this behavior as part of the bug
> fix, if you haven't already.
Mattias already documented the behavior for dotted lists in the Elisp
manual and added a regression test. See commit
5ead8c5f69b0a69bac4641d5003ee422d6b67038.
Daniel
This bug report was last modified 2 years and 86 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.