Subject: Re: bug#831: 23.0.60; error in nsfonts.m

From: Ted Zlatanov <[email-masked]>
Date: Sun, 07 Sep 2008 06:26:03 -0500

The following message is a courtesy copy of an article
that has been posted to gnu.emacs.bug as well.

On Sun, 31 Aug 2008 13:49:32 -0400 "Austin Frank" <[email-masked]> wrote: 

AF> On Sat, Aug 30, 2008 at 3:59 PM, Glenn Morris <[email-masked]> wrote:
>> Austin Frank wrote:
>> 
>>> I'm trying to build emacs from a current CVS checkout on OSX 10.4.11
>>> with the configure option --with-ns.
>>> 
>>> Build fails because of error in nsfonts.m.  That file references a
>>> variable called gidx, which is not defined in the relevant structure.
>>> The attached patch changes all instances of gidx to x, and allows emacs
>>> to build on my system.
>> 
>> That may happen to build, but I don't believe it to be the correct fix.
>> 
>> This is fallout from:
>> 
>> 2008-08-29  Kenichi Handa  <[email-masked]>
>> 
>> * dispextern.h (struct glyph_string): Delete the member gidx.
>> New members cmp_id, cmp_from, and cmp_to.
>> 
>> (There are also some out-of-date comments in xdisp.c that still refer
>> to gidx.)

AF> Yes, you're right that this builds but doesn't actually work.  Sorry
AF> that I didn't dive deeper in debugging!  Unfortunately I don't have
AF> time to work on a patch-- apologies.  I'll keep an eye on CVS for
AF> changes to nsfonts.m and xdisp.c.

I used the data member rename patch Austin and others suggested for two
days now without problems.  It lets Emacs build on Mac OS X and despite
being insufficient as a full fix, at least the users don't have to wait
for the full fix to have a working compile.

I comitted this change to the Emacs CVS HEAD, including fixing the
references to gidx in the xdisp.c docs, and will back it out (or anyone
else can back it out) if it's a problem.  I apologize in advance if
that's the case.  All the gidx references are changed to cmp_from,
that's all it does.

Thanks
Ted