Subject: Re: bug#17388: 24.4.50; REGRESSION: Ediff - 1) wrong face, 2) incorrect diffing

From: Stephen Berman <[email-masked]>
Date: Fri, 02 May 2014 20:57:58 +0200

On Fri, 2 May 2014 08:15:09 -0700 (PDT) Drew Adams <[email-masked]> wrote:

> 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 [email-masked]
> 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''

I see both of these problematic highlightings on GNU/Linux builds from
both the trunk (bzr 117042) and the emacs-24 branch (bzr 117049).

Steve Berman