Subject: bug#9514: 24.0.50; eval + format weirdness

From: Wolfgang Jenkner <[email-masked]>
Date: Thu, 15 Sep 2011 16:11:49 +0200

The form

(let* ((string (with-temp-buffer (insert "%%b") (buffer-string)))
       (form `(format ,string)))
  (list form
	(eval form)))

evaluates to

((format "%%b") "%bb")

but it should evaluate to

((format "%%b") "%b")

Note that bzr trunk rev. 104389 gives the correct result whereas
rev. 104390 gives the wrong result.

In GNU Emacs 24.0.50.1 (amd64-unknown-freebsd8.2, GTK+ Version 2.24.6)
 of 2011-09-13 on iznogoud.viz
Windowing system distributor `The X.Org Foundation', version 11.0.10707000
configured using `configure  'CC=gcc46' '--without-gsettings''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: en_US.UTF-8
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t