1. A diff that is not the current one should use face `ediff-(odd|even)-diff-(A|B'). This is now broken. It does use that face for the main diff, but it still tries to show fine differences within that diff - which is new. That would be OK, I guess, but it should not use face `default' to show such fine diffs. It should use an Ediff face, which users can customize without affecting other things (as happens with `default'). Using face `default' here is particular misguided, as it suggests that there is no difference at those locations, whereas there likely is. See the attached screenshot. The first diff shown, with the gray highlighting, shows the regression. 2. The fine diffs are also not correct. See the same screenshot. For the first diff, "advertise" and "d-signature-table" should be highlighted the same as "(defvar " and ")", and for the second diff, "fil" and "s-alist" should be highlighted the same as "(defvar " and ")". These are not differences. I am using Cygwin `diff', which could affect #2 presumably. But #2 is still a regression wrt prior Emacs versions. With Emacs 24.3, for instance (using the same Cygwin `diff'), there is no fine diff shown here. Instead, the diff, which is shown only as a main diff, is between "file-local-variables-alist" and "filxxxxxxxxxxxxxxxxxxxxxs-alist". Which is correct. Emacs should not show fine diffs that are are patently wrong. Better not to mislead. In GNU Emacs 24.4.50.1 (i686-pc-mingw32) of 2014-04-29 on ODIEONE Bzr revision: 117031 monnier@iro.umontreal.ca-20140429151607-qnkgbymwfaj5ut08 Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --prefix=/c/Devel/emacs/snapshot/trunk --enable-checking=yes,glyphs 'CFLAGS=-O0 -g3' LDFLAGS=-Lc:/Devel/emacs/lib 'CPPFLAGS=-DGC_MCHECK=1 -Ic:/Devel/emacs/include''