[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13486: 25.0.50; struct selection_input_event data might be corrupted
From: |
YAMAMOTO Mitsuharu |
Subject: |
bug#13486: 25.0.50; struct selection_input_event data might be corrupted by assignments as another structure type |
Date: |
Wed, 24 Jun 2015 09:56:25 +0900 |
User-agent: |
Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) |
>>>>> On Tue, 23 Jun 2015 16:44:26 -0700, Paul Eggert <eggert@cs.ucla.edu> said:
> Thanks for tracking down and diagnosing this bug. I've installed a
> patch as commit 1552e6737317ea2c85e06600e178114c6b0f9fb2 in emacs
> master; can you please try it in your environment?
Thanks for looking into this. But it doesn't build as it is in the
original environment: OS X 10.7, and the following version of llvm-gcc
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658)
(LLVM build 2336.11.00)
The error message is:
gcc -std=gnu99 -c -I/opt/local/include -Demacs -I. -I../../../emacs/trunk/src
-I../lib -I../../../emacs/trunk/lib -D_REENTRANT -I/opt/local/include/gtk-3.0
-I/opt/local/include/at-spi2-atk/2.0 -I/opt/local/include/at-spi-2.0
-I/opt/local/include/dbus-1.0 -I/opt/local/lib/dbus-1.0/include
-I/opt/local/include/gtk-3.0 -I/opt/local/include/gio-unix-2.0/
-I/opt/local/include -I/opt/local/include/cairo -I/opt/local/include
-I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz
-I/opt/local/include/pango-1.0 -I/opt/local/include/atk-1.0
-I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/libpng16 -I/opt/local/include
-I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16
-I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
-I/opt/local/include -I/opt/local/include -I/opt/local/include/freetype2
-I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/libpng16 -I/opt/local/include -D_REENTRANT
-I/opt/local/include/librsvg-2.0 -I/opt/local/include/gdk-pixbuf-2.0
-I/opt/local/include/libpng16 -I/opt/local/include/cairo
-I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
-I/opt/local/include -I/opt/local/include/pixman-1 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/libpng16 -I/opt/local/include -DMAGICKCORE_HDRI_ENABLE=0
-DMAGICKCORE_QUANTUM_DEPTH=16 -DMAGICKCORE_HDRI_ENABLE=0
-DMAGICKCORE_QUANTUM_DEPTH=16 -I/opt/local/include/ImageMagick-6
-I/opt/local/include/libpng16 -I/opt/local/include/libxml2
-I/opt/local/include/dbus-1.0 -I/opt/local/lib/dbus-1.0/include
-I/opt/local/include -I/opt/local/include -I/opt/local/include -D_REENTRANT
-I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
-I/opt/local/include -DORBIT2=1 -D_REENTRANT -I/opt/local/include/gconf/2
-I/opt/local/include/orbit-2.0 -I/opt/local/include/glib-2.0
-I/opt/local/lib/glib-2.0/include -I/opt/local/include
-I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
-I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/libpng16 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/libpng16 -MMD -MF deps/dispnew.d -MP
-I/opt/local/include -I/opt/local/include/p11-kit-1 -I/opt/local/include
-D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
-I/opt/local/include -g3 -O2 ../../../emacs/trunk/src/dispnew.c
In file included from ../../../emacs/trunk/src/dispnew.c:33:
../../../emacs/trunk/src/keyboard.h: In function ‘kbd_buffer_store_event_hold’:
../../../emacs/trunk/src/keyboard.h:461: error: expected
specifier-qualifier-list before ‘*’ token
../../../emacs/trunk/src/keyboard.h:461: error: ‘struct <anonymous>’ has no
member named ‘__b’
../../../emacs/trunk/src/keyboard.h:461: error: expected
specifier-qualifier-list before ‘*’ token
../../../emacs/trunk/src/keyboard.h:461: error: ‘struct <anonymous>’ has no
member named ‘__b’
../../../emacs/trunk/src/keyboard.h:461: error: bit-field
‘_gl_verify_error_if_negative’ width not an integer constant
make: *** [dispnew.o] Error 1
The output of gcc -E for the corresponding part is:
kbd_buffer_store_event_hold (struct input_event *event,
struct input_event *hold_quit)
{
union buffered_input_event *ev = (union buffered_input_event *) event;
extern int (*_gl_verify_function461 (void)) [(!!sizeof (struct { unsigned int
_gl_verify_error_if_negative: (sizeof *event == sizeof *ev &&
__builtin_offsetof (struct { char __a; *event __b; }, __b) ==
__builtin_offsetof (struct { char __a; *ev __b; }, __b)) ? 1 : -1; }))];
return kbd_buffer_store_buffered_event ((union buffered_input_event *) event,
hold_quit);
}
If I comment out the line for the "verify" macro, the it successfully
builds and runs without crash.
YAMAMOTO Mitsuharu
mituharu@math.s.chiba-u.ac.jp