Subject: bug#38427: 26.2; skeleton-insert does not set str consistently

From: Lars Ingebrigtsen <[email-masked]>
Date: Sun, 01 Nov 2020 15:45:18 +0100

Tim Landscheidt <[email-masked]> writes:

> Given (A):
>
> | (let
> |     ((somevalues '(("a" . "123") ("b" . "456"))))
> |   (skeleton-insert
> |    '("Prompt: "
> |      (cdr (assoc str somevalues)) | str ?\n)))
>
> Emacs asks for input with "Prompt: " and with "a" given, it
> outputs "a" instead of the expected "123".

Evaluating that form gives me:

Debugger entered--Lisp error: (void-variable somevalues)
  (assoc str somevalues)
  (cdr (assoc str somevalues))
  eval((cdr (assoc str somevalues)))
  skeleton-internal-1((cdr (assoc str somevalues)) nil nil)

I'm not at all familiar with how skeleton works, but a test case that
works would help when trying to debug.  :-)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no