mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-13 04:46:15 +01:00
tests: Work around a gdb bug in assert-msg-test
It seems that when GLib is compiled without CFLAGS=-g, gdb can’t work out the size of __glib_assert_msg, so assumes it’s 4 bytes — even on 64-bit systems. This causes it to not read the most significant 4 bytes of the assertion message pointer, and hence it can’t print the stored assertion message. This causes assert-msg-test to fail. The upstream gdb bug is https://sourceware.org/bugzilla/show_bug.cgi?id=22501. Work around that by referencing and dereferencing __glib_assert_msg so that gdb treats it as a pointer of sizeof(char*) rather than of the size it incorrectly calculated from the library’s symbol table (or through some other mystical process). Signed-off-by: Philip Withnall <withnall@endlessm.com> https://bugzilla.gnome.org/show_bug.cgi?id=782057
This commit is contained in:
parent
23373d7f7e
commit
20648cdc29
@ -1,4 +1,5 @@
|
||||
run
|
||||
set print elements 0
|
||||
print (char*) __glib_assert_msg
|
||||
# Work around https://sourceware.org/bugzilla/show_bug.cgi?id=22501
|
||||
print *((char**) &__glib_assert_msg)
|
||||
quit
|
||||
|
Loading…
Reference in New Issue
Block a user