From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Chris Newsgroups: gmane.emacs.devel,gmane.emacs.pretest.bugs Subject: Re: Emacs 23.0.60 build problem on CANNOT_DUMP platform GNUstep Date: Thu, 31 Jan 2008 02:55:50 -1000 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Generated by Pantomime 1.2.0) Content-Type: text/plain; charset="us-ascii"; format="flowed" X-Trace: ger.gmane.org 1201790189 29887 80.91.229.12 (31 Jan 2008 14:36:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 31 Jan 2008 14:36:29 +0000 (UTC) Cc: emacs-pretest-bug@gnu.org To: YAMAMOTO Mitsuharu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 31 15:36:50 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JKaWn-00071W-5p for ged-emacs-devel@m.gmane.org; Thu, 31 Jan 2008 15:36:34 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JKaWL-0000FL-Jq for ged-emacs-devel@m.gmane.org; Thu, 31 Jan 2008 09:36:05 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JKYup-0006Xw-Ls for emacs-devel@gnu.org; Thu, 31 Jan 2008 07:53:15 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JKYum-0006Wd-Hq for emacs-devel@gnu.org; Thu, 31 Jan 2008 07:53:15 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JKYum-0006WV-Bw for emacs-devel@gnu.org; Thu, 31 Jan 2008 07:53:12 -0500 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JKYum-0007Qp-FW for emacs-devel@gnu.org; Thu, 31 Jan 2008 07:53:12 -0500 Original-Received: from mail.gnu.org ([199.232.76.166] helo=mx10.gnu.org) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1JKYul-0000w7-Dl for emacs-pretest-bug@gnu.org; Thu, 31 Jan 2008 07:53:11 -0500 Original-Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1JKYug-0007PT-P6 for emacs-pretest-bug@gnu.org; Thu, 31 Jan 2008 07:53:09 -0500 Original-Received: from out2.smtp.messagingengine.com ([66.111.4.26]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JKYug-0007PF-Cm for emacs-pretest-bug@gnu.org; Thu, 31 Jan 2008 07:53:06 -0500 Original-Received: from compute1.internal (compute1.internal [10.202.2.41]) by out1.messagingengine.com (Postfix) with ESMTP id 2F6DE8E595; Thu, 31 Jan 2008 07:53:05 -0500 (EST) Original-Received: from heartbeat1.messagingengine.com ([10.202.2.160]) by compute1.internal (MEProxy); Thu, 31 Jan 2008 07:53:05 -0500 X-Sasl-enc: BwR68S/psguRUGZiF4o/o9V6liokNV70JvH2BEv3L0Jz 1201783984 Original-Received: from localhost.localdomain (75-95-220-61.hon.clearwire-dns.net [75.95.220.61]) by mail.messagingengine.com (Postfix) with ESMTP id 520CE484F; Thu, 31 Jan 2008 07:53:04 -0500 (EST) Original-Received: from localhost ([127.0.0.1] helo=localhost.localdomain ident=cjh) by localhost.localdomain with esmtp (Exim 4.50) id 1JKYxK-0008FF-1w; Thu, 31 Jan 2008 02:55:50 -1000 In-Reply-To: User-Agent: GNUMail (Version 1.2.0) X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Thu, 31 Jan 2008 09:34:42 -0500 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:87861 gmane.emacs.pretest.bugs:20821 Archived-At: I think I just discovered a bit more info concerning the optimizations mentioned by YAMAMOTO Mitsuharu. Somewhere in this part of xfaces.c: 6696 CHECK_LIVE_FRAME (frame); 6697 f = XFRAME (frame); 6698 6699 for (i = 0; i < LFACE_VECTOR_SIZE; i++) 6700 attrs[i] = Qunspecified; 6701 merge_face_ref (f, attributes, attrs, 1, 0); According to the gdb output below (I had to re-compile with -gstabs+ for 'f' to even print on my machine), when we get to the breakpoint at 6696, 'f' seems -- to my uneducated eye -- to already contain a value valid enough that gdb goes ahead and prints it. But I'm pretty sure its garbage. When I issue 'step' to gdb, it doesn't stop at 6697, but at 6699 instead, and 'f' still seems to contain the exact same address. But when I set a breakpoint at 6701 -- the first statement after the loop -- and continue to it, 'f' now contains 0x12. Then, if I step into merge_face_ref and 'p f', it has a 3rd distinct value. After returning from merge_face_ref, 'p f' displays a *4th* value. Especially interesting to me is that the 3rd value is the only that looks like it is actually valid, since the struct members 'output_method', 'desired_cursor' and 'blink_off_cursor' have been filled in with names by gdb. ================================================== Starting program: /home/cjh/GNUstep/Build/emacs-23.0.0_NS-9.0rc3/nextstep/build/Emacs.app/Emacs -geometry 80x40+0+0 [Thread debugging using libthread_db enabled] [New Thread -1222360960 (LWP 31645)] [Switching to Thread -1222360960 (LWP 31645)] Breakpoint 4, Fdisplay_supports_face_attributes_p (attributes=140907877, display=139122972) at xfaces.c:6696 6696 CHECK_LIVE_FRAME (frame); (gdb) l 6690,6710 6690 XFRAME (frame)->param_alist)), 6691 display))) 6692 break; 6693 } 6694 } 6695 6696 CHECK_LIVE_FRAME (frame); 6697 f = XFRAME (frame); 6698 6699 for (i = 0; i < LFACE_VECTOR_SIZE; i++) 6700 attrs[i] = Qunspecified; 6701 merge_face_ref (f, attributes, attrs, 1, 0); 6702 6703 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); 6704 if (def_face == NULL) 6705 { 6706 if (! realize_basic_faces (f)) 6707 error ("Cannot realize default face"); 6708 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); 6709 if (def_face == NULL) 6710 abort (); /* realize_basic_faces must have set it up */ (gdb) p frame $14 = 139122972 (gdb) pr # (gdb) p f $15 = (struct frame *) 0x83ecb5c (gdb) p *f $16 = { size = 138653505, next = 0x8498791, name = 139036969, icon_name = 138653505, title = 140457937, focus_frame = 140460833, root_window = 138653505, selected_window = 140460401, minibuffer_window = 140460857, param_alist = 140541507, scroll_bars = 140541475, condemned_scroll_bars = 140541523, menu_bar_items = 140541491, face_alist = 140541539, menu_bar_vector = 138653505, buffer_predicate = 138653505, buffer_list = 138653505, buried_buffer_list = 140438665, menu_bar_window = 138653505, tool_bar_window = 139049481, tool_bar_items = 140438689, desired_tool_bar_string = 140438737, current_tool_bar_string = 139054465, face_cache = 0x843af41, menu_bar_items_used = 140424417, namebuf = 0x85eb3f1 "", current_pool = 0x85eed01, desired_pool = 0x85eb3c1, desired_matrix = 0x85eb4c9, current_matrix = 0x85eece9, glyphs_initialized_p = 1, resized_p = 0, force_flush_display_p = 0, default_face_done_p = 1, already_hscrolled_p = 1, updated_p = 1, minimize_tool_bar_window_p = 0, external_tool_bar = 138653505, tool_bar_lines = 138653505, n_tool_bar_rows = 139049505, n_tool_bar_items = -1078695456, decode_mode_spec_buffer = 0x85eb1f9 "", insert_line_cost = 0x843af41, delete_line_cost = 0x85eb199, insert_n_lines_cost = 0x843af41, delete_n_lines_cost = 0x843af41, text_lines = 8, text_cols = 140423793, total_lines = 1000, total_cols = 138653505, new_text_lines = -1078695424, new_text_cols = 140423553, left_pos = 140423625, top_pos = -1078701088, pixel_height = 0, pixel_width = 140424057, resx = 2.3241811535839589e-268, resy = 2.3241534258806793e-268, x_pixels_diff = 138653505, y_pixels_diff = 140423649, win_gravity = 140729112, size_hint_flags = 140424033, border_width = 140423697, internal_border_width = 138653505, column_width = 100, space_width = 1, line_height = 140423601, output_method = 400, terminal = 0x0, output_data = { tty = 0x864d6b5, x = 0x864d6b5, w32 = 0x864d6b5, mac = 0x864d6b5, ns = 0x864d6b5, nothing = 140826293 }, font_driver_list = 0x0, fringe_cols = 138653505, left_fringe_width = 138653505, right_fringe_width = 140423769, want_fullscreen = -1, menu_bar_lines = 138653505, external_menu_bar = 140426577, display_preempted = -103 '\231', visible = -67 '\275', iconified = 94 '^', async_visible = 8 '\b', async_iconified = -31 '\341', garbaged = -74 '\266', has_minibuffer = 94 '^', wants_modeline = 8 '\b', can_have_scroll_bars = 41 ')', auto_raise = -73 '\267', auto_lower = 94 '^', no_split = 8 '\b', explicit_name = -71 '\271', window_sizes_changed = -73 '\267', mouse_moved = 94 '^', vertical_scroll_bar_type = 140869277, desired_cursor = 140426817, cursor_width = 140426769, blink_off_cursor = 140425169, blink_off_cursor_width = 140425025, message_buf = 0x85ebd69 "", scroll_bottom_vpos = 140425073, scroll_bottom_vpos = 140425073, config_scroll_bar_width = 140426793, config_scroll_bar_cols = 140424953, scroll_bar_actual_width = 140424905, cost_calculation_baud_rate = 140426625, gamma = 6.9380006746658039e-316, extra_line_spacing = 1, background_pixel = 140425121, foreground_pixel = 140426865 } (gdb) step 6699 for (i = 0; i < LFACE_VECTOR_SIZE; i++) (gdb) p f $17 = (struct frame *) 0x83ecb5c (gdb) break 6701 Note: breakpoint 5 also set at pc 0x811497a. Breakpoint 6 at 0x811497a: file xfaces.c, line 6701. (gdb) cont Continuing. Breakpoint 5, Fdisplay_supports_face_attributes_p (attributes=140907877, display=139122972) at xfaces.c:6701 6701 merge_face_ref (f, attributes, attrs, 1, 0); (gdb) p f $18 = (struct frame *) 0x12 (gdb) step merge_face_ref (f=0x84ad918, face_ref=140907877, to=0xbfb45330, err_msgs=1, named_merge_points=0x0) at xfaces.c:3943 3943 int ok = 1; /* Succeed without an error? */ (gdb) p f $20 = (struct frame *) 0x84ad918 (gdb) p *f $21 = { size = 1073742869, next = 0x84ad628, name = 139109019, icon_name = 138653505, title = 138653505, focus_frame = 138653505, root_window = 139123380, selected_window = 139123380, minibuffer_window = 139123724, param_alist = 138653505, scroll_bars = 138653505, condemned_scroll_bars = 138653505, menu_bar_items = 138653505, face_alist = 140907277, menu_bar_vector = 138653505, buffer_predicate = 138653505, buffer_list = 138641957, buried_buffer_list = 138653505, menu_bar_window = 138653505, tool_bar_window = 138653505, tool_bar_items = 138653505, desired_tool_bar_string = 138653505, current_tool_bar_string = 138653505, face_cache = 0x0, menu_bar_items_used = 0, namebuf = 0x0, current_pool = 0x8608110, desired_pool = 0x86080f8, desired_matrix = 0x8608128, current_matrix = 0x8608378, glyphs_initialized_p = 1, resized_p = 0, force_flush_display_p = 0, default_face_done_p = 0, already_hscrolled_p = 0, updated_p = 0, minimize_tool_bar_window_p = 0, external_tool_bar = 0, tool_bar_lines = 0, n_tool_bar_rows = 0, n_tool_bar_items = 0, decode_mode_spec_buffer = 0x860c038 "", insert_line_cost = 0x0, delete_line_cost = 0x0, insert_n_lines_cost = 0x0, delete_n_lines_cost = 0x0, text_lines = 10, text_cols = 10, total_lines = 0, total_cols = 10, new_text_lines = 0, new_text_cols = 0, left_pos = 0, top_pos = 0, pixel_height = 0, pixel_width = 0, resx = 0, resy = 0, x_pixels_diff = 0, y_pixels_diff = 0, win_gravity = 0, size_hint_flags = 0, border_width = 0, internal_border_width = 0, column_width = 1, space_width = 0, line_height = 1, output_method = output_initial, terminal = 0x84ad628, output_data = { tty = 0x0, x = 0x0, w32 = 0x0, mac = 0x0, ns = 0x0, nothing = 0 }, font_driver_list = 0x0, fringe_cols = 0, left_fringe_width = 0, right_fringe_width = 0, want_fullscreen = 0, menu_bar_lines = 0, external_menu_bar = 0, display_preempted = 0 '\0', visible = 1 '\001', iconified = 0 '\0', async_visible = 1 '\001', async_iconified = 0 '\0', garbaged = 1 '\001', has_minibuffer = 1 '\001', wants_modeline = 1 '\001', can_have_scroll_bars = 0 '\0', auto_raise = 0 '\0', auto_lower = 0 '\0', no_split = 0 '\0', explicit_name = 0 '\0', window_sizes_changed = 1 '\001', mouse_moved = 0 '\0', vertical_scroll_bar_type = vertical_scroll_bar_none, desired_cursor = FILLED_BOX_CURSOR, cursor_width = 0, blink_off_cursor = FILLED_BOX_CURSOR, blink_off_cursor_width = 0, message_buf = 0x860c008 "", scroll_bottom_vpos = 0, config_scroll_bar_width = 0, config_scroll_bar_cols = 0, scroll_bar_actual_width = 0, cost_calculation_baud_rate = 0, gamma = 0, extra_line_spacing = 0, background_pixel = 4294967293, foreground_pixel = 4294967294 } (gdb) cont Continuing. Breakpoint 2, Fdisplay_supports_face_attributes_p (attributes=140907877, display=139122972) at xfaces.c:6703 6703 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); (gdb) p f $22 = (struct frame *) 0x1 (gdb) step Program received signal SIGSEGV, Segmentation fault. 0x081149b4 in Fdisplay_supports_face_attributes_p (attributes=140907877, display=139122972) at xfaces.c:6703 6703 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); (gdb) ================================================== On 2008-01-31 00:45:41 -1000 YAMAMOTO Mitsuharu wrote: >>>>>> On Wed, 30 Jan 2008 09:13:06 -1000, Chris >>>>>> >>>>>> said: > >> It seems emacs-pretest-bug list is no longer active, so I decided to >> send this here. > > Bug reports posted to emacs-pretest-bug@gnu.org are now forwarded to > emacs-devel@gnu.org, and it is still the appropriate place to post a > report for the prerelease version. > >> This was originally sent to the >> emacs-app-dev-@lists.sourceforge.net. The >> folks there helped come up with a workaround/possible solution, and >> YAMAMOTO Mitsuharu on that list suggested I send a report to >> emacs-pretest-bug. > > In short, creation of Vprocess_environment from `environ' in > set_initial_environment (callproc.c) is done without a terminating > Qnil as its initial value on CANNOT_DUMP platforms. > Vprocess_environment is supposed to be initialized to Qnil in > syms_of_callproc, but it is actually called after the creation of > Vprocess_environment on CANNOT_DUMP platforms. > > void > set_initial_environment () > { > register char **envp; > #ifndef CANNOT_DUMP > if (initialized) > #endif > { > for (envp = environ; *envp; envp++) > Vprocess_environment = Fcons (build_string (*envp), > Vprocess_environment); > /* Ideally, the `copy' shouldn't be necessary, but it seems > it's frequent > to use `delete' and friends on process-environment. */ > Vinitial_environment = Fcopy_sequence (Vprocess_environment); > } > } > >> This seems to work -- the build completes normally. > >> The inserted line is isolated below: >> ====================================================== >> #ifndef CANNOT_DUMP >> if (initialized) >> #endif >> { > >> Vprocess_environment = Qnil; > >> for (envp = environ; *envp; envp++) >> Vprocess_environment = Fcons (build_string (*envp), >> ====================================================== > > I just asked the OP to try this workaround in order to recognize the > situation. So it might not be a right solution. Experts on this part > may provide a better one. > > Also, even with this workaround, CANNOT_DUMP seems to show further > problems. The following backtrace is from the same author originally > at > http://sourceforge.net/mailarchive/forum.php?thread_name=6e099bf81497c842e230c086b73253c8%40lagorda&forum_name=emacs-app-dev- > > ==================================================== > ~/GNUstep/Build/emacs-23.0.0_NS-9.0rc3/src$ gdb > ../nextstep/build/Emacs.app/Emacs > GNU gdb 6.3-debian > > DISPLAY = :0.0 > TERM = linux > Breakpoint 1 at 0x81391f4: file sysdep.c, line 1444. > > (gdb) break xfaces.c:6703 > Breakpoint 2 at 0x81149ab: file xfaces.c, line 6703. > > (gdb) run > Starting program: > /home/cjh/GNUstep/Build/emacs-23.0.0_NS-9.0rc3/nextstep/build/Emacs.app/Emacs > -geometry 80x40+0+0 > [Thread debugging using libthread_db enabled] > [New Thread -1223024512 (LWP 30047)] > [Switching to Thread -1223024512 (LWP 30047)] > > Breakpoint 2, Fdisplay_supports_face_attributes_p > (attributes=140908901, > display=139122972) > at xfaces.c:6703 > 6703 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); > > (gdb) info locals > attributes = 1 > display = -1077660624 > supports = 1 > i = 1 > frame = 0 > def_face = (struct face *) 0x83ad51c > attrs = {138679945, 138679945, 138679945, 138679945, 138679945, > 138679633, > 138679945 } > > (gdb) p f > $1 = (struct frame *) 0x1 > > (gdb) cont > Continuing. > > Program received signal SIGSEGV, Segmentation fault. > 0x081149b4 in Fdisplay_supports_face_attributes_p > (attributes=140908901, > display=139122972) > at xfaces.c:6703 > 6703 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); > > (gdb) bt full 3 > #0 0x081149b4 in Fdisplay_supports_face_attributes_p > (attributes=140908901, > display=139122972) > at xfaces.c:6703 > attributes = 0 > display = -1077660624 > supports = 0 > i = 0 > frame = 139122968 > def_face = (struct face *) 0x83ad51c > attrs = {138679945, 138679945, 138679945, 138679945, 138679945, > 138679633, > 138679945 } > #1 0x08197e24 in Ffuncall (nargs=3, args=0xbfc43530) at eval.c:3034 > fun = 139122968 > original_fun = -1077660624 > funcar = -1077660624 > numargs = 2 > lisp_numargs = 139122968 > val = 140908888 > backtrace = { > next = 0xbfc43660, > function = 0xbfc43530, > args = 0xbfc43534, > nargs = 2, > evalargs = 0 '\0', > debug_on_exit = 0 '\0' > } > > (gdb) bt > #0 0x081149b4 in Fdisplay_supports_face_attributes_p > (attributes=140908901, > display=139122972) > at xfaces.c:6703 > #1 0x08197e24 in Ffuncall (nargs=3, args=0xbfac13b0) at eval.c:3034 > #2 0x081c4228 in Fbyte_code (bytestr=136865075, vector=136865092, > maxdepth=5) at bytecode.c:679 > #3 0x0819826e in funcall_lambda (fun=136865028, nargs=2, > arg_vector=0xbfac1534) at eval.c:3222 > #4 0x08197cbd in Ffuncall (nargs=3, args=0xbfac1530) at eval.c:3088 > #5 0x081c4228 in Fbyte_code (bytestr=136865331, vector=136865348, > maxdepth=4) at bytecode.c:679 > #6 0x0819826e in funcall_lambda (fun=136865276, nargs=2, > arg_vector=0xbfac16a4) at eval.c:3222 > #7 0x08197cbd in Ffuncall (nargs=3, args=0xbfac16a0) at eval.c:3088 > #8 0x081c4228 in Fbyte_code (bytestr=136865635, vector=136865652, > maxdepth=6) at bytecode.c:679 > #9 0x0819826e in funcall_lambda (fun=136865572, nargs=3, > arg_vector=0xbfac1824) at eval.c:3222 > #10 0x08197cbd in Ffuncall (nargs=4, args=0xbfac1820) at eval.c:3088 > #11 0x081c4228 in Fbyte_code (bytestr=136842019, vector=136842036, > maxdepth=5) at bytecode.c:679 > #12 0x0819826e in funcall_lambda (fun=136841948, nargs=5, > arg_vector=0xbfac19a4) at eval.c:3222 > #13 0x08197cbd in Ffuncall (nargs=6, args=0xbfac19a0) at eval.c:3088 > #14 0x081c4228 in Fbyte_code (bytestr=145632179, vector=145637700, > maxdepth=29) at bytecode.c:679 > #15 0x08197068 in Feval (form=140909333) at eval.c:2367 > #16 0x081ae8d3 in readevalloop (readcharfun=139121545, > stream=0x8ad4468, > sourcename=145584283, > evalfun=0x8196c60 , printflag=0, unibyte=138653505, > readfun=138653505, start=138653505, > end=138653505) at lread.c:1765 > #17 0x081ad704 in Fload (file=145584123, noerror=138653505, > nomessage=138653505, > nosuffix=138653505, must_suffix=138653505) at lread.c:1226 > #18 0x081970c7 in Feval (form=140869885) at eval.c:2375 > #19 0x081ae8d3 in readevalloop (readcharfun=139121545, > stream=0x860c468, > sourcename=140541227, > evalfun=0x8196c60 , printflag=0, unibyte=138653505, > readfun=138653505, start=138653505, > end=138653505) at lread.c:1765 > #20 0x081ad704 in Fload (file=140541035, noerror=138653505, > nomessage=138653505, > nosuffix=138653505, must_suffix=138653505) at lread.c:1226 > #21 0x081970c7 in Feval (form=138637701) at eval.c:2375 > #22 0x0811f334 in top_level_2 () at keyboard.c:1410 > #23 0x08195b3c in internal_condition_case (bfun=0x811f310 > , > handlers=139036201, > hfun=0x811eee0 ) at eval.c:1497 > #24 0x0811f38a in top_level_1 () at keyboard.c:1418 > #25 0x08195699 in internal_catch (tag=139031049, func=0x811f340 > , arg=138653505) > at eval.c:1233 > #26 0x0811f26a in command_loop () at keyboard.c:1373 > #27 0x0811ea97 in recursive_edit_1 () at keyboard.c:989 > #28 0x0811ec3f in Frecursive_edit () at keyboard.c:1051 > #29 0x0811cb94 in main (argc=3, argv=0xbfac2fa4) at emacs.c:1862 > > Lisp Backtrace: > "display-supports-face-attributes-p" (0xbfac13b4) > "face-spec-set-match-display" (0xbfac1534) > "face-spec-choose" (0xbfac16a4) > "face-spec-set" (0xbfac1824) > "custom-declare-face" (0xbfac19a4) > "byte-code" (0xbfac1af0) > "load" (0xbfac21d0) > "load" (0xbfac28b0) > > (gdb) > ================================================= > > I could reproduce a similar backtrace with the X11 build of Emacs > 23.0.50 on Mac OS X by deliberately defining CANNOT_DUMP. In the > above backtrace, several values might become unreliable because of > optimization. I could get the following output by turning it off. > > 6235 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); > (gdb) info locals > supports = 0 > i = 17 > frame = 13636396 > f = (struct frame *) 0xd01328 > def_face = (struct face *) 0x1808b11 > attrs = {25201737, 25201737, 25201737, 25201737, 25201737, 25201425, > 25201737 > } > (gdb) p *f > $2 = { > size = 1073742869, next = 0xd01208, name = 25220731, icon_name = > 25165833, title = 25165833, focus_frame = 25165833, root_window = > 13636812, selected_window = 13636812, minibuffer_window = 13637180, > param_alist = 25165833, scroll_bars = 25165833, > condemned_scroll_bars = > 25165833, menu_bar_items = 25165833, face_alist = 7789661, > menu_bar_vector > = 25165833, buffer_predicate = 25165833, buffer_list = 7629717, > buried_buffer_list = 25165833, menu_bar_window = 25165833, > tool_bar_window > = 25165833, tool_bar_items = 25165833, desired_tool_bar_string = > 25165833, > current_tool_bar_string = 25165833, face_cache = 0x0, > menu_bar_items_used = > 0, namebuf = 0x0, current_pool = 0xd03d08, desired_pool = > 0xd03ce8, > desired_matrix = 0x1839408, current_matrix = 0x1839808, > glyphs_initialized_p = 1, resized_p = 0, force_flush_display_p = 0, > default_face_done_p = 0, already_hscrolled_p = 0, updated_p = 0, > minimize_tool_bar_window_p = 0, tool_bar_lines = 0, n_tool_bar_rows > = 0, > n_tool_bar_items = 0, decode_mode_spec_buffer = 0xd03ea8 "", > insert_line_cost = 0x0, delete_line_cost = 0x0, insert_n_lines_cost > = 0x0, > delete_n_lines_cost = 0x0, text_lines = 10, text_cols = 10, > total_lines = > 0, total_cols = 10, new_text_lines = 0, new_text_cols = 0, > left_pos = 0, > top_pos = 0, pixel_height = 0, pixel_width = 0, x_pixels_diff = 0, > y_pixels_diff = 0, win_gravity = 0, size_hint_flags = 0, > border_width = 0, > internal_border_width = 0, column_width = 1, space_width = 0, > line_height > = 1, output_method = output_initial, terminal = 0xd01208, > output_data = { > tty = 0x0, x = 0x0, w32 = 0x0, mac = 0x0, nothing = 0 > }, fringe_cols = 0, left_fringe_width = 0, right_fringe_width = > 0, > want_fullscreen = 0, menu_bar_lines = 0, external_menu_bar = 0, > display_preempted = 0 '\0', visible = 1 '\001', iconified = 0 '\0', > async_visible = 1 '\001', async_iconified = 0 '\0', garbaged = 1 > '\001', > has_minibuffer = 1 '\001', wants_modeline = 1 '\001', > can_have_scroll_bars > = 0 '\0', auto_raise = 0 '\0', auto_lower = 0 '\0', no_split = 0 > '\0', > explicit_name = 0 '\0', window_sizes_changed = 1 '\001', > mouse_moved = 0 > '\0', vertical_scroll_bar_type = vertical_scroll_bar_none, > desired_cursor = > FILLED_BOX_CURSOR, cursor_width = 0, blink_off_cursor = > FILLED_BOX_CURSOR, > blink_off_cursor_width = 0, message_buf = 0xd03e68 "", > scroll_bottom_vpos = > 0, config_scroll_bar_width = 0, config_scroll_bar_cols = 0, > scroll_bar_actual_width = 0, cost_calculation_baud_rate = 0, gamma > = 0, > extra_line_spacing = 0, background_pixel = 4294967293, > foreground_pixel = > 4294967294 > > I guess the CANNOT_DUMP situation has not been fully tested after the > multi-tty merger. > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp >