Re: GNU G-Golf 0.8.0-rc-3 available for testing

"pelzflorian (Florian Pelz)" <[email protected]>
Newsgroups gmane.lisp.guile.user
Message-ID <[email protected]>
"pelzflorian (Florian Pelz)" <[email protected]> writes:
> Hi David, thank you for your continuing responses.  I will try to get a
> backtrace with GTK debug symbols

I now managed to build gtk with a debug output and meson configure flag
"-Dc_args=-O0".

For drawing-widget.scm on x86_64, klass->snapshot looks high like a code
segment address but has a bogus disassembly.  Was it clobbered?  Should
klass->snapshot be a procedure calling drawing-widget.scm’s snapshot
procedure?  Probably I’m misinterpreting.

Thread 1 "guile" received signal SIGSEGV, Segmentation fault.
0x00007f67944012d0 in ?? ()
(gdb) bt
#0  0x00007f67944012d0 in ?? ()
#1  0x00007f678776812a in gtk_widget_create_render_node (widget=0x13adf70, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11862
#2  0x00007f678776828b in gtk_widget_do_snapshot (widget=0x13adf70, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11897
#3  0x00007f678776918a in gtk_widget_snapshot_child (widget=0x13bb310, child=0x13adf70, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:12318
#4  0x00007f6787750fd4 in gtk_widget_real_snapshot (widget=0x13bb310, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:756
#5  0x00007f67877680f8 in gtk_widget_create_render_node (widget=0x13bb310, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11857
#6  0x00007f678776828b in gtk_widget_do_snapshot (widget=0x13bb310, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11897
#7  0x00007f6787768343 in gtk_widget_snapshot (widget=0x13bb310, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11919
#8  0x00007f678776844a in gtk_widget_render (widget=0x13bb310, surface=0x13c3e90, region=0x3390970) at ../gtk-4.12.3/gtk/gtkwidget.c:11951
#9  0x00007f6787777ca1 in surface_render (surface=0x13c3e90, region=0x3390970, widget=0x13bb310) at ../gtk-4.12.3/gtk/gtkwindow.c:4813
#10 0x00007f67879ad371 in _gdk_marshal_BOOLEAN__BOXEDv (closure=0x338ae70, return_value=0x7ffdd39838d0, instance=0x13c3e90, args=0x7ffdd3983a58, marshal_data=0x0, n_params=1, param_types=0x11e2dd0) at gdk/gdkmarshalers.c:130
#11 0x00007f678de7c5b9 in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#12 0x00007f678de8f52e in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#13 0x00007f678de953c5 in g_signal_emit_valist () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#14 0x00007f678de95472 in g_signal_emit () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#15 0x00007f6787a6a31c in gdk_surface_paint_on_clock (clock=0x1284c80, data=0x13c3e90) at ../gtk-4.12.3/gdk/gdksurface.c:1377
#16 0x00007f678de7c5b9 in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#17 0x00007f678de9017b in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#18 0x00007f678de953c5 in g_signal_emit_valist () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#19 0x00007f678de95472 in g_signal_emit () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgobject-2.0.so.0
#20 0x00007f6787a4cd15 in _gdk_frame_clock_emit_paint (frame_clock=0x1284c80) at ../gtk-4.12.3/gdk/gdkframeclock.c:708
#21 0x00007f6787a4ddf9 in gdk_frame_clock_paint_idle (data=0x1284c80) at ../gtk-4.12.3/gdk/gdkframeclockidle.c:632
#22 0x00007f678df238eb in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libglib-2.0.so.0
#23 0x00007f678df1fcf3 in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libglib-2.0.so.0
#24 0x00007f678df22c17 in ?? () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libglib-2.0.so.0
#25 0x00007f678df231ff in g_main_context_iteration () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libglib-2.0.so.0
#26 0x00007f678dd5e64d in g_application_run () from /gnu/store/kjdjarbkknf8vv9rc8vkkh1k1vrc57r0-glib-2.78.0/lib/libgio-2.0.so.0
#27 0x00007f6795260052 in ?? () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#28 0x00007f679525ec85 in ?? () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#29 0x00007f679525f68e in ffi_call () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#30 0x00007f678e0199c7 in g_callable_info_invoke () from /gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#31 0x00007f678e01af62 in g_function_info_invoke () from /gnu/store/vycyjb00dcqwjpn45as8jhrw4apv4r5n-gobject-introspection-1.73.1/lib/libgirepository-1.0.so
#32 0x00007f6795260052 in ?? () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#33 0x00007f679525ec85 in ?? () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#34 0x00007f679525f68e in ffi_call () from /gnu/store/w8b0l8hk6g0fahj4fvmc4qqm3cvaxnmv-libffi-3.4.4/lib/libffi.so.8
#35 0x00007f67953bcd37 in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#36 0x00007f67953acf55 in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#37 0x00007f67953a1b9d in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#38 0x00007f67953acdb5 in scm_call_n () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#39 0x00007f6795317977 in scm_primitive_eval () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#40 0x00007f679531d846 in scm_eval () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#41 0x00007f679537c3e6 in scm_shell () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#42 0x00007f679532e8cc in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#43 0x00007f6795315e1a in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#44 0x00007f679539f390 in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#45 0x00007f67953acdb5 in scm_call_n () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#46 0x00007f67953175ca in scm_call_2 () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#47 0x00007f67953be092 in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#48 0x00007f6795399e1f in scm_c_catch () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#49 0x00007f6795318396 in scm_c_with_continuation_barrier () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#50 0x00007f6795399049 in ?? () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#51 0x00007f679527c7fa in GC_call_with_stack_base () from /gnu/store/1w1r6r56z9lhg8ghcb7lxss6mkn7d5l1-libgc-8.2.2/lib/libgc.so.1
#52 0x00007f67953933f8 in scm_with_guile () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#53 0x00007f67953378e5 in scm_boot_guile () from /gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/libguile-3.0.so.1
#54 0x00000000004010f7 in ?? ()
#55 0x00007f6794da41f7 in __libc_start_call_main () from /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#56 0x00007f6794da42ac in __libc_start_main_impl () from /gnu/store/gsjczqir1wbz8p770zndrpw4rnppmxi3-glibc-2.35/lib/libc.so.6
#57 0x0000000000401171 in ?? ()
(gdb) frame 1
#1  0x00007f678776812a in gtk_widget_create_render_node (widget=0x13adf70, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11862
11862	      klass->snapshot (widget, snapshot);
(gdb) list
11857	      klass->snapshot (widget, snapshot);
11858	      gtk_snapshot_pop (snapshot);
11859	    }
11860	  else
11861	    {
11862	      klass->snapshot (widget, snapshot);
11863	    }
11864	
11865	  gtk_css_style_snapshot_outline (&boxes, snapshot);
11866	
(gdb) print klass
$1 = (GtkWidgetClass *) 0x12f8df0
(gdb) print klass->snapshot
$2 = (void (*)(GtkWidget *, GtkSnapshot *)) 0x7f67944012d0
(gdb) frame 1
#1  0x00007f678776812a in gtk_widget_create_render_node (widget=0x13adf70, snapshot=0x33c9460) at ../gtk-4.12.3/gtk/gtkwidget.c:11862
11862	      klass->snapshot (widget, snapshot);
(gdb) print *klass
$3 = {parent_class = {g_type_class = {g_type = 19893504}, construct_properties = 0x12f8c10, constructor = 0x7f678de81570, set_property = 0x0, get_property = 0x0, dispose = 0x7f678775e2ff <gtk_widget_dispose>, 
    finalize = 0x7f678775e921 <gtk_widget_finalize>, dispatch_properties_changed = 0x7f678de80000, notify = 0x0, constructed = 0x7f6787751253 <gtk_widget_constructed>, flags = 1, n_construct_properties = 1, 
    pspecs = 0x0, n_pspecs = 0, pdummy = {0x0, 0x0, 0x0}}, show = 0x7f6787754e10 <gtk_widget_real_show>, hide = 0x7f6787755119 <gtk_widget_real_hide>, map = 0x7f678775eccd <gtk_widget_real_map>, 
  unmap = 0x7f678775edae <gtk_widget_real_unmap>, realize = 0x7f678775ee3d <gtk_widget_real_realize>, unrealize = 0x7f678775eee9 <gtk_widget_real_unrealize>, root = 0x7f6787751078 <gtk_widget_real_root>, 
  unroot = 0x7f6787751166 <gtk_widget_real_unroot>, size_allocate = 0x7f6787751399 <gtk_widget_real_size_allocate>, state_flags_changed = 0x7f678775130e <gtk_widget_real_state_flags_changed>, 
  direction_changed = 0x7f678775c4aa <gtk_widget_real_direction_changed>, get_request_mode = 0x7f67877512ff <gtk_widget_real_get_request_mode>, measure = 0x7f67877512ce <gtk_widget_real_measure>, 
  mnemonic_activate = 0x7f6787758d5d <gtk_widget_real_mnemonic_activate>, grab_focus = 0x7f6787759a7c <gtk_widget_grab_focus_self>, focus = 0x7f6787759dde <gtk_widget_real_focus>, 
  set_focus_child = 0x7f678776939a <gtk_widget_real_set_focus_child>, move_focus = 0x7f6787759f81 <gtk_widget_real_move_focus>, keynav_failed = 0x7f6787759fe1 <gtk_widget_real_keynav_failed>, 
  query_tooltip = 0x7f678775131c <gtk_widget_real_query_tooltip>, compute_expand = 0x0, css_changed = 0x7f6787759b7e <gtk_widget_real_css_changed>, 
  system_setting_changed = 0x7f6787759cd5 <gtk_widget_real_system_setting_changed>, snapshot = 0x7f67944012d0, contains = 0x7f6787750fef <gtk_widget_real_contains>, priv = 0x12f8f90, padding = {0x0, 0x0, 0x0, 
    0x0, 0x0, 0x0, 0x0, 0x0}}
(gdb) disassemble klass->snapshot,+64
Dump of assembler code from 0x7f67944012d0 to 0x7f6794401310:
   0x00007f67944012d0:	(bad)
   0x00007f67944012d1:	insl   (%dx),%es:(%rdi)
   0x00007f67944012d2:	sbb    (%rcx),%eax
   0x00007f67944012d4:	add    %al,(%rax)
   0x00007f67944012d6:	add    %al,(%rax)
   0x00007f67944012d8:	add    %al,(%rax)
   0x00007f67944012da:	add    %al,(%rax)
   0x00007f67944012dc:	add    %al,(%rax)
   0x00007f67944012de:	add    %al,(%rax)
   0x00007f67944012e0:	add    %al,(%rax)
   0x00007f67944012e2:	add    %al,(%rax)
   0x00007f67944012e4:	add    %al,(%rax)
   0x00007f67944012e6:	add    %al,(%rax)
   0x00007f67944012e8:	add    %al,(%rax)
   0x00007f67944012ea:	add    %al,(%rax)
   0x00007f67944012ec:	add    %al,(%rax)
   0x00007f67944012ee:	add    %al,(%rax)
   0x00007f67944012f0:	(bad)
   0x00007f67944012f1:	pop    %rsi
   0x00007f67944012f2:	data16 xchg %ah,0x7f(%rdi)
   0x00007f67944012f6:	add    %al,(%rax)
   0x00007f67944012f8:	loopne 0x7f6794401318
   0x00007f67944012fa:	movabs 0x4cd74000007f6793,%al
   0x00007f6794401303:	mov    %fs,0x7f(%rdi)
   0x00007f6794401306:	add    %al,(%rax)
   0x00007f6794401308:	rclb   (%rdx)
   0x00007f679440130a:	rex xchg %eax,%esp
   0x00007f679440130c:	addr32 jg 0x7f679440130f
   0x00007f679440130f:	add    %al,0x6793a01e(%rax)
End of assembler dump.
(gdb) frame 10
#10 0x00007f67879ad371 in _gdk_marshal_BOOLEAN__BOXEDv (closure=0x338ae70, return_value=0x7ffdd39838d0, instance=0x13c3e90, args=0x7ffdd3983a58, marshal_data=0x0, n_params=1, param_types=0x11e2dd0) at gdk/gdkmarshalers.c:130
warning: 130	gdk/gdkmarshalers.c: Datei oder Verzeichnis nicht gefunden [German for file or directory not found]
(gdb) print closure
$4 = (GClosure *) 0x338ae70
(gdb) print *closure
$5 = {ref_count = 2, meta_marshal_nouse = 0, n_guards = 0, n_fnotifiers = 0, n_inotifiers = 0, in_inotify = 0, floating = 0, derivative_flag = 0, in_marshal = 1, is_invalid = 0, marshal = 0x7f67879ad108 <_gdk_marshal_BOOLEAN__BOXED>, data = 0x13bb310, notifiers = 0x0}
(gdb) 

Regards,
Florian
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.