GNU bug report logs - #5250
23.1.90; src/xterm.c does not compile â like #3895 from 2009-07-27

Previous Next

Package: emacs;

Reported by: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>

Date: Tue, 6 Oct 2009 18:55:07 UTC

Severity: normal

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 5250 in the body.
You can then email your comments to 5250 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#4360; Package emacs. (Sun, 06 Sep 2009 17:00:03 GMT) Full text and rfc822 format available.

Message #3 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
To: emacs-pretest-bug <at> gnu.org
Subject: bug#5250: 23.1.90; src/xterm.c does not compile â like #3895 from 2009-07-27
Date: Sun, 20 Dec 2009 01:29:27 +0100
Hello!

The bug is back, now on Mac OS X 10.5.8 (Leopard) with PowerPC  
processor.

gcc -I/sw/include -L/sw/lib -c -no-cpp-precomp -Demacs - 
DHAVE_CONFIG_H  -I. -I/Users/pete/Quellen/Emacs_CVS/emacs/src -I/usr/ 
X11/include/X11 -I/sw/lib/fontconfig2/include -I/sw/lib/xft2/include - 
I/sw/lib/freetype219/include/freetype2 -I/sw/lib/freetype219/include - 
I/usr/X11R6/include -Dtemacs  -I/sw/lib/fontconfig2/include -I/sw/ 
include/freetype2 -I/sw/include -I/sw/include/librsvg-2 -I/sw/include/ 
glib-2.0 -I/sw/lib/glib-2.0/include -I/sw/include/gtk-2.0 -I/usr/X11/ 
include/cairo -I/usr/X11/include/pixman-1 -I/usr/X11/include/libpng12 - 
I/usr/X11/include  -I/sw/include/gconf/2 -I/sw/include/orbit-2.0 -I/sw/ 
include/dbus-1.0 -I/sw/lib/dbus-1.0/include -I/sw/include/glib-2.0 -I/ 
sw/lib/glib-2.0/include -DORBIT2=1 -ggdb3 -gfull -mtraceback=full -Wno- 
pointer-sign -H -pipe -fPIC -mcpu=7450 -mtune=7450 -fast -mpim-altivec  
-ftree-vectorize -foptimize-register-move -freorder-blocks -fthread- 
jumps -fpeephole -fno-crossjumping -I/sw/include/freetype2 -I/sw/ 
include -MMD -MF deps/xterm.d xterm.c
. ./config.h
.. ./s/darwin.h
.. ./m/macppc.h
.. /usr/include/string.h
... /usr/include/_types.h
.... /usr/include/sys/_types.h
..... /usr/include/sys/cdefs.h
..... /usr/include/machine/_types.h
...... /usr/include/ppc/_types.h
[...]
xterm.c: In function ‘x_term_init’:
xterm.c:10277: error: dereferencing pointer to incomplete type
Multiple include guards may be useful for:
/sw/include/gtk-2.0/gtk/gtklinkbutton.h
make[2]: *** [xterm.o] Error 1
make[1]: *** [src] Error 2
make: *** [bootstrap] Error 2

/usr/X11R6 is a sym-link to /usr/X11.

--
Greetings

  Pete

Isn't vi that text editor with two modes... one that beeps and one  
that corrupts your file?
			– Dan Jacobson, on comp.os.linux.advocacy

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#5250; Package emacs. (Mon, 07 Sep 2009 21:35:04 GMT) Full text and rfc822 format available.

Message #6 received at 5250 <at> debbugs.gnu.org (full text, mbox):

From: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
To: 5250 <at> debbugs.gnu.org
Subject: bug#5250: 23.1.90; src/xterm.c does not compile –
	like #3895 from 2009-07-27
Date: Sun, 20 Dec 2009 21:21:32 +0100
I tried again to compile with GCC 4.2.1 (Apple Inc. build 5577) and  
making use of some (modern, up-to-date) C header and library files  
from MacPorts. With GTK+2 as X toolkit. Now it compiles src/xterm.c!  
In the pre-processed output I see some differences (diff GTK+2- 
GCC4.2.1 GTK+2-GCC4.0.1) by which in the end the strange and faulty  
construct appears, although I have no idea why!
(Many differences with just the use of different variants of the same  
C header file omitted.)

********4.2.1*******                                             
********4.0.1*******
*** 300,320 ****
  #define HAVE_WORKING_FORK 1                                      
#define HAVE_WORKING_FORK 1
  #define HAVE_WORKING_VFORK 1                                     
#define HAVE_WORKING_VFORK 1
  #define HAVE_X11 1                                               
#define HAVE_X11 1
- #define HAVE_X11R6 1
  #define HAVE_XFT 1                                               
#define HAVE_XFT 1
  #define HAVE_XIM 1                                               
#define HAVE_XIM 1
- #define HAVE_XKBGETKEYBOARD 1
  #define HAVE_XPM 1                                               
#define HAVE_XPM 1
! #define HAVE_XRMSETDATABASE 1
! #define HAVE_XSCREENNUMBEROFSCREEN 1
! #define HAVE_XSCREENRESOURCESTRING 1
! #define HAVE_XSETWMPROTOCOLS 1

*** 664,671 ****
  # 1169 "./config.h" 2                                           #  
1169 "./config.h" 2
  # 1 "/usr/include/strings.h" 1 3 4                              # 1  
"/usr/include/strings.h" 1 3 4
- # 62 "/usr/include/strings.h" 3 4
- # 1 "/usr/include/string.h" 1 3 4
- # 63 "/usr/include/strings.h" 2 3 4
  # 1172 "./config.h" 2                                           #  
1172 "./config.h" 2
  # 1 "/usr/include/stdlib.h" 1 3 4                               # 1  
"/usr/include/stdlib.h" 1 3 4
  # 59 "/usr/include/stdlib.h" 3 4                                #  
59 "/usr/include/stdlib.h" 3 4

*** 1531,1535 ****
  #define _MACHTYPES_H_                                            
#define _MACHTYPES_H_
! # 1 "/usr/include/ppc/_types.h" 1 3 4
! # 71 "/usr/include/ppc/types.h" 2 3 4                         ! # 77  
"/usr/include/ppc/types.h" 3 4
  #define _INT8_T                                                  
#define _INT8_T

*** 1607,1613 ****
  # 1175 "./config.h" 2                                           #  
1175 "./config.h" 2
! # 1193 "./config.h"                                           ! #  
1195 "./config.h"
  #define HAVE_X_I18N                                              
#define HAVE_X_I18N
! #define HAVE_X11R6_XIM
                                                                ! #  
1206 "./config.h"

*** 4045,4052 ****
  # 41 "xterm.c" 2                                                #  
41 "xterm.c" 2
  # 1 "xterm.h" 1                                                 # 1  
"xterm.h" 1
  # 20 "xterm.h"                                                  #  
20 "xterm.h"
! # 1 "/opt/local/include/X11/Xlib.h" 1                         ! # 1  
"/usr/X11/include/X11/Xlib.h" 1
! # 37 "/opt/local/include/X11/Xlib.h"                          ! # 37  
"/usr/X11/include/X11/Xlib.h"
  #define _XLIB_H_                                                 
#define _XLIB_H_
  #define XlibSpecificationRelease 6                               
#define XlibSpecificationRelease 6
  # 1 "/usr/include/sys/types.h" 1 3 4                            # 1  
"/usr/include/sys/types.h" 1 3 4


*** 5243,5255 ****
- typedef struct {
-     int type;
-     unsigned long serial;
-     int send_event;
-     Display *display;
-     int extension;
-     int evtype;
-     unsigned int cookie;
-     void *data;
- } XGenericEventCookie;

-  XGenericEvent xgeneric;
-  XGenericEventCookie xcookie;

*** 7824,7837 ****
- extern int XGetEventData(
-     Display* ,
-     XGenericEventCookie*
- );
- extern void XFreeEventData(
-     Display* ,
-     XGenericEventCookie*
- );
  # 21 "xterm.h" 2                                                #  
21 "xterm.h" 2
! # 1 "/opt/local/include/X11/cursorfont.h" 1                   ! # 1  
"/usr/X11/include/X11/cursorfont.h" 1
! # 31 "/opt/local/include/X11/cursorfont.h"                    ! # 31  
"/usr/X11/include/X11/cursorfont.h"

! # 1 "/opt/local/include/X11/keysym.h" 1                       ! # 1  
"/usr/X11/include/X11/keysym.h" 1


*** 12537,12544 ****
  # 1 "/usr/include/ppc/limits.h" 1 3 4
  # 37 "/usr/include/ppc/limits.h" 3 4
  #define _PPC_LIMITS_H_
- # 1 "/usr/include/ppc/_limits.h" 1 3 4
- # 41 "/usr/include/ppc/limits.h" 2 3 4

*** 47599,47607 ****
! # 93 "xterm.h"                                                ! #  
103 "xterm.h"
! struct xim_inst_t
! {
!   struct x_display_info *dpyinfo;
!   char *resource_name;
! };
  struct x_bitmap_record                                           
struct x_bitmap_record
  {                                                               {
    Pixmap pixmap;                                                   
Pixmap pixmap;

*** 57646,57675 ****
      }                                                               }
    return font_object;                                              
return font_object;
  }                                                               }
! # 8121 "xterm.c"                                              ! #  
8159 "xterm.c"
! static void
! xim_destroy_callback (xim, client_data, call_data)
!      XIM xim;
!      XPointer client_data;
!      XPointer call_data;
! {
!   struct x_display_info *dpyinfo = (struct x_display_info *)  
client_data;
!   Lisp_Object frame, tail;
!   (interrupt_input_blocked++);
!   for ((tail) = Vframe_list; ((((enum Lisp_Type) (((unsigned int)  
((tail))) & ((((int) 1) << 3) - 1))) == Lisp_Cons) && (frame = (0+ 
((((void) 0,(struct Lisp_Cons *) ((int) (((tail)) & ~((((int) 1) << 3)  
- 1))))->car))), 1)); tail = (0+((((void) 0,(struct Lisp_Cons *)  
((int) (((tail)) & ~((((int) 1) << 3) - 1))))->u.cdr))))
!     {
!       struct frame *f = ((void) 0,(struct frame *) ((int) ((frame) &  
~((((int) 1) << 3) - 1))));
!       if (((f)->output_method == output_x_window) && ((f)- 
>output_data.x->display_info) == dpyinfo)
!  {
!    ((f)->output_data.x->xic) = ((void *)0);
!           xic_free_xfontset (f);
!  }
!     }
!   dpyinfo->xim = ((void *)0);
!   XFree (dpyinfo->xim_styles);
!   do { --interrupt_input_blocked; if (interrupt_input_blocked == 0)  
{ if (interrupt_input_pending) reinvoke_input_signal (); if  
(pending_atimers) do_pending_atimers (); } else if  
(interrupt_input_blocked < 0) abort (); } while (0);
! }
! extern char *XSetIMValues (XIM, ...);
  static void                                                      
static void
  xim_open_dpy (dpyinfo, resource_name)                            
xim_open_dpy (dpyinfo, resource_name)
       struct x_display_info  
*dpyinfo;                                 struct x_display_info  
*dpyinfo;

*** 57685,57736 ****
        dpyinfo->xim = xim;
        if (xim)
   {
-    XIMCallback destroy;
     XGetIMValues (xim, "queryInputStyle", &dpyinfo->xim_styles,  
((void *)0));
-    destroy.callback = xim_destroy_callback;
-    destroy.client_data = (XPointer)dpyinfo;
-    XSetIMValues (xim, "destroyCallback", &destroy, ((void *)0));
   }
      }
    else
      dpyinfo->xim = ((void *)0);
  }
- # 8205 "xterm.c"
- static void
- xim_instantiate_callback (display, client_data, call_data)
-      Display *display;
-      XPointer client_data;
-      XPointer call_data;
- {
-   struct xim_inst_t *xim_inst = (struct xim_inst_t *) client_data;
-   struct x_display_info *dpyinfo = xim_inst->dpyinfo;
-   if (dpyinfo->xim)
-     return;
-   xim_open_dpy (dpyinfo, xim_inst->resource_name);
-   if (dpyinfo->xim && dpyinfo->reference_count > 0)
-     {
-       Lisp_Object tail, frame;
-       (interrupt_input_blocked++);
-       for ((tail) = Vframe_list; ((((enum Lisp_Type) (((unsigned  
int) ((tail))) & ((((int) 1) << 3) - 1))) == Lisp_Cons) && (frame = (0+ 
((((void) 0,(struct Lisp_Cons *) ((int) (((tail)) & ~((((int) 1) << 3)  
- 1))))->car))), 1)); tail = (0+((((void) 0,(struct Lisp_Cons *)  
((int) (((tail)) & ~((((int) 1) << 3) - 1))))->u.cdr))))
-  {
-    struct frame *f = ((void) 0,(struct frame *) ((int) ((frame) &  
~((((int) 1) << 3) - 1))));
-    if (((f)->output_method == output_x_window)
-               && ((f)->output_data.x->display_info) == xim_inst- 
>dpyinfo)
-      if (((f)->output_data.x->xic) == ((void *)0))
-        {
-   create_frame_xic (f);
-   if (((f)->output_data.x->xic_style) & 0x0100L)
-     xic_set_statusarea (f);
-   if (((f)->output_data.x->xic_style) & 0x0004L)
-     {
-       struct window *w = ((void) 0,(struct window *) ((int) ((f- 
>selected_window) & ~((((int) 1) << 3) - 1))));
-       xic_set_preeditarea (w, w->cursor.x, w->cursor.y);
-     }
-        }
-  }
-       do { --interrupt_input_blocked; if (interrupt_input_blocked ==  
0) { if (interrupt_input_pending) reinvoke_input_signal (); if  
(pending_atimers) do_pending_atimers (); } else if  
(interrupt_input_blocked < 0) abort (); } while (0);
-     }
- }
  # 8258 "xterm.c"
  static void
  xim_initialize (dpyinfo, resource_name)
--- 57693,57704 ----
***************
*** 57740,57757 ****
    dpyinfo->xim = ((void *)0);                                      
dpyinfo->xim = ((void *)0);
    if (use_xim)                                                     
if (use_xim)
      {                                                               {
                                                                ! #  
8285 "xterm.c"
                                                                !       xim_open_dpy 
 (dpyinfo, resource_name);
!       struct xim_inst_t *xim_inst;
!       int len;
!       xim_inst = (struct xim_inst_t *) xmalloc (sizeof (struct  
xim_inst_t));
!       dpyinfo->xim_callback_data = xim_inst;
!       xim_inst->dpyinfo = dpyinfo;
!       len = strlen (resource_name);
!       xim_inst->resource_name = (char *) xmalloc (len + 1);
!       bcopy (resource_name, xim_inst->resource_name, len + 1);
!       XRegisterIMInstantiateCallback (dpyinfo->display, dpyinfo->xrdb,
!           resource_name, "Emacs",
!           xim_instantiate_callback,
!           (XPointer) xim_inst);
      }                                                               }
  }                                                               }
  static void                                                      
static void

***************
*** 57760,57771 ****
   
{                                                                       {
    if  
(use_xim)                                                             
if (use_xim)
       
{                                                                       {
        if (dpyinfo- 
>display)                                                   if  
(dpyinfo->display)
!  XUnregisterIMInstantiateCallback (dpyinfo->display, dpyinfo->xrdb,
!        ((void *)0), "Emacs",
!        xim_instantiate_callback, ((void *)0));
!       xfree (dpyinfo->xim_callback_data->resource_name);
!       xfree (dpyinfo->xim_callback_data);
        if (dpyinfo->display)
   XCloseIM (dpyinfo- 
>xim);                                                XCloseIM  
(dpyinfo->xim);

***************
*** 58841,58847 ****
      = XCreateFontCursor (dpyinfo->display, 116);                     
= XCreateFontCursor (dpyinfo->display, 116);
    xrdb = x_load_resources (dpyinfo->display, xrm_option,           
xrdb = x_load_resources (dpyinfo->display, xrm_option,
        resource_name,  
"Emacs");                                        resource_name,  
"Emacs");
!   XrmSetDatabase (dpyinfo->display, xrdb);                    !    
dpyinfo->display->db = xrdb;
    dpyinfo->xrdb = xrdb;                                            
dpyinfo->xrdb = xrdb;


--
Greetings

  Pete

There is no worse tyranny than to force a man to pay for what he does  
not want merely because you think it would be good for him.
				– Robert Heinlein


Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5250; Package emacs. (Tue, 05 Jan 2010 23:03:49 GMT) Full text and rfc822 format available.

Message #9 received at 5250 <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
Cc: 5250 <at> debbugs.gnu.org
Subject: bug#5250: 23.1.90;
	src/xterm.c does not compile - like #3895 from 2009-07-27
Date: Sat, 02 Jan 2010 16:28:40 -0500
> The bug is back, now on Mac OS X 10.5.8 (Leopard) with PowerPC
> processor.
>
> gcc -I/sw/include -L/sw/lib -c -no-cpp-precomp -Demacs ...
> xterm.c: In function ‘x_term_init’:
> xterm.c:10277: error: dereferencing pointer to incomplete type
> Multiple include guards may be useful for:
> /sw/include/gtk-2.0/gtk/gtklinkbutton.h
> make[2]: *** [xterm.o] Error 1
> make[1]: *** [src] Error 2
> make: *** [bootstrap] Error 2

I'm afraid you seem to be the only one who has been having these
compilation problems (that we know of).  The useful way to tackle this
problem is to bisect until you find the first change that broke
compilation, and report that change to us.  Otherwise, there seems to be
little we can do.




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5250; Package emacs. (Tue, 05 Jan 2010 23:03:50 GMT) Full text and rfc822 format available.

Message #12 received at 5250 <at> debbugs.gnu.org (full text, mbox):

From: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 5250 <at> debbugs.gnu.org
Subject: Re: bug#5250: 23.1.90;
	src/xterm.c does not compile - like #3895 from 2009-07-27
Date: Sun, 3 Jan 2010 01:24:33 +0100
Am 02.01.2010 um 22:28 schrieb Chong Yidong:

> I'm afraid you seem to be the only one who has been having these
> compilation problems (that we know of).  The useful way to tackle this
> problem is to bisect until you find the first change that broke
> compilation, and report that change to us.  Otherwise, there seems  
> to be
> little we can do.


I hardly remember when I last built GNU Emacs with Fink. I have an old  
emacs-23.0.94 from middle of june which uses Fink... (and this area of  
my disk is never backupped)

Xterm.c preprocessed by gcc -E does not give any hints?

--
Greetings

  Pete

A designer knows he has arrived at perfection not when there is no  
longer anything to add, but when there is no longer anything to take  
away.
				– Antoine de Saint-Exupéry





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5250; Package emacs. (Thu, 07 Jan 2010 19:51:01 GMT) Full text and rfc822 format available.

Message #15 received at 5250 <at> debbugs.gnu.org (full text, mbox):

From: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 5250 <at> debbugs.gnu.org
Subject: Re: bug#5250: 23.1.90;
	src/xterm.c does not compile - like #3895 from 2009-07-27
Date: Thu, 7 Jan 2010 20:50:07 +0100
Hello!

By comparing the pre-processed output from xterm.c in the simple case  
X tollkit Xaw3d I found a hint for the cause of the compile failures:  
the environment variable MACOSX_DEPLOYMENT_TARGET was set. Unsetting  
it now led to a freshly compiled GNU Emacs 23.1.90! I did it with GCC  
4.2.

Hopefully the same is true for GTK+2 – and default GCC 4.0!

--
Greetings

  Pete

A morning without coffee is like something without something else.





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5250; Package emacs. (Thu, 07 Jan 2010 22:39:01 GMT) Full text and rfc822 format available.

Message #18 received at 5250 <at> debbugs.gnu.org (full text, mbox):

From: Peter Dyballa <Peter_Dyballa <at> Freenet.DE>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 5250 <at> debbugs.gnu.org
Subject: Re: bug#5250: 23.1.90;
	src/xterm.c does not compile - like #3895 from 2009-07-27
Date: Thu, 7 Jan 2010 23:38:42 +0100
Am 07.01.2010 um 20:50 schrieb Peter Dyballa:

> Hopefully the same is true for GTK+2 – and default GCC 4.0!

By removing the before mentioned environment variable also the GTK+2  
variants compile – and dump a core when I use xkill to close them!

So this bug does not exist and might even be introduced by me! Sorry.

--
Greetings

  Pete

Without vi there is only GNU Emacs





bug closed, send any further explanations to Peter Dyballa <Peter_Dyballa <at> Freenet.DE> Request was from Chong Yidong <cyd <at> stupidchicken.com> to control <at> debbugs.gnu.org. (Sat, 09 Jan 2010 18:52:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <bug-gnu-emacs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 07 Feb 2010 12:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 139 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.