Subject: bug#25360: File mode specification errors during building

From: [email-masked]
Date: Sun, 15 Jan 2017 18:53:35 -0500

[email-masked] (Phillip Lord) writes:

> Glenn Morris <[email-masked]> writes:
>
>> Phillip Lord wrote:
>>
>>> I've pushed to master. We can close this if the next hydra build works
>>> as expected.
>>
>> There's nothing special about hydra builds. I quote them only because
>> they provide a convenient way to show a full, clean build log.
>>
>> The image-type-auto-detected-p issue persists, eg
>> http://hydra.nixos.org/build/46502443/log/raw
>>
>> Note this is a without-x build (image-type-auto-detected-p used to be
>> autoloaded in all builds).
>
> Unfortunately, I cannot reproduce this on my own machine. Exactly how is
> the hydra build configured? I've tried --without-x, as a guess, but I
> get no error.

I can reproduce here.  Did you just run 'make bootstrap' after
reconfiguring?  I think you need 'make extraclean', because the part
that triggers this is not cleaned by bootstrap.

Using insert-file-contents instead of file-file-noselect seems to fix it
for me:

--- i/lisp/international/titdic-cnv.el
+++ w/lisp/international/titdic-cnv.el
@@ -1167,11 +1167,11 @@ miscdic-convert
 		    (if (eq coding 'iso-2022-cn-ext) "Chinese-CNS"
 		      "Chinese-GB"))
 		  "\" \"" title "\" t\n")
-	  (let* ((coding-system-for-read
-		  (coding-system-change-eol-conversion coding 'unix))
-		 (dicbuf (find-file-noselect filename)))
-	    (funcall converter dicbuf name title)
-	    (kill-buffer dicbuf))
+          (let ((coding-system-for-read
+                 (coding-system-change-eol-conversion coding 'unix)))
+            (with-temp-buffer
+              (insert-file-contents filename)
+              (funcall converter (current-buffer) name title)))
 	  (insert ";; Local Variables:\n"
 		  ";; version-control: never\n"
 		  ";; no-update-autoloads: t\n"