GNU bug report logs - #32841
assoc-set fails with dot notation association list

Previous Next

Package: guile;

Reported by: "Hood, Christopher L." <Christopher.Hood <at> gtri.gatech.edu>

Date: Tue, 25 Sep 2018 20:41:02 UTC

Severity: normal

Done: lloda <lloda <at> sarc.name>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Hood, Christopher L." <Christopher.Hood <at> gtri.gatech.edu>
To: "bug-guile <at> gnu.org" <bug-guile <at> gnu.org>
Subject: assoc-set fails with dot notation association list
Date: Tue, 25 Sep 2018 20:33:41 +0000
[Message part 1 (text/plain, inline)]
This fails with code pulled straight out of the Guile manual example (section 6.6.20.6).

(define capitals '(("New York" . "Albany")
                   ("Oregon"   . "Salem")
                   ("Florida"  . "Miami")))

Okay, that works define to define alist capitals. Now let's try another part of the example:


(set! capitals

      (assoc-set! capitals "Florida" "Tallahassee"))

This yields the error:

ERROR: In procedure assoc-set!:
In procedure set-cdr!: Wrong type argument in position 1 (expecting mutable pair): ("Florida" . "Miami")

I've experienced this behavior with builds of both Guile 2.2.2 and Guile 2.2.4.

I'll note that if you define the alist so its initial contents are defined using a quasiquote and the cons form instead of dot notation, this error is not reached. I'm not sure if the error is valid or not, but in any case, the code that produces is listed as an valid example in the manual, so that doesn't seem right.

chris
[Message part 2 (text/html, inline)]

This bug report was last modified 210 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.