Subject: Re: bug#72692: Emacs 31.05 (40eecd594ac) get SIGSEGV on Linux (Linux 6.6.45 Kde Wayland)

From: Pip Cet <[email-masked]>
Date: Mon, 19 Aug 2024 06:17:23 +0000

"Eli Zaretskii" <[email-masked]> writes:

>> Date: Sun, 18 Aug 2024 18:11:47 +0000
>> From: Pip Cet <[email-masked]>
>> Cc: [email-masked], [email-masked]
>>
>> >> > Yes, but free_realized_faces calls free_realized_face, no?
>> >>
>> >> Yes, it does, but in my case, 'free_realized_face' is called by
>> >> 'realize_face', and 'free_realized_faces' isn't.
>> >
>> > Which face was freed, the ASCII face or not?
>>
>> The ASCII face was freed, the non-ASCII face remained in the cache. In
>> the log below, the ASCII face is 0x117cca0, the non-ASCII face is
>> 0x2a7a3c0.
>
> What are the other faces, 0x2a62860 and 0x2fb0dc0?

Other non-ASCII faces for the same ASCII face.  Since I insert four
random Unicode characters into the mode line, it's not unexpected there
is more than one.

>> >> I'll continue debugging this, but if there are any questions or further
>> >> helpful information, that would be much appreciated.
>> >
>> > I don't yet understand well what you are seeing because there isn't
>> > enough detailed information.
>>
>> Okay, maybe this helps.
>
> Thanks, it helps some.

I can still provide a fuller log if it helps.

>> lisp.h:2126: Emacs fatal error: assertion failed: CHAR_TABLE_P (a)
>> Fatal error 6: Aborted
>> Backtrace:
>> ./emacs() [0x60f113]
>> ./emacs() [0x5da076]
>
> Can you show this backtrace from GDB, preferably "bt all"?  I'm not
> sure I understand the reason just by looking at this.

Here's the backtrace. I applied a different patch this time so line
numbers might not match master precisely.  Patch follows afterwards.

(gdb) bt full
#0  terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:432
#1  0x0000000000684caf in die (msg=0x81ee20 "CHAR_TABLE_P (a)", file=0x81ecf0 "lisp.h", line=2126) at alloc.c:8058
#2  0x000000000078d68b in XCHAR_TABLE (a=XIL(0)) at lisp.h:2126
#3  0x000000000079027b in face_for_char (f=0x1235ad8, face=0x2a79d50, c=100206, pos=1, object=XIL(0x1178ab4)) at fontset.c:1005
        fontset = XIL(0)
        rfont_def = XIL(0x532a03)
        charset = XIL(0)
        face_id = 0
        id = 15805504
#4  0x000000000044b7bd in FACE_FOR_CHAR (f=0x1235ad8, face=0x2a79d50, character=100206, pos=1, object=XIL(0x1178ab4))
    at dispextern.h:1962
#5  0x000000000046933b in get_next_display_element (it=0x7fffffff5e80) at xdisp.c:8547
        pos = 1
        c = 100206
        face = 0x2a79d50
        success_p = true
#6  0x00000000004a9aef in display_string
    (string=0x0, lisp_string=XIL(0x1178ab4), face_string=XIL(0), face_string_pos=0, start=0, it=0x7fffffff5e80, field_width=0, precision=2, max_x=1912, multibyte=1) at xdisp.c:29274
        x_before = 0
        i = 1
        nglyphs = 1
        x = 19
        n_glyphs_before = 0
        hpos_at_start = 0
        saved_face_id = 1
        row = 0x2a8e5e0
        it_charpos = 1
#7  0x00000000004a63af in display_mode_element (it=0x7fffffff5e80, depth=2, field_width=0, precision=0, elt=XIL(0x1178ab4), props=XIL(0), risky=false)
    at xdisp.c:27822
        bytepos = 0
        charpos = 0
        nchars = 2
        nbytes = 0
        last_offset = 0
        c = 0 '\000'
        offset = 8
        n = 0
        field = 1696
        prec = 3
        literal = false
#8  0x00000000004a6dc3 in display_mode_element (it=0x7fffffff5e80, depth=1, field_width=0, precision=0, elt=XIL(0x7ffff3385833), props=XIL(0), risky=false)
    at xdisp.c:28070
        li = {
          tortoise = XIL(0x7ffff3385833),
          max = 2,
          n = 0,
          q = 2
        }
        car = XIL(0)
        tem = XIL(0)
        n = 0
        field = 7072844
        prec = 32767
        literal = false
#9  0x00000000004a542f in display_mode_line (w=0x1235d60, face_id=MODE_LINE_ACTIVE_FACE_ID, format=XIL(0x7ffff3385833)) at xdisp.c:27495
        it = {
          window = XIL(0x1235d65),
          w = 0x1235d60,
          f = 0x1235ad8,
          method = GET_FROM_STRING,
          stop_charpos = 2,
          prev_stop = 0,
          base_level_stop = 0,
          end_charpos = 2,
          medium_narrowing_begv = 0,
          medium_narrowing_zv = 0,
          large_narrowing_begv = 0,
          large_narrowing_zv = 0,
          s = 0x0,
          string_nchars = 2,
          multibyte_p = true,
          tab_line_p = false,
          header_line_p = false,
          string_from_display_prop_p = false,
          string_from_prefix_prop_p = false,
          from_disp_prop_p = false,
          ellipsis_p = false,
          avoid_cursor_p = false,
          dp = 0x0,
          dpvec = 0x0,
          dpend = 0x0,
          dpvec_char_len = 0,
          dpvec_face_id = 0,
          saved_face_id = 1,
          ctl_chars = {XIL(0) <repeats 16 times>},
          start = {
            pos = {
              charpos = 0,
              bytepos = 0
            },
            overlay_string_index = 0,
            string_pos = {
              charpos = 0,
              bytepos = 0
            },
            dpvec_index = 0
          },
          current = {
            pos = {
              charpos = 0,
              bytepos = 0
            },
            overlay_string_index = -1,
            string_pos = {
              charpos = 1,
              bytepos = 4
            },
            dpvec_index = -1
          },
          n_overlay_strings = 0,
          overlay_strings_charpos = 0,
          overlay_strings = {XIL(0) <repeats 16 times>},
          string_overlays = {XIL(0) <repeats 16 times>},
          string = XIL(0x1178ab4),
          from_overlay = XIL(0),
          stack = {{
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }},
          sp = 0,
          selective = 0,
          what = IT_CHARACTER,
          face_id = 20,
          selective_display_ellipsis_p = true,
          ctl_arrow_p = true,
          face_box_p = true,
          start_of_box_run_p = false,
          end_of_box_run_p = false,
          overlay_strings_at_end_processed_p = false,
          ignore_overlay_strings_at_pos_p = false,
          glyph_not_available_p = false,
          starts_in_middle_of_char_p = false,
          face_before_selective_p = false,
          constrain_row_ascent_descent_p = false,
          line_number_produced_p = false,
          align_visually_p = false,
          line_wrap = TRUNCATE,
          base_face_id = 1,
          c = 100206,
          len = 4,
          cmp_it = {
            stop_pos = 2,
            id = -1,
            ch = -2,
            rule_idx = 0,
            lookback = 0,
            nglyphs = 0,
            reversed_p = false,
            parent_it = 0x7fffffff5e80,
            charpos = 0,
            nchars = 0,
            nbytes = 0,
            from = 0,
            to = 0,
            width = 0
          },
          char_to_display = 100206,
          glyphless_method = GLYPHLESS_DISPLAY_HEX_CODE,
          image_id = 0,
          xwidget = 0x0,
          slice = {
            x = XIL(0),
            y = XIL(0),
            width = XIL(0),
            height = XIL(0)
          },
          space_width = XIL(0),
          voffset = 0,
          tab_width = 8,
          font_height = XIL(0),
          object = XIL(0x1178ab4),
          position = {
            charpos = 1,
            bytepos = 4
          },
          truncation_pixel_width = 9,
          continuation_pixel_width = 0,
          first_visible_x = 0,
          last_visible_x = 1912,
          last_visible_y = 2250,
          extra_line_spacing = 0,
          max_extra_line_spacing = 0,
          override_ascent = -1,
          override_descent = 0,
          override_boff = 0,
          glyph_row = 0x2a8e5e0,
          area = TEXT_AREA,
          nglyphs = 1,
          pixel_width = 19,
          ascent = 13,
          descent = 5,
          max_ascent = 13,
          max_descent = 5,
          phys_ascent = 13,
          phys_descent = 5,
          max_phys_ascent = 13,
          max_phys_descent = 5,
          current_x = 19,
          wrap_prefix_width = 0,
          continuation_lines_width = 0,
          eol_pos = {
            charpos = 0,
            bytepos = 0
          },
          current_y = 0,
          first_vpos = 0,
          vpos = 0,
          hpos = 1,
          lnum = 0,
          lnum_bytepos = 0,
          lnum_width = 0,
          lnum_pixel_width = 0,
          pt_lnum = 0,
          stretch_adjust = 0,
          left_user_fringe_bitmap = 0,
          right_user_fringe_bitmap = 0,
          left_user_fringe_face_id = 0,
          right_user_fringe_face_id = 0,
          bidi_p = true,
          bidi_it = {
            bytepos = 4,
            charpos = 1,
            ch = 100206,
            nchars = 1,
            ch_len = 4,
            type = STRONG_L,
            type_after_wn = STRONG_L,
            orig_type = STRONG_L,
            resolved_level = 0 '\000',
            isolate_level = 0 '\000',
            invalid_levels = 0,
            invalid_isolates = 0,
            prev = {
              charpos = 0,
              type = STRONG_L,
              orig_type = STRONG_L
            },
            last_strong = {
              charpos = 0,
              type = STRONG_L,
              orig_type = STRONG_L
            },
            next_for_neutral = {
              charpos = -1,
              type = UNKNOWN_BT,
              orig_type = UNKNOWN_BT
            },
            prev_for_neutral = {
              charpos = 0,
              type = STRONG_L,
              orig_type = STRONG_L
            },
            next_for_ws = {
              charpos = -1,
              type = UNKNOWN_BT,
              orig_type = UNKNOWN_BT
            },
            bracket_pairing_pos = -1,
            bracket_enclosed_type = UNKNOWN_BT,
            next_en_pos = 0,
            next_en_type = UNKNOWN_BT,
            sos = L2R,
            scan_dir = 1,
            disp_pos = 2,
            disp_prop = 0,
            stack_idx = 0,
            level_stack = {{
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              } <repeats 128 times>},
            string = {
              lstring = XIL(0x1178ab4),
              s = 0x0,
              schars = 2,
              bufpos = 0,
              from_disp_str = false,
              unibyte = false
            },
            w = 0x1235d60,
            paragraph_dir = L2R,
            separator_limit = -1,
            first_elt = false,
            new_paragraph = false,
            frame_window_p = true
          },
          paragraph_embedding = L2R,
          min_width_property = XIL(0),
          min_width_start = 0
        }
        face = 0x7fffffff7220
        count = {
          bytes = 1664
        }
#10 0x00000000004a512e in display_mode_lines (w=0x1235d60) at xdisp.c:27408
        window_mode_line_format = XIL(0)
        sel_w = 0x1235d60
        old_selected_window = XIL(0x1235d65)
        new_frame = XIL(0x1235add)
        count = {
          bytes = 1600
        }
        n = 0
#11 0x000000000048dce3 in redisplay_window (window=XIL(0x1235d65), just_this_one_p=false) at xdisp.c:20981
        count1 = {
          bytes = 1568
        }
        w = 0x1235d60
        f = 0x1235ad8
        buffer = 0x7ffff261e750
        old = 0x7ffff261e750
        lpoint = {
          charpos = 1,
          bytepos = 1
        }
        opoint = {
          charpos = 1,
          bytepos = 1
        }
        startp = {
          charpos = 1,
          bytepos = 1
        }
        update_mode_line = true
        tem = 0
        it = {
          window = XIL(0),
          w = 0x0,
          f = 0x0,
          method = 4294936480,
          stop_charpos = 140733193388032,
          prev_stop = 1,
          base_level_stop = 1,
          end_charpos = 1,
          medium_narrowing_begv = 1,
          medium_narrowing_zv = 0,
          large_narrowing_begv = 0,
          large_narrowing_zv = 0,
          s = 0x0,
          string_nchars = 0,
          multibyte_p = false,
          tab_line_p = false,
          header_line_p = false,
          string_from_display_prop_p = false,
          string_from_prefix_prop_p = false,
          from_disp_prop_p = false,
          ellipsis_p = false,
          avoid_cursor_p = false,
          dp = 0xffffffff00000000,
          dpvec = 0x0,
          dpend = 0x0,
          dpvec_char_len = 0,
          dpvec_face_id = 0,
          saved_face_id = 1,
          ctl_chars = {XIL(0xfc6b90), XIL(0x1235f80), XIL(0x7fffffff9b70), make_fixnum(1195614), XIL(0x1), XIL(0x1), XIL(0x1235f85), XIL(0x1235f85), XIL(0x1235f85), XIL(0x1235f80), XIL(0x1235ad8), XIL(0), make_fixnum(0), XIL(0x1), XIL(0), make_fixnum(0)},
          start = {
            pos = {
              charpos = 0,
              bytepos = 0
            },
            overlay_string_index = 0,
            string_pos = {
              charpos = 0,
              bytepos = 0
            },
            dpvec_index = 0
          },
          current = {
            pos = {
              charpos = 1,
              bytepos = 0
            },
            overlay_string_index = 0,
            string_pos = {
              charpos = 0,
              bytepos = 0
            },
            dpvec_index = 0
          },
          n_overlay_strings = 0,
          overlay_strings_charpos = 0,
          overlay_strings = {XIL(0) <repeats 14 times>, make_fixnum(0), make_fixnum(0)},
          string_overlays = {XIL(0xffffffffffffffff), XIL(0xffffffffffffffff), XIL(0xffffffffffffffff), XIL(0xffffffff), make_fixnum(0), make_fixnum(0), XIL(0xffffffffffffffff), XIL(0xffffffffffffffff), XIL(0xffffffffffffffff), XIL(0xffffffff), XIL(0), make_fixnum(0), XIL(0), XIL(0), XIL(0), XIL(0)},
          string = XIL(0),
          from_overlay = XIL(0),
          stack = {{
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }, {
              string = XIL(0),
              string_nchars = 0,
              end_charpos = 0,
              stop_charpos = 0,
              prev_stop = 0,
              base_level_stop = 0,
              cmp_it = {
                stop_pos = 0,
                id = 0,
                ch = 0,
                rule_idx = 0,
                lookback = 0,
                nglyphs = 0,
                reversed_p = false,
                parent_it = 0x0,
                charpos = 0,
                nchars = 0,
                nbytes = 0,
                from = 0,
                to = 0,
                width = 0
              },
              face_id = 0,
              u = {
                image = {
                  object = XIL(0),
                  slice = {
                    x = XIL(0),
                    y = XIL(0),
                    width = XIL(0),
                    height = XIL(0)
                  },
                  image_id = 0
                },
                stretch = {
                  object = XIL(0)
                },
                xwidget = {
                  object = XIL(0)
                }
              },
              position = {
                charpos = 0,
                bytepos = 0
              },
              current = {
                pos = {
                  charpos = 0,
                  bytepos = 0
                },
                overlay_string_index = 0,
                string_pos = {
                  charpos = 0,
                  bytepos = 0
                },
                dpvec_index = 0
              },
              from_overlay = XIL(0),
              area = LEFT_MARGIN_AREA,
              method = GET_FROM_BUFFER,
              paragraph_embedding = NEUTRAL_DIR,
              multibyte_p = false,
              string_from_display_prop_p = false,
              string_from_prefix_prop_p = false,
              display_ellipsis_p = false,
              avoid_cursor_p = false,
              bidi_p = false,
              from_disp_prop_p = false,
              line_wrap = TRUNCATE,
              voffset = 0,
              space_width = XIL(0),
              font_height = XIL(0)
            }},
          sp = 0,
          selective = 0,
          what = IT_CHARACTER,
          face_id = 0,
          selective_display_ellipsis_p = false,
          ctl_arrow_p = false,
          face_box_p = false,
          start_of_box_run_p = false,
          end_of_box_run_p = false,
          overlay_strings_at_end_processed_p = false,
          ignore_overlay_strings_at_pos_p = false,
          glyph_not_available_p = false,
          starts_in_middle_of_char_p = false,
          face_before_selective_p = false,
          constrain_row_ascent_descent_p = false,
          line_number_produced_p = false,
          align_visually_p = false,
          line_wrap = TRUNCATE,
          base_face_id = 0,
          c = 0,
          len = 0,
          cmp_it = {
            stop_pos = 0,
            id = 0,
            ch = 0,
            rule_idx = 0,
            lookback = 0,
            nglyphs = 0,
            reversed_p = false,
            parent_it = 0x0,
            charpos = 0,
            nchars = 0,
            nbytes = 0,
            from = 0,
            to = 0,
            width = 0
          },
          char_to_display = 0,
          glyphless_method = GLYPHLESS_DISPLAY_THIN_SPACE,
          image_id = 0,
          xwidget = 0x0,
          slice = {
            x = XIL(0),
            y = XIL(0),
            width = XIL(0),
            height = XIL(0)
          },
          space_width = XIL(0),
          voffset = 0,
          tab_width = 0,
          font_height = XIL(0),
          object = XIL(0),
          position = {
            charpos = 0,
            bytepos = 0
          },
          truncation_pixel_width = 5,
          continuation_pixel_width = 0,
          first_visible_x = 0,
          last_visible_x = 35,
          last_visible_y = 2,
          extra_line_spacing = 0,
          max_extra_line_spacing = 49,
          override_ascent = 1,
          override_descent = 0,
          override_boff = 1,
          glyph_row = 0xffffffffffffffff,
          area = -2,
          nglyphs = 0,
          pixel_width = 0,
          ascent = 0,
          descent = 0,
          max_ascent = 0,
          max_descent = 0,
          phys_ascent = 0,
          phys_descent = -30800,
          max_phys_ascent = 32767,
          max_phys_descent = 0,
          current_x = 0,
          wrap_prefix_width = 0,
          continuation_lines_width = 0,
          eol_pos = {
            charpos = 0,
            bytepos = 0
          },
          current_y = 49,
          first_vpos = 0,
          vpos = 0,
          hpos = 0,
          lnum = 0,
          lnum_bytepos = 0,
          lnum_width = 0,
          lnum_pixel_width = 0,
          pt_lnum = 0,
          stretch_adjust = 0,
          left_user_fringe_bitmap = 0,
          right_user_fringe_bitmap = 0,
          left_user_fringe_face_id = 0,
          right_user_fringe_face_id = 0,
          bidi_p = false,
          bidi_it = {
            bytepos = 524288,
            charpos = 0,
            ch = 19287589,
            nchars = 2,
            ch_len = 2,
            type = 589824,
            type_after_wn = UNKNOWN_BT,
            orig_type = 1881,
            resolved_level = 18 '\022',
            isolate_level = 0 '\000',
            invalid_levels = 0,
            invalid_isolates = 4294967295,
            prev = {
              charpos = 0,
              type = 16542864,
              orig_type = UNKNOWN_BT
            },
            last_strong = {
              charpos = 4294967297,
              type = LRO,
              orig_type = LRI
            },
            next_for_neutral = {
              charpos = 5,
              type = UNKNOWN_BT,
              orig_type = UNKNOWN_BT
            },
            prev_for_neutral = {
              charpos = 0,
              type = UNKNOWN_BT,
              orig_type = UNKNOWN_BT
            },
            next_for_ws = {
              charpos = 0,
              type = UNKNOWN_BT,
              orig_type = UNKNOWN_BT
            },
            bracket_pairing_pos = 0,
            bracket_enclosed_type = WEAK_ET,
            next_en_pos = 1,
            next_en_type = UNKNOWN_BT,
            sos = NEUTRAL_DIR,
            scan_dir = 0,
            disp_pos = 0,
            disp_prop = 0,
            stack_idx = 0,
            level_stack = {{
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 2,
                next_for_neutral_type = 2,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 4294967295,
                next_for_neutral_type = 1,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 1,
                next_for_neutral_type = 6,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 6,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 1,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 12884901888,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 7,
                last_strong_type = 7,
                prev_for_neutral_type = 7,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 2,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 12884901889,
                next_for_neutral_type = 7,
                last_strong_type = 7,
                prev_for_neutral_type = 7,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 7,
                last_strong_type = 7,
                prev_for_neutral_type = 7,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 4294967296,
                next_for_neutral_type = 1,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 2,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              } <repeats 89 times>, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 1,
                prev_for_neutral_type = 6,
                level = 73 'I',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 1,
                prev_for_neutral_type = 6,
                level = 73 'I',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 140737488328832,
                next_for_neutral_type = 0,
                last_strong_type = 2,
                prev_for_neutral_type = 1,
                level = 105 'i',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737258288008,
                next_for_neutral_type = 0,
                last_strong_type = 4,
                prev_for_neutral_type = 2,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 6899898,
                next_for_neutral_type = 4,
                last_strong_type = 7,
                prev_for_neutral_type = 1,
                level = 105 'i',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737258288008,
                next_for_neutral_type = 0,
                last_strong_type = 2,
                prev_for_neutral_type = 7,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 6911646,
                next_for_neutral_type = 4,
                last_strong_type = 7,
                prev_for_neutral_type = 1,
                level = 105 'i',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 6,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737258288008,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 19287584,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737264827720,
                next_for_neutral_type = 0,
                last_strong_type = 3,
                prev_for_neutral_type = 5,
                level = 173 '\255',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 3,
                prev_for_neutral_type = 5,
                level = 173 '\255',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 140737488328992,
                next_for_neutral_type = 7,
                last_strong_type = 1,
                prev_for_neutral_type = 2,
                level = 105 'i',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737264827736,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 5,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 6900093,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737264827736,
                next_for_neutral_type = 0,
                last_strong_type = 6,
                prev_for_neutral_type = 1,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 6911738,
                next_for_neutral_type = 0,
                last_strong_type = 1,
                prev_for_neutral_type = 6,
                level = 73 'I',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 140737259890512,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 0,
                level = 0 '\000',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 140737264827736,
                next_for_neutral_type = 0,
                last_strong_type = 2,
                prev_for_neutral_type = 6,
                level = 255 '\377',
                flags = 255 '\377'
              }, {
                next_for_neutral_pos = 6891084,
                next_for_neutral_type = 0,
                last_strong_type = 0,
                prev_for_neutral_type = 1,
                level = 241 '\361',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 1,
                prev_for_neutral_type = 6,
                level = 73 'I',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 140737259890512,
                next_for_neutral_type = 0,
                last_strong_type = 1,
                prev_for_neutral_type = 6,
                level = 73 'I',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 140737488329152,
                next_for_neutral_type = 0,
                last_strong_type = 6,
                prev_for_neutral_type = 1,
                level = 241 '\361',
                flags = 0 '\000'
              }, {
                next_for_neutral_pos = 48,
                next_for_neutral_type = 0,
                last_strong_type = 3,
                prev_for_neutral_type = 5,
                level = 173 '\255',
                flags = 242 '\362'
              }, {
                next_for_neutral_pos = 0,
                next_for_neutral_type = 0,
                last_strong_type = 3,
                prev_for_neutral_type = 5,
                level = 173 '\255',
                flags = 242 '\362'
              }},
            string = {
              lstring = XIL(0x7fffffff99f0),
              s = 0x69488f <OBJFWDP+24> "\203\370\002\017\224\300\311\303UH\211\345H\203\354\020H\211}\370\017\266\005\276̇",
              schars = 140737264827736,
              bufpos = 140737488329232,
              from_disp_str = true,
              unibyte = false
            },
            w = 0x1264e20,
            paragraph_dir = (unknown: 0xf2ad3d58),
            separator_limit = 140737488329536,
            first_elt = false,
            new_paragraph = true,
            frame_window_p = false
          },
          paragraph_embedding = (unknown: 0xf283bc90),
          min_width_property = XIL(0x7ffff261e750),
          min_width_start = 48
        }
        current_matrix_up_to_date_p = false
        used_current_matrix_p = false
        temp_scroll_step = false
        count = {
          bytes = 1536
        }
        rc = 0
        centering_position = -1
        last_line_misfit = false
        beg_unchanged = 0
        end_unchanged = 0
        frame_line_height = 18
        margin = 0
        use_desired_matrix = false
        itdata = 0x0
        lchars_modiff = 1
        ochars_modiff = 1
#12 0x0000000000483053 in redisplay_window_0 (window=XIL(0x1235d65)) at xdisp.c:18070
#13 0x00000000006b96e2 in internal_condition_case_1
    (bfun=0x483011 <redisplay_window_0>, arg=XIL(0x1235d65), handlers=XIL(0x7ffff274a113), hfun=0x482eef <redisplay_window_error>) at eval.c:1622
        val = XIL(0x44c111)
        c = 0xfcd380
#14 0x0000000000482ec5 in redisplay_windows (window=XIL(0x1235d65)) at xdisp.c:18039
        w = 0x1235d60
#15 0x00000000004816c0 in redisplay_internal () at xdisp.c:17438
        gcscrollbars = true
        f_redisplay_flag = true
        f = 0x1235ad8
        w = 0x1235d60
        sw = 0x1235d60
        fr = 0x1235ad8
        pending = false
        must_finish = true
        match_p = true
        tlbufpos = {
          charpos = 1,
          bytepos = 1
        }
        tlendpos = {
          charpos = 0,
          bytepos = 0
        }
        number_of_visible_frames = 1
        sf = 0x1235ad8
        polling_stopped_here = false
        tail = XIL(0x7ffff33b27b3)
        frame = XIL(0x1235add)
        hscroll_retries = 0
        garbaged_frame_retries = 0
        consider_all_windows_p = true
        update_miniwindow_p = true
        count = {
          bytes = 1440
        }
#16 0x0000000000482434 in redisplay_preserve_echo_area (from_where=2) at xdisp.c:17797
        count = {
          bytes = 1408
        }
#17 0x0000000000433222 in Fredisplay (force=XIL(0)) at dispnew.c:6369
        count = {
          bytes = 1408
        }
#18 0x00000000006bd64a in funcall_subr (subr=0xe88f80 <Sredisplay>, numargs=0, args=0x7fffe3fff2f0) at eval.c:3138
        argbuf = {XIL(0), XIL(0x7fffffffba00), XIL(0xf12ca0), XIL(0x560), XIL(0x7fffffffb260), make_fixnum(19329211838), XIL(0xe88f85), XIL(0x7fffffffb280)}
        a = 0x7fffffffb230
        maxargs = 1
        fun = XIL(0xe88f85)
#19 0x00000000007188c6 in exec_byte_code (fun=XIL(0x7ffff2360e35), args_template=513, nargs=1, args=0x7fffffffb818) at bytecode.c:813
        call_nargs = 0
        call_fun = XIL(0xe88f85)
        count1 = {
          bytes = 1376
        }
        val = XIL(0)
        call_args = 0x7fffe3fff2f0
        original_fun = XIL(0x7ffff173e668)
        op = 0
        type = HANDLER_BIND
        targets = {0x71c0f0 <exec_byte_code+17688>, 0x71c113 <exec_byte_code+17723>, 0x71c115 <exec_byte_code+17725>, 0x71c117 <exec_byte_code+17727>, 0x71c119 <exec_byte_code+17729>, 0x71c119 <exec_byte_code+17729>, 0x71c173 <exec_byte_code+17819>, 0x71c1dc <exec_byte_code+17924>, 0x7180b9 <exec_byte_code+1249>, 0x7180bb <exec_byte_code+1251>, 0x7180bd <exec_byte_code+1253>, 0x7180bf <exec_byte_code+1255>, 0x7180c1 <exec_byte_code+1257>, 0x7180c1 <exec_byte_code+1257>, 0x7180c7 <exec_byte_code+1263>, 0x718088 <exec_byte_code+1200>, 0x718438 <exec_byte_code+2144>, 0x71843a <exec_byte_code+2146>, 0x71843c <exec_byte_code+2148>, 0x71843e <exec_byte_code+2150>, 0x718440 <exec_byte_code+2152>, 0x718440 <exec_byte_code+2152>, 0x718475 <exec_byte_code+2205>, 0x718446 <exec_byte_code+2158>, 0x71860c <exec_byte_code+2612>, 0x71860e <exec_byte_code+2614>, 0x718610 <exec_byte_code+2616>, 0x718612 <exec_byte_code+2618>, 0x718614 <exec_byte_code+2620>, 0x718614 <exec_byte_code+2620>, 0x7185c6 <exec_byte_code+2542>, 0x7185dd <exec_byte_code+2565>, 0x7186b6 <exec_byte_code+2782>, 0x7186b8 <exec_byte_code+2784>, 0x7186ba <exec_byte_code+2786>, 0x7186bc <exec_byte_code+2788>, 0x7186be <exec_byte_code+2790>, 0x7186be <exec_byte_code+2790>, 0x718670 <exec_byte_code+2712>, 0x718687 <exec_byte_code+2735>, 0x7189e0 <exec_byte_code+3592>, 0x7189e2 <exec_byte_code+3594>, 0x7189e4 <exec_byte_code+3596>, 0x7189e6 <exec_byte_code+3598>, 0x7189e8 <exec_byte_code+3600>, 0x7189e8 <exec_byte_code+3600>, 0x71899a <exec_byte_code+3522>, 0x7189b1 <exec_byte_code+3545>, 0x7191c9 <exec_byte_code+5617>, 0x718fdc <exec_byte_code+5124>, 0x718fd3 <exec_byte_code+5115>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7193d3 <exec_byte_code+6139>, 0x71954f <exec_byte_code+6519>, 0x7195a6 <exec_byte_code+6606>, 0x7195fb <exec_byte_code+6691>, 0x719652 <exec_byte_code+6778>, 0x7182ba <exec_byte_code+1762>, 0x718331 <exec_byte_code+1881>, 0x7196c0 <exec_byte_code+6888>, 0x718211 <exec_byte_code+1593>, 0x71838e <exec_byte_code+1974>, 0x71971d <exec_byte_code+6981>, 0x71977a <exec_byte_code+7074>, 0x7197b7 <exec_byte_code+7135>, 0x719814 <exec_byte_code+7228>, 0x71986f <exec_byte_code+7319>, 0x719942 <exec_byte_code+7530>, 0x71997f <exec_byte_code+7591>, 0x719b1f <exec_byte_code+8007>, 0x719cea <exec_byte_code+8466>, 0x719d27 <exec_byte_code+8527>, 0x719d64 <exec_byte_code+8588>, 0x719dc1 <exec_byte_code+8681>, 0x719e1e <exec_byte_code+8774>, 0x719e7b <exec_byte_code+8867>, 0x719ef5 <exec_byte_code+8989>, 0x719f39 <exec_byte_code+9057>, 0x719f7d <exec_byte_code+9125>, 0x71a031 <exec_byte_code+9305>, 0x71a11b <exec_byte_code+9539>, 0x71a205 <exec_byte_code+9773>, 0x71a2e1 <exec_byte_code+9993>, 0x71a3d0 <exec_byte_code+10232>, 0x71a4bf <exec_byte_code+10471>, 0x71a5ae <exec_byte_code+10710>, 0x71a69d <exec_byte_code+10949>, 0x71a813 <exec_byte_code+11323>, 0x71a8fe <exec_byte_code+11558>, 0x71aa71 <exec_byte_code+11929>, 0x71ab2c <exec_byte_code+12116>, 0x71abe7 <exec_byte_code+12303>, 0x71b04e <exec_byte_code+13430>, 0x718e8e <exec_byte_code+4790>, 0x71b09e <exec_byte_code+13510>, 0x71b0db <exec_byte_code+13571>, 0x71b18a <exec_byte_code+13746>, 0x71b1da <exec_byte_code+13826>, 0x71b22a <exec_byte_code+13906>, 0x71b267 <exec_byte_code+13967>, 0x71b29f <exec_byte_code+14023>, 0x71b2d7 <exec_byte_code+14079>, 0x71b317 <exec_byte_code+14143>, 0x71c0f0 <exec_byte_code+17688>, 0x71b364 <exec_byte_code+14220>, 0x71b39c <exec_byte_code+14276>, 0x71b3d4 <exec_byte_code+14332>, 0x71b40c <exec_byte_code+14388>, 0x71b444 <exec_byte_code+14444>, 0x71b47c <exec_byte_code+14500>, 0x718e8e <exec_byte_code+4790>, 0x71c0f0 <exec_byte_code+17688>, 0x71b4b9 <exec_byte_code+14561>, 0x71b4fe <exec_byte_code+14630>, 0x71b53b <exec_byte_code+14691>, 0x71b578 <exec_byte_code+14752>, 0x71b5d5 <exec_byte_code+14845>, 0x71b632 <exec_byte_code+14938>, 0x71b66f <exec_byte_code+14999>, 0x71b6ac <exec_byte_code+15060>, 0x71b709 <exec_byte_code+15153>, 0x71b766 <exec_byte_code+15246>, 0x71b7c3 <exec_byte_code+15339>, 0x71b7fb <exec_byte_code+15395>, 0x71c0f0 <exec_byte_code+17688>, 0x718dee <exec_byte_code+4630>, 0x718a43 <exec_byte_code+3691>, 0x71818a <exec_byte_code+1458>, 0x718add <exec_byte_code+3845>, 0x718b56 <exec_byte_code+3966>, 0x718bcc <exec_byte_code+4084>, 0x718c42 <exec_byte_code+4202>, 0x718dc2 <exec_byte_code+4586>, 0x71857e <exec_byte_code+2470>, 0x718e62 <exec_byte_code+4746>, 0x718eba <exec_byte_code+4834>, 0x718f3b <exec_byte_code+4963>, 0x718f74 <exec_byte_code+5020>, 0x71920a <exec_byte_code+5682>, 0x719278 <exec_byte_code+5792>, 0x7192f2 <exec_byte_code+5914>, 0x71934d <exec_byte_code+6005>, 0x71c0f0 <exec_byte_code+17688>, 0x71b838 <exec_byte_code+15456>, 0x71b8b2 <exec_byte_code+15578>, 0x71b8ef <exec_byte_code+15639>, 0x71b92c <exec_byte_code+15700>, 0x71b969 <exec_byte_code+15761>, 0x71b9a6 <exec_byte_code+15822>, 0x71ba03 <exec_byte_code+15915>, 0x71ba60 <exec_byte_code+16008>, 0x71babd <exec_byte_code+16101>, 0x71bb1a <exec_byte_code+16194>, 0x71bcab <exec_byte_code+16595>, 0x71bd08 <exec_byte_code+16688>, 0x71bd65 <exec_byte_code+16781>, 0x71bda2 <exec_byte_code+16842>, 0x71be93 <exec_byte_code+17083>, 0x71bf84 <exec_byte_code+17324>, 0x71bfc1 <exec_byte_code+17385>, 0x71bffe <exec_byte_code+17446>, 0x71ad71 <exec_byte_code+12697>, 0x71af04 <exec_byte_code+13100>, 0x71c042 <exec_byte_code+17514>, 0x71c099 <exec_byte_code+17601>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7198d2 <exec_byte_code+7418>, 0x719fc1 <exec_byte_code+9193>, 0x71b11a <exec_byte_code+13634>, 0x71c260 <exec_byte_code+18056>, 0x71c2ca <exec_byte_code+18162>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c351 <exec_byte_code+18297>, 0x71c3cd <exec_byte_code+18421>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c580 <exec_byte_code+18856> <repeats 64 times>}
        quitcounter = 1 '\001'
        bc = 0xe87fd0 <main_thread+496>
        top = 0x7fffe3fff2e8
        pc = 0x7ffff2c898df "\207\211\204)"
        bytestr = XIL(0x7ffff26e06cc)
        vector = XIL(0x7ffff2360e85)
        maxdepth = make_fixnum(7)
        const_length = 11
        bytestr_length = 64
        vectorp = 0x7ffff2360e88
        max_stack = 7
        frame_base = 0x7fffe3fff2d8
        fp = 0x7fffe3fff310
        bytestr_data = 0x7ffff2c898be "\b\203\t"
        rest = false
        mandatory = 1
        nonrest = 2
        pushedargs = 1
        saved_quitcounter = 0 '\000'
        saved_vectorp = 0xad70
        saved_bytestr_data = 0x3ff0000000000000 <error: Cannot access memory at address 0x3ff0000000000000>
        result = XIL(0x7fffffffb400)
#20 0x00000000006bdca1 in funcall_lambda (fun=XIL(0x7ffff2360e35), nargs=1, arg_vector=0x7fffffffb810) at eval.c:3229
        syms_left = make_fixnum(513)
        lexenv = XIL(0x7fffffffb800)
        count = {
          bytes = 140737488336832
        }
        i = 1344
        optional = false
        rest = false
        previous_rest = 127
        val = XIL(0x7fffffffb810)
#21 0x00000000006bdb38 in apply_lambda (fun=XIL(0x7ffff2360e35), args=XIL(0x7ffff33a0003), count=...) at eval.c:3192
        arg_vector = 0x7fffffffb810
        tem = make_fixnum(0)
        sa_avail = 16376
        sa_count = {
          bytes = 1376
        }
        numargs = 1
        args_left = XIL(0)
#22 0x00000000006bc069 in eval_sub (form=XIL(0x7ffff33a0053)) at eval.c:2622
        original_fun = XIL(0x7ffff144e1c0)
        original_args = XIL(0x7ffff33a0003)
        count = {
          bytes = 1344
        }
        fun = XIL(0x7ffff2360e35)
        val = XIL(0x1318a54)
        funcar = XIL(0x7f00ffffb900)
        argvals = {XIL(0x69247c), XIL(0x7ffff339fac3), XIL(0x7fffffffb900), make_fixnum(1728400), XIL(0), XIL(0), XIL(0x7ffff3385823), XIL(0)}
#23 0x00000000006b6b28 in Fprogn (body=XIL(0x7ffff339f9c3)) at eval.c:430
        form = XIL(0x7ffff33a0053)
        val = XIL(0)
#24 0x00000000006b86bb in Flet (args=XIL(0x7ffff33858f3)) at eval.c:1100
        temps = 0x7fffffffba00
        tem = XIL(0x1235add)
        lexenv = XIL(0)
        elt = XIL(0x7ffff339faa3)
        count = {
          bytes = 1312
        }
        argnum = 1
        sa_avail = 16376
        sa_count = {
          bytes = 1312
        }
        varlist = XIL(0)
        varlist_len = 1
        nvars = 1
#25 0x00000000006bbaf0 in eval_sub (form=XIL(0x7ffff33858e3)) at eval.c:2526
        args_left = XIL(0x7ffff33858f3)
        numargs = 9
        original_fun = XIL(0xc150)
        original_args = XIL(0x7ffff33858f3)
        count = {
          bytes = 1280
        }
        fun = XIL(0xe97c05)
        val = XIL(0)
        funcar = XIL(0x60)
        argvals = {make_fixnum(1757858), XIL(0x7ffff3385823), XIL(0x7fffffffbc30), make_fixnum(1764833), XIL(0x7000f12c40), XIL(0x324d70), XIL(0x7fffffffbb40), XIL(0x697128)}
#26 0x00000000006b6b28 in Fprogn (body=XIL(0)) at eval.c:430
        form = XIL(0x7ffff33858e3)
        val = XIL(0)
#27 0x00000000006b6b58 in prog_ignore (body=XIL(0x7ffff33858b3)) at eval.c:441
#28 0x00000000006b8723 in Fwhile (args=XIL(0x7ffff33858c3)) at eval.c:1121
        test = XIL(0x324d70)
        body = XIL(0x7ffff33858b3)
#29 0x00000000006bbaf0 in eval_sub (form=XIL(0x7ffff33858d3)) at eval.c:2526
        args_left = XIL(0x7ffff33858c3)
        numargs = 2
        original_fun = XIL(0x7ffff1502160)
        original_args = XIL(0x7ffff33858c3)
        count = {
          bytes = 1248
        }
        fun = XIL(0xe97c45)
        val = XIL(0)
        funcar = XIL(0x7ffff2ad3f70)
        argvals = {XIL(0), XIL(0x7ffff33a0343), XIL(0xd4a0), XIL(0x9), XIL(0), XIL(0), XIL(0x69247c), XIL(0x30)}
#30 0x00000000006b6b28 in Fprogn (body=XIL(0)) at eval.c:430
        form = XIL(0x7ffff33858d3)
        val = XIL(0)
#31 0x00000000006b86bb in Flet (args=XIL(0x7ffff3385893)) at eval.c:1100
        temps = 0x7fffffffbdf0
        tem = XIL(0x7ffff3385823)
        lexenv = XIL(0)
        elt = XIL(0x7ffff339faf3)
        count = {
          bytes = 1216
        }
        argnum = 1
        sa_avail = 16376
        sa_count = {
          bytes = 1216
        }
        varlist = XIL(0)
        varlist_len = 1
        nvars = 1
#32 0x00000000006bbaf0 in eval_sub (form=XIL(0x7ffff3385883)) at eval.c:2526
        args_left = XIL(0x7ffff3385893)
        numargs = 2
        original_fun = XIL(0xc150)
        original_args = XIL(0x7ffff3385893)
        count = {
          bytes = 1184
        }
        fun = XIL(0xe97c05)
        val = XIL(0x7ffff3385833)
        funcar = make_fixnum(29)
        argvals = {make_fixnum(1757858), XIL(0x30), XIL(0x7fffffffc020), make_fixnum(1764833), XIL(0), XIL(0x30), XIL(0x7fff00ffbf20), XIL(0)}
#33 0x00000000006b6b28 in Fprogn (body=XIL(0)) at eval.c:430
        form = XIL(0x7ffff3385883)
        val = XIL(0x7ffff3385833)
#34 0x00000000006b6b58 in prog_ignore (body=XIL(0x7ffff339fba3)) at eval.c:441
#35 0x00000000006b8723 in Fwhile (args=XIL(0x7ffff339fbb3)) at eval.c:1121
        test = XIL(0x30)
        body = XIL(0x7ffff339fba3)
#36 0x00000000006bbaf0 in eval_sub (form=XIL(0x7ffff339fbc3)) at eval.c:2526
        args_left = XIL(0x7ffff339fbb3)
        numargs = 3
        original_fun = XIL(0x7ffff1502160)
        original_args = XIL(0x7ffff339fbb3)
        count = {
          bytes = 1152
        }
        fun = XIL(0xe97c45)
        val = XIL(0)
        funcar = XIL(0x7ffff3385853)
        argvals = {XIL(0x9), make_fixnum(0), XIL(0), XIL(0), XIL(0x7fffffffc200), XIL(0x7ffff33a80a7), XIL(0x7fffffffc210), make_fixnum(1764808)}
#37 0x00000000006b6b28 in Fprogn (body=XIL(0)) at eval.c:430
        form = XIL(0x7ffff339fbc3)
        val = XIL(0)
#38 0x00000000006b86bb in Flet (args=XIL(0x7ffff3385853)) at eval.c:1100
        temps = 0x7fffffffc1e0
        tem = make_fixnum(0)
        lexenv = XIL(0)
        elt = XIL(0x7ffff33a0553)
        count = {
          bytes = 1120
        }
        argnum = 1
        sa_avail = 16376
        sa_count = {
          bytes = 1120
        }
        varlist = XIL(0)
        varlist_len = 1
        nvars = 1
#39 0x00000000006bbaf0 in eval_sub (form=XIL(0x7ffff3385843)) at eval.c:2526
        args_left = XIL(0x7ffff3385853)
        numargs = 2
        original_fun = XIL(0xc150)
        original_args = XIL(0x7ffff3385853)
        count = {
          bytes = 1088
        }
        fun = XIL(0xe97c05)
        val = XIL(0x30)
        funcar = XIL(0x7fffffffc370)
        argvals = {make_fixnum(0), XIL(0x7ffff29ec62d), XIL(0x7fffffffc2f0), XIL(0x6f77a4), XIL(0x6f777f), XIL(0x7ffff283de85), XIL(0x7fffffffc340), XIL(0xb370)}
#40 0x00000000006fd318 in readevalloop_eager_expand_eval (val=XIL(0x7ffff33a0563), macroexpand=XIL(0xb370)) at lread.c:2355
#41 0x00000000006fdb82 in readevalloop
    (readcharfun=XIL(0x174460d), infile0=0x0, sourcename=XIL(0x132d034), printflag=false, unibyte=XIL(0), readfun=XIL(0), start=XIL(0), end=XIL(0))
    at lread.c:2537
        count1 = {
          bytes = 1088
        }
        c = 40
        val = XIL(0x7ffff33a0563)
        count = {
          bytes = 928
        }
        b = 0x1744608
        continue_reading_p = true
        lex_bound = XIL(0)
        whole_buffer = true
        first_sexp = false
        macroexpand = XIL(0xb370)
#42 0x00000000006fded1 in Feval_buffer (buffer=XIL(0x174460d), printflag=XIL(0), filename=XIL(0x132d034), unibyte=XIL(0), do_allow_print=XIL(0x30))
    at lread.c:2612
        count = {
          bytes = 800
        }
        tem = XIL(0)
        buf = XIL(0x174460d)
#43 0x00000000006bd728 in funcall_subr (subr=0xe9ae40 <Seval_buffer>, numargs=5, args=0x7fffe3fff290) at eval.c:3146
        argbuf = {XIL(0x1f2300f08), XIL(0xffffffffffffffff), XIL(0xf12ca0), XIL(0x300), XIL(0x7fffffffc6c0), make_fixnum(19329211838), XIL(0xe9ae45), XIL(0x7fffffffc6e0)}
        a = 0x7fffe3fff290
        maxargs = 5
        fun = XIL(0xe9ae45)
#44 0x00000000007188c6 in exec_byte_code (fun=XIL(0x7ffff23a51fd), args_template=257, nargs=1, args=0x7fffe3fff298) at bytecode.c:813
        call_nargs = 5
        call_fun = XIL(0xe9ae45)
        count1 = {
          bytes = 768
        }
        val = XIL(0)
        call_args = 0x7fffe3fff290
        original_fun = XIL(0x7ffff15069e8)
        op = 5
        type = 1801675106
        targets = {0x71c0f0 <exec_byte_code+17688>, 0x71c113 <exec_byte_code+17723>, 0x71c115 <exec_byte_code+17725>, 0x71c117 <exec_byte_code+17727>, 0x71c119 <exec_byte_code+17729>, 0x71c119 <exec_byte_code+17729>, 0x71c173 <exec_byte_code+17819>, 0x71c1dc <exec_byte_code+17924>, 0x7180b9 <exec_byte_code+1249>, 0x7180bb <exec_byte_code+1251>, 0x7180bd <exec_byte_code+1253>, 0x7180bf <exec_byte_code+1255>, 0x7180c1 <exec_byte_code+1257>, 0x7180c1 <exec_byte_code+1257>, 0x7180c7 <exec_byte_code+1263>, 0x718088 <exec_byte_code+1200>, 0x718438 <exec_byte_code+2144>, 0x71843a <exec_byte_code+2146>, 0x71843c <exec_byte_code+2148>, 0x71843e <exec_byte_code+2150>, 0x718440 <exec_byte_code+2152>, 0x718440 <exec_byte_code+2152>, 0x718475 <exec_byte_code+2205>, 0x718446 <exec_byte_code+2158>, 0x71860c <exec_byte_code+2612>, 0x71860e <exec_byte_code+2614>, 0x718610 <exec_byte_code+2616>, 0x718612 <exec_byte_code+2618>, 0x718614 <exec_byte_code+2620>, 0x718614 <exec_byte_code+2620>, 0x7185c6 <exec_byte_code+2542>, 0x7185dd <exec_byte_code+2565>, 0x7186b6 <exec_byte_code+2782>, 0x7186b8 <exec_byte_code+2784>, 0x7186ba <exec_byte_code+2786>, 0x7186bc <exec_byte_code+2788>, 0x7186be <exec_byte_code+2790>, 0x7186be <exec_byte_code+2790>, 0x718670 <exec_byte_code+2712>, 0x718687 <exec_byte_code+2735>, 0x7189e0 <exec_byte_code+3592>, 0x7189e2 <exec_byte_code+3594>, 0x7189e4 <exec_byte_code+3596>, 0x7189e6 <exec_byte_code+3598>, 0x7189e8 <exec_byte_code+3600>, 0x7189e8 <exec_byte_code+3600>, 0x71899a <exec_byte_code+3522>, 0x7189b1 <exec_byte_code+3545>, 0x7191c9 <exec_byte_code+5617>, 0x718fdc <exec_byte_code+5124>, 0x718fd3 <exec_byte_code+5115>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7193d3 <exec_byte_code+6139>, 0x71954f <exec_byte_code+6519>, 0x7195a6 <exec_byte_code+6606>, 0x7195fb <exec_byte_code+6691>, 0x719652 <exec_byte_code+6778>, 0x7182ba <exec_byte_code+1762>, 0x718331 <exec_byte_code+1881>, 0x7196c0 <exec_byte_code+6888>, 0x718211 <exec_byte_code+1593>, 0x71838e <exec_byte_code+1974>, 0x71971d <exec_byte_code+6981>, 0x71977a <exec_byte_code+7074>, 0x7197b7 <exec_byte_code+7135>, 0x719814 <exec_byte_code+7228>, 0x71986f <exec_byte_code+7319>, 0x719942 <exec_byte_code+7530>, 0x71997f <exec_byte_code+7591>, 0x719b1f <exec_byte_code+8007>, 0x719cea <exec_byte_code+8466>, 0x719d27 <exec_byte_code+8527>, 0x719d64 <exec_byte_code+8588>, 0x719dc1 <exec_byte_code+8681>, 0x719e1e <exec_byte_code+8774>, 0x719e7b <exec_byte_code+8867>, 0x719ef5 <exec_byte_code+8989>, 0x719f39 <exec_byte_code+9057>, 0x719f7d <exec_byte_code+9125>, 0x71a031 <exec_byte_code+9305>, 0x71a11b <exec_byte_code+9539>, 0x71a205 <exec_byte_code+9773>, 0x71a2e1 <exec_byte_code+9993>, 0x71a3d0 <exec_byte_code+10232>, 0x71a4bf <exec_byte_code+10471>, 0x71a5ae <exec_byte_code+10710>, 0x71a69d <exec_byte_code+10949>, 0x71a813 <exec_byte_code+11323>, 0x71a8fe <exec_byte_code+11558>, 0x71aa71 <exec_byte_code+11929>, 0x71ab2c <exec_byte_code+12116>, 0x71abe7 <exec_byte_code+12303>, 0x71b04e <exec_byte_code+13430>, 0x718e8e <exec_byte_code+4790>, 0x71b09e <exec_byte_code+13510>, 0x71b0db <exec_byte_code+13571>, 0x71b18a <exec_byte_code+13746>, 0x71b1da <exec_byte_code+13826>, 0x71b22a <exec_byte_code+13906>, 0x71b267 <exec_byte_code+13967>, 0x71b29f <exec_byte_code+14023>, 0x71b2d7 <exec_byte_code+14079>, 0x71b317 <exec_byte_code+14143>, 0x71c0f0 <exec_byte_code+17688>, 0x71b364 <exec_byte_code+14220>, 0x71b39c <exec_byte_code+14276>, 0x71b3d4 <exec_byte_code+14332>, 0x71b40c <exec_byte_code+14388>, 0x71b444 <exec_byte_code+14444>, 0x71b47c <exec_byte_code+14500>, 0x718e8e <exec_byte_code+4790>, 0x71c0f0 <exec_byte_code+17688>, 0x71b4b9 <exec_byte_code+14561>, 0x71b4fe <exec_byte_code+14630>, 0x71b53b <exec_byte_code+14691>, 0x71b578 <exec_byte_code+14752>, 0x71b5d5 <exec_byte_code+14845>, 0x71b632 <exec_byte_code+14938>, 0x71b66f <exec_byte_code+14999>, 0x71b6ac <exec_byte_code+15060>, 0x71b709 <exec_byte_code+15153>, 0x71b766 <exec_byte_code+15246>, 0x71b7c3 <exec_byte_code+15339>, 0x71b7fb <exec_byte_code+15395>, 0x71c0f0 <exec_byte_code+17688>, 0x718dee <exec_byte_code+4630>, 0x718a43 <exec_byte_code+3691>, 0x71818a <exec_byte_code+1458>, 0x718add <exec_byte_code+3845>, 0x718b56 <exec_byte_code+3966>, 0x718bcc <exec_byte_code+4084>, 0x718c42 <exec_byte_code+4202>, 0x718dc2 <exec_byte_code+4586>, 0x71857e <exec_byte_code+2470>, 0x718e62 <exec_byte_code+4746>, 0x718eba <exec_byte_code+4834>, 0x718f3b <exec_byte_code+4963>, 0x718f74 <exec_byte_code+5020>, 0x71920a <exec_byte_code+5682>, 0x719278 <exec_byte_code+5792>, 0x7192f2 <exec_byte_code+5914>, 0x71934d <exec_byte_code+6005>, 0x71c0f0 <exec_byte_code+17688>, 0x71b838 <exec_byte_code+15456>, 0x71b8b2 <exec_byte_code+15578>, 0x71b8ef <exec_byte_code+15639>, 0x71b92c <exec_byte_code+15700>, 0x71b969 <exec_byte_code+15761>, 0x71b9a6 <exec_byte_code+15822>, 0x71ba03 <exec_byte_code+15915>, 0x71ba60 <exec_byte_code+16008>, 0x71babd <exec_byte_code+16101>, 0x71bb1a <exec_byte_code+16194>, 0x71bcab <exec_byte_code+16595>, 0x71bd08 <exec_byte_code+16688>, 0x71bd65 <exec_byte_code+16781>, 0x71bda2 <exec_byte_code+16842>, 0x71be93 <exec_byte_code+17083>, 0x71bf84 <exec_byte_code+17324>, 0x71bfc1 <exec_byte_code+17385>, 0x71bffe <exec_byte_code+17446>, 0x71ad71 <exec_byte_code+12697>, 0x71af04 <exec_byte_code+13100>, 0x71c042 <exec_byte_code+17514>, 0x71c099 <exec_byte_code+17601>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7198d2 <exec_byte_code+7418>, 0x719fc1 <exec_byte_code+9193>, 0x71b11a <exec_byte_code+13634>, 0x71c260 <exec_byte_code+18056>, 0x71c2ca <exec_byte_code+18162>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c351 <exec_byte_code+18297>, 0x71c3cd <exec_byte_code+18421>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c580 <exec_byte_code+18856> <repeats 64 times>}
        quitcounter = 1 '\001'
        bc = 0xe87fd0 <main_thread+496>
        top = 0x7fffe3fff288
        pc = 0x7ffff2c7b504 "\210.\006\266\005\334\006\b!\210\004\204", <incomplete sequence \335>
        bytestr = XIL(0x7ffff231dd24)
        vector = XIL(0x7ffff23a524d)
        maxdepth = make_fixnum(4)
        const_length = 3
        bytestr_length = 7
        vectorp = 0x7ffff26cf120
        max_stack = 4
        frame_base = 0x7fffe3fff2d8
        fp = 0x7fffe3fff2f8
        bytestr_data = 0x7ffff2c7b44d "\306\005!\204\023"
        rest = false
        mandatory = 1
        nonrest = 1
        pushedargs = 1
        saved_quitcounter = 0 '\000'
        saved_vectorp = 0x30
        saved_bytestr_data = 0xf12c70 <lispsym+48> <incomplete sequence \310>
        result = XIL(0x664698)
#45 0x00000000006bdca1 in funcall_lambda (fun=XIL(0x7ffff26cf0cd), nargs=4, arg_vector=0x7fffffffcdc8) at eval.c:3229
        syms_left = make_fixnum(1282)
        lexenv = XIL(0x7ffff26cf0cd)
        count = {
          bytes = 2891346283121877002
        }
        i = 137195406424
        optional = false
        rest = false
        previous_rest = 127
        val = XIL(0x69488f)
#46 0x00000000006bd09b in funcall_general (fun=XIL(0x7ffff26cf0cd), numargs=4, args=0x7fffffffcdc8) at eval.c:3021
        original_fun = XIL(0x7ffff17bc458)
#47 0x00000000006bd34a in Ffuncall (nargs=5, args=0x7fffffffcdc0) at eval.c:3070
        count = {
          bytes = 512
        }
        val = XIL(0x7fffffffccf0)
#48 0x00000000006fb809 in Fload (file=XIL(0x11e4824), noerror=XIL(0), nomessage=XIL(0x30), nosuffix=XIL(0), must_suffix=XIL(0)) at lread.c:1615
        val = XIL(0x3e8)
        stream = 0x0
        fd = 8
        fd_index = {
          bytes = 352
        }
        count = {
          bytes = 352
        }
        found = XIL(0x132d034)
        efound = XIL(0x3e8000081a4)
        hist_file_name = XIL(0x132d034)
        newer = false
        compiled = false
        handler = XIL(0)
        fmode = 0x810366 "r"
        version = 0
        no_native = false
        is_module = false
        is_native_elisp = false
        found_eff = XIL(0x132d034)
        is_elc = false
        input = {
          stream = 0x0,
          lookahead = 64 '@',
          buf = "\263\361\000"
        }
#49 0x00000000006bd728 in funcall_subr (subr=0xe9adc0 <Sload>, numargs=3, args=0x7fffe3fff1b0) at eval.c:3146
        argbuf = {XIL(0x11e4824), XIL(0), XIL(0x30), XIL(0), XIL(0), make_fixnum(19329211838), XIL(0xe9adc5), XIL(0x7fffffffd010)}
        a = 0x7fffffffcfc0
        maxargs = 5
        fun = XIL(0xe9adc5)
#50 0x00000000007188c6 in exec_byte_code (fun=XIL(0x7ffff28a0895), args_template=769, nargs=3, args=0x7fffe3fff3f0) at bytecode.c:813
        call_nargs = 3
        call_fun = XIL(0xe9adc5)
        count1 = {
          bytes = 320
        }
        val = XIL(0x30)
        call_args = 0x7fffe3fff1b0
        original_fun = XIL(0xc5a0)
        op = 3
        type = CONDITION_CASE
        targets = {0x71c0f0 <exec_byte_code+17688>, 0x71c113 <exec_byte_code+17723>, 0x71c115 <exec_byte_code+17725>, 0x71c117 <exec_byte_code+17727>, 0x71c119 <exec_byte_code+17729>, 0x71c119 <exec_byte_code+17729>, 0x71c173 <exec_byte_code+17819>, 0x71c1dc <exec_byte_code+17924>, 0x7180b9 <exec_byte_code+1249>, 0x7180bb <exec_byte_code+1251>, 0x7180bd <exec_byte_code+1253>, 0x7180bf <exec_byte_code+1255>, 0x7180c1 <exec_byte_code+1257>, 0x7180c1 <exec_byte_code+1257>, 0x7180c7 <exec_byte_code+1263>, 0x718088 <exec_byte_code+1200>, 0x718438 <exec_byte_code+2144>, 0x71843a <exec_byte_code+2146>, 0x71843c <exec_byte_code+2148>, 0x71843e <exec_byte_code+2150>, 0x718440 <exec_byte_code+2152>, 0x718440 <exec_byte_code+2152>, 0x718475 <exec_byte_code+2205>, 0x718446 <exec_byte_code+2158>, 0x71860c <exec_byte_code+2612>, 0x71860e <exec_byte_code+2614>, 0x718610 <exec_byte_code+2616>, 0x718612 <exec_byte_code+2618>, 0x718614 <exec_byte_code+2620>, 0x718614 <exec_byte_code+2620>, 0x7185c6 <exec_byte_code+2542>, 0x7185dd <exec_byte_code+2565>, 0x7186b6 <exec_byte_code+2782>, 0x7186b8 <exec_byte_code+2784>, 0x7186ba <exec_byte_code+2786>, 0x7186bc <exec_byte_code+2788>, 0x7186be <exec_byte_code+2790>, 0x7186be <exec_byte_code+2790>, 0x718670 <exec_byte_code+2712>, 0x718687 <exec_byte_code+2735>, 0x7189e0 <exec_byte_code+3592>, 0x7189e2 <exec_byte_code+3594>, 0x7189e4 <exec_byte_code+3596>, 0x7189e6 <exec_byte_code+3598>, 0x7189e8 <exec_byte_code+3600>, 0x7189e8 <exec_byte_code+3600>, 0x71899a <exec_byte_code+3522>, 0x7189b1 <exec_byte_code+3545>, 0x7191c9 <exec_byte_code+5617>, 0x718fdc <exec_byte_code+5124>, 0x718fd3 <exec_byte_code+5115>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7193d3 <exec_byte_code+6139>, 0x71954f <exec_byte_code+6519>, 0x7195a6 <exec_byte_code+6606>, 0x7195fb <exec_byte_code+6691>, 0x719652 <exec_byte_code+6778>, 0x7182ba <exec_byte_code+1762>, 0x718331 <exec_byte_code+1881>, 0x7196c0 <exec_byte_code+6888>, 0x718211 <exec_byte_code+1593>, 0x71838e <exec_byte_code+1974>, 0x71971d <exec_byte_code+6981>, 0x71977a <exec_byte_code+7074>, 0x7197b7 <exec_byte_code+7135>, 0x719814 <exec_byte_code+7228>, 0x71986f <exec_byte_code+7319>, 0x719942 <exec_byte_code+7530>, 0x71997f <exec_byte_code+7591>, 0x719b1f <exec_byte_code+8007>, 0x719cea <exec_byte_code+8466>, 0x719d27 <exec_byte_code+8527>, 0x719d64 <exec_byte_code+8588>, 0x719dc1 <exec_byte_code+8681>, 0x719e1e <exec_byte_code+8774>, 0x719e7b <exec_byte_code+8867>, 0x719ef5 <exec_byte_code+8989>, 0x719f39 <exec_byte_code+9057>, 0x719f7d <exec_byte_code+9125>, 0x71a031 <exec_byte_code+9305>, 0x71a11b <exec_byte_code+9539>, 0x71a205 <exec_byte_code+9773>, 0x71a2e1 <exec_byte_code+9993>, 0x71a3d0 <exec_byte_code+10232>, 0x71a4bf <exec_byte_code+10471>, 0x71a5ae <exec_byte_code+10710>, 0x71a69d <exec_byte_code+10949>, 0x71a813 <exec_byte_code+11323>, 0x71a8fe <exec_byte_code+11558>, 0x71aa71 <exec_byte_code+11929>, 0x71ab2c <exec_byte_code+12116>, 0x71abe7 <exec_byte_code+12303>, 0x71b04e <exec_byte_code+13430>, 0x718e8e <exec_byte_code+4790>, 0x71b09e <exec_byte_code+13510>, 0x71b0db <exec_byte_code+13571>, 0x71b18a <exec_byte_code+13746>, 0x71b1da <exec_byte_code+13826>, 0x71b22a <exec_byte_code+13906>, 0x71b267 <exec_byte_code+13967>, 0x71b29f <exec_byte_code+14023>, 0x71b2d7 <exec_byte_code+14079>, 0x71b317 <exec_byte_code+14143>, 0x71c0f0 <exec_byte_code+17688>, 0x71b364 <exec_byte_code+14220>, 0x71b39c <exec_byte_code+14276>, 0x71b3d4 <exec_byte_code+14332>, 0x71b40c <exec_byte_code+14388>, 0x71b444 <exec_byte_code+14444>, 0x71b47c <exec_byte_code+14500>, 0x718e8e <exec_byte_code+4790>, 0x71c0f0 <exec_byte_code+17688>, 0x71b4b9 <exec_byte_code+14561>, 0x71b4fe <exec_byte_code+14630>, 0x71b53b <exec_byte_code+14691>, 0x71b578 <exec_byte_code+14752>, 0x71b5d5 <exec_byte_code+14845>, 0x71b632 <exec_byte_code+14938>, 0x71b66f <exec_byte_code+14999>, 0x71b6ac <exec_byte_code+15060>, 0x71b709 <exec_byte_code+15153>, 0x71b766 <exec_byte_code+15246>, 0x71b7c3 <exec_byte_code+15339>, 0x71b7fb <exec_byte_code+15395>, 0x71c0f0 <exec_byte_code+17688>, 0x718dee <exec_byte_code+4630>, 0x718a43 <exec_byte_code+3691>, 0x71818a <exec_byte_code+1458>, 0x718add <exec_byte_code+3845>, 0x718b56 <exec_byte_code+3966>, 0x718bcc <exec_byte_code+4084>, 0x718c42 <exec_byte_code+4202>, 0x718dc2 <exec_byte_code+4586>, 0x71857e <exec_byte_code+2470>, 0x718e62 <exec_byte_code+4746>, 0x718eba <exec_byte_code+4834>, 0x718f3b <exec_byte_code+4963>, 0x718f74 <exec_byte_code+5020>, 0x71920a <exec_byte_code+5682>, 0x719278 <exec_byte_code+5792>, 0x7192f2 <exec_byte_code+5914>, 0x71934d <exec_byte_code+6005>, 0x71c0f0 <exec_byte_code+17688>, 0x71b838 <exec_byte_code+15456>, 0x71b8b2 <exec_byte_code+15578>, 0x71b8ef <exec_byte_code+15639>, 0x71b92c <exec_byte_code+15700>, 0x71b969 <exec_byte_code+15761>, 0x71b9a6 <exec_byte_code+15822>, 0x71ba03 <exec_byte_code+15915>, 0x71ba60 <exec_byte_code+16008>, 0x71babd <exec_byte_code+16101>, 0x71bb1a <exec_byte_code+16194>, 0x71bcab <exec_byte_code+16595>, 0x71bd08 <exec_byte_code+16688>, 0x71bd65 <exec_byte_code+16781>, 0x71bda2 <exec_byte_code+16842>, 0x71be93 <exec_byte_code+17083>, 0x71bf84 <exec_byte_code+17324>, 0x71bfc1 <exec_byte_code+17385>, 0x71bffe <exec_byte_code+17446>, 0x71ad71 <exec_byte_code+12697>, 0x71af04 <exec_byte_code+13100>, 0x71c042 <exec_byte_code+17514>, 0x71c099 <exec_byte_code+17601>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x7198d2 <exec_byte_code+7418>, 0x719fc1 <exec_byte_code+9193>, 0x71b11a <exec_byte_code+13634>, 0x71c260 <exec_byte_code+18056>, 0x71c2ca <exec_byte_code+18162>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c351 <exec_byte_code+18297>, 0x71c3cd <exec_byte_code+18421>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c0f0 <exec_byte_code+17688>, 0x71c580 <exec_byte_code+18856> <repeats 64 times>}
        quitcounter = 126 '~'
        bc = 0xe87fd0 <main_thread+496>
        top = 0x7fffe3fff1a8
        pc = 0x7ffff2d14129 "\266\003\202z\003\353\002\206\n\002\n\211A\022\242!\352\001!\354\001!\357\001!\203\032\002\211\262\002\016A\360\232\203)\002\361\002!\266\004\202z\003\362\002!\266\004\202z\003\334\026B\001\206=\002\n\211A\022\242\262\n\006\t;\204I\002\335\363!\210\364\353\006\v!!\210\202z\003\016A\365\232\204a\002\016A\366\232\203m\002\001\204z\003\n\210\nA\022\202z\003\016A\367\267\202\202\002\370\334!\210\202z\003\371\372!\210\202z\003\324\373\016A\"\203\224\002\005\374\016A!\240\210\202z\003\324\375\016A\"\203\263\002\005\374\330\331\016A\"!\240\210\004\374\330\376\016A\"!\240\210\202z\003\337\003\r\"\211\262\v\203\307\002\006\tA@\n\233"...
        bytestr = XIL(0x7ffff28a0a6c)
        vector = XIL(0x7ffff28a08d5)
        maxdepth = make_fixnum(18)
        const_length = 36
        bytestr_length = 338
        vectorp = 0x7ffff28e9508
        max_stack = 18
        frame_base = 0x7fffe3fff430
        fp = 0x7fffe3fff4c0
        bytestr_data = 0x7ffff2d13f2e "\306 \210\b\203\034"
        rest = false
        mandatory = 1
        nonrest = 3
        pushedargs = 3
        saved_quitcounter = 17 '\021'
        saved_vectorp = 0x7ffff2abf378
        saved_bytestr_data = 0x7ffff2d5342a "\002??\205S\002\b\304p\001\031\305\306\304\"r\211q\210\307\310\002\"\216\006\006c\210eb\210`dW\203N\002`ɉ\211\211g\312U\203\n\002\31317"
        result = XIL(0xf12c40)
#51 0x00000000006bdca1 in funcall_lambda (fun=XIL(0x7ffff28f15ed), nargs=0, arg_vector=0x7fffffffd5a0) at eval.c:3229
        syms_left = make_fixnum(0)
        lexenv = XIL(0x7fffffffd590)
        count = {
          bytes = 140737488344400
        }
        i = 128
        optional = false
        rest = false
        previous_rest = 127
        val = XIL(0x7fffffffd5a0)
#52 0x00000000006bdb38 in apply_lambda (fun=XIL(0x7ffff28f15ed), args=XIL(0), count=...) at eval.c:3192
        arg_vector = 0x7fffffffd5a0
        tem = XIL(0x6b577d)
        sa_avail = 16384
        sa_count = {
          bytes = 160
        }
        numargs = 0
        args_left = XIL(0)
#53 0x00000000006bc069 in eval_sub (form=XIL(0x7ffff2ab1e2b)) at eval.c:2622
        original_fun = XIL(0x7ffff19de978)
        original_args = XIL(0)
        count = {
          bytes = 128
        }
        fun = XIL(0x7ffff28f15ed)
        val = XIL(0)
        funcar = make_fixnum(1757858)
        argvals = {XIL(0x7fffffffd6d0), XIL(0x698440), XIL(0x1f2ad3d68), XIL(0), XIL(0x7ffff283c1bb), XIL(0xb340), XIL(0x69488f), XIL(0x7ffff2ad3d68)}
#54 0x00000000006bb59c in Feval (form=XIL(0x7ffff2ab1e2b), lexical=XIL(0x30)) at eval.c:2439
        count = {
          bytes = 96
        }
#55 0x00000000005e201f in top_level_2 () at keyboard.c:1179
        setup_handler = false
        res = XIL(0x100000000)
#56 0x00000000006b960b in internal_condition_case (bfun=0x5e1fb8 <top_level_2>, handlers=XIL(0x90), hfun=0x5e1890 <cmd_error>) at eval.c:1598
        val = XIL(0x5de865)
        c = 0xfcf530
#57 0x00000000005e207a in top_level_1 (ignore=XIL(0)) at keyboard.c:1191
#58 0x00000000006b8acf in internal_catch (tag=XIL(0x12360), func=0x5e2038 <top_level_1>, arg=XIL(0)) at eval.c:1277
        val = XIL(0x7fffffffd890)
        c = 0xfcf3f0
#59 0x00000000005e1f02 in command_loop () at keyboard.c:1140
#60 0x00000000005e1369 in recursive_edit_1 () at keyboard.c:749
        count = {
          bytes = 32
        }
        val = XIL(0x6bec4c)
#61 0x00000000005e157c in Frecursive_edit () at keyboard.c:832
        count = {
          bytes = 0
        }
        buffer = XIL(0)
#62 0x00000000005dd1d1 in main (argc=4, argv=0x7fffffffdba8) at emacs.c:2624
        stack_bottom_variable = 0x7ffff6219080
        old_argc = 4
        dump_file = 0x0
        no_loadup = false
        junk = 0x0
        dname_arg = 0x0
        ch_to_dir = 0x0
        original_pwd = 0x0
        dump_mode = 0x0
        skip_args = 0
        temacs = 0x0
        attempt_load_pdump = true
        only_version = false
        rlim = {
          rlim_cur = 10022912,
          rlim_max = 18446744073709551615
        }
        lc_all = 0x0
        sockfd = -1
        module_assertions = false

Lisp Backtrace:
"redisplay_internal (C function)" (0x0)
"redisplay" (0xe3fff2f0)
"sit-for" (0xffffb810)
"let" (0xffffbb30)
"while" (0xffffbd00)
"let" (0xffffbf20)
"while" (0xffffc0f0)
"let" (0xffffc310)
"eval-buffer" (0xe3fff290)
"load-with-code-conversion" (0xffffcdc8)
"load" (0xe3fff1b0)
"command-line-1" (0xe3fff0b8)
"command-line" (0xe3fff040)
"normal-top-level" (0xffffd5a0)

diff --git a/src/fontset.c b/src/fontset.c
index 16d14669c89..52149ebd6b2 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -921,8 +921,6 @@ free_face_fontset (struct frame *f, struct face *face)
   eassert (! BASE_FONTSET_P (fontset));
   eassert (f == XFRAME (FONTSET_FRAME (fontset)));
   ASET (Vfontset_table, face->fontset, Qnil);
-  if (face->fontset < next_fontset_id)
-    next_fontset_id = face->fontset;
   if (! NILP (FONTSET_DEFAULT (fontset)))
     {
       int id = XFIXNUM (FONTSET_ID (FONTSET_DEFAULT (fontset)));
@@ -931,8 +929,6 @@ free_face_fontset (struct frame *f, struct face *face)
       eassert (!NILP (fontset) && ! BASE_FONTSET_P (fontset));
       eassert (f == XFRAME (FONTSET_FRAME (fontset)));
       ASET (Vfontset_table, id, Qnil);
-      if (id < next_fontset_id)
-	next_fontset_id = face->fontset;
     }
   face->fontset = -1;
 }
@@ -1000,6 +996,7 @@ face_for_char (struct frame *f, struct face *face, int c,
      and display it as "glyphless".  That is certainly better than
      violating the assertion below or crashing when assertions are not
      compiled in.  */
+  fprintf (stderr, "fontset %d used for face %p\n", face->fontset, face);
   if (face->fontset < 0 && !face->font)
     return face->id;
 
diff --git a/src/xfaces.c b/src/xfaces.c
index 684b6ccfac7..7cab3b9b28c 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -4576,6 +4576,7 @@ make_realized_face (Lisp_Object *attr)
 {
   enum { off = offsetof (struct face, id) };
   struct face *face = xmalloc (sizeof *face);
+  printf ("allocated %p\n", face);
 
   memcpy (face->lface, attr, sizeof face->lface);
   memset (&face->id, 0, sizeof *face - off);
@@ -4598,7 +4599,24 @@ free_realized_face (struct frame *f, struct face *face)
 	{
 	  /* Free fontset of FACE if it is ASCII face.  */
 	  if (face->fontset >= 0 && face == face->ascii_face)
-	    free_face_fontset (f, face);
+	    {
+	      struct face_cache *cache = FRAME_FACE_CACHE (f);
+	      if (cache)
+		{
+		  for (int i = 0; i < cache->used; i++)
+		    {
+		      struct face *face2 = cache->faces_by_id[i];
+		      if (face2 != 0 && face2 != face && face2->fontset == face->fontset)
+			{
+			  fprintf (stderr, "Freeing fontset %d that's still in use by %p!\n", face->fontset,
+				   face2);
+			}
+		    }
+		}
+	      free_face_fontset (f, face);
+	    }
+	  else
+	    fprintf (stderr, "fontset %d not freed, used by %p\n", face->fontset, face);
 
 #ifdef HAVE_X_WINDOWS
 	  /* This function might be called with the frame's display
@@ -4627,6 +4645,7 @@ free_realized_face (struct frame *f, struct face *face)
 #ifdef HAVE_X_WINDOWS
     free_face:
 #endif /* HAVE_X_WINDOWS */
+      printf ("freeing %p\n", face);
       xfree (face);
     }
 }

That change, by the way, produces many pairs of lines such as these:

freeing 0x105f020
allocated 0x105f020
freeing 0x10209a0
allocated 0x10209a0
freeing 0x1224350
allocated 0x1224350
freeing 0x1191950
allocated 0x1191950

which indicates that malloc() does indeed return the freed block for the
next allocation.

Pip