Subject: bug#887: 23.0.60; glyph_string->gidx removal causes HEAD compilation failure under OS X

From: "Sudish Joseph" <[email-masked]>
Date: Thu, 4 Sep 2008 11:04:51 -0400

I last successfully compiled Emacs 23.0.60.1 from cvs a little over a week
ago.  Trying this again today results in the following error.

gcc -c  -Demacs -DHAVE_CONFIG_H  -I. -I/Users/sj/src/emacs/src -Dtemacs
-O2 -pipe -Wall /Users/sj/src/emacs/src/nsfont.m
[...]
/Users/sj/src/emacs/src/nsfont.m:907: error: 'struct glyph_string' has no
member named 'gidx'
/Users/sj/src/emacs/src/nsfont.m:908: error: 'struct glyph_string' has no
member named 'gidx'
/Users/sj/src/emacs/src/nsfont.m:914: error: 'struct glyph_string' has no
member named 'gidx'
/Users/sj/src/emacs/src/nsfont.m:1064: warning: implicit declaration of
function 'CGContextSetFontRenderingMode'
/Users/sj/src/emacs/src/nsfont.m:1097: error: 'struct glyph_string' has no
member named 'gidx'
/Users/sj/src/emacs/src/nsfont.m:1103: error: 'struct glyph_string' has no
member named 'gidx'

The following change from src/ChangeLog seems to be the root cause -- it
seems nsfont.m wasn't updated to reflect the change:

2008-08-29  Kenichi Handa  <[email-masked]>

        These changes are to re-implement the automatic composition so
        that it doesn't use text properties.

[...]
        * dispextern.h (struct glyph): New union u.cmp.  Delete the member
        cmp_id.
        (struct glyph_string): Delete the member gidx.  New members
        cmp_id, cmp_from, and cmp_to.

Emacs is being configured and built in a tmp dir as follows:

% cd <head of emacs cvs tree>
% mkdir tmp
% cd tmp
% CC=gcc CXX=g++ CFLAGS="-O2 -pipe -Wall" CXXFLAGS=$CFLAGS ../configure
--verbose --enable-cocoa-experimental-ctrl-g --without-pop --without-x
--with-x-toolkit=no --with-ns
% make

Thanks for all your hard work in integrating all the OS X/NextStep changes
into the mainline.

-Sudish

In GNU Emacs 23.0.60.1 (i386-apple-darwin9.4.0, *Step 9.0)
 of 2008-08-27 on fluxus.int.absonant.org
Windowing system distributor `Apple', version 49.46.48
configured using `configure  '--verbose'
'--enable-cocoa-experimental-ctrl-g' '--without-pop' '--without-x'
'--with-x-toolkit=no' '--with-ns' 'CC=gcc-4.2' 'CFLAGS=-O2 -pipe -Wall''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  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: nil
  default-enable-multibyte-characters: t

Major mode: Info

Minor modes in effect:
  partial-completion-mode: t
  hi-lock-mode: t
  iswitchb-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <up> <up> <up> <up> <up> <up> <up> <up>
<up> d d d d d d d d d d s-s <up> <up> <up> <up> <up>
d d d d d d d d d d s-s C-x C-f d r <tab> <return>
<down> <down> <down> <down> d d s-s C-x C-f d e b <tab>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> R a <tab> <return> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<right> <right> <right> <right> <right> <right> <right>
<right> <right> <right> <right> <right> <right> <right>
<right> <right> <right> <right> <right> <right> <right>
<right> <right> <right> <right> <right> <right> <right>
<right> <right> <right> <right> <right> x x x x x x
x x x x x x x x x x x <left> <left> x x s-s <down-mouse-1>
<mouse-1> <down-mouse-1> <mouse-1> <down-mouse-1> <mouse-1>
<down-mouse-1> <mouse-1> C-h i <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <right> <right>
<return> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> SPC / b u g <return> / <return>
<right> <return> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> SPC SPC SPC SPC SPC <down> <down> <down> <down>
<down> <down> <down> <down> <down> <down> <down> <down>
<down> <down> <down> <down> <down> M-x r e p o r t
- e m a c s - b u g <return>

Recent messages:
incremental parser error: "Wrong type argument: consp, nil" [2 times]
(New file) [2 times]
New file. Inserted dmacro: h_masthead
Wrote /Users/sj/work/drake_work/httpproxymon/submit.h
Wrote /Users/sj/work/drake_work/httpproxymon/httpproxymon.c
Wrote /Users/sj/work/drake_work/httpproxymon/Makefile [3 times]
Wrote /Users/sj/work/drake_work/httpproxymon/drake.yml
Auto-saving...done
Wrote /Users/sj/work/drake_work/httpproxymon/Rakefile
Composing main Info directory...done