public inbox for libabigail@sourceware.org
 help / color / mirror / Atom feed
From: "woodard at redhat dot com" <sourceware-bugzilla@sourceware.org>
To: libabigail@sourceware.org
Subject: [Bug default/26771] abidw crashes reading /lib64/libclang-cpp.so.10
Date: Fri, 23 Oct 2020 21:18:39 +0000	[thread overview]
Message-ID: <bug-26771-9487-DL1bxYcqw7@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-26771-9487@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=26771

--- Comment #2 from Ben Woodard <woodard at redhat dot com> ---
With the trunk version of libabigail this appears to be a slightly different
bug. It asserts rather than crashes. With the trunk version abidw doesn't segv
when processing /lib64/libclang-cpp.so.11

abidw: ../../../libabigail/src/abg-dwarf-reader.cc:13223: void
abigail::dwarf_reader::finish_member_function_reading(Dwarf_Die*, const
function_decl_sptr&, const class_or_union_sptr&,
abigail::dwarf_reader::read_context&): Assertion `__abg_cond__' failed.

Program received signal SIGABRT, Aborted.
__GI_raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:49
49        return ret;
(gdb) bt
#0  __GI_raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:49
#1  0x00007ffff75098a4 in __GI_abort () at abort.c:79
#2  0x00007ffff7509789 in __assert_fail_base (fmt=0x7ffff7676e68 "%s%s%s:%u:
%s%sAssertion `%s' failed.\n%n", assertion=0x7ffff7f3bfa4 "__abg_cond__", 
    file=0x7ffff7f49938 "../../../libabigail/src/abg-dwarf-reader.cc",
line=13223, function=<optimized out>) at assert.c:92
#3  0x00007ffff7518fc6 in __GI___assert_fail (assertion=0x7ffff7f3bfa4
"__abg_cond__", file=0x7ffff7f49938
"../../../libabigail/src/abg-dwarf-reader.cc", line=13223, 
    function=0x7ffff7f4a758 "void
abigail::dwarf_reader::finish_member_function_reading(Dwarf_Die*, const
function_decl_sptr&, const class_or_union_sptr&,
abigail::dwarf_reader::read_context&)") at assert.c:101
#4  0x00007ffff7ecc634 in abigail::dwarf_reader::finish_member_function_reading
(die=0x7fffffffa450, f=
    std::shared_ptr<class abigail::ir::function_decl> (use count 3, weak count
0) = {...}, 
    klass=std::shared_ptr<class abigail::ir::class_or_union> (use count 2, weak
count 0) = {...}, ctxt=...) at /usr/include/c++/10/ext/atomicity.h:84
#5  0x00007ffff7ed2254 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffa450, scope=0xb92260,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=<optimized out>,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:736
#6  0x00007ffff7ee0450 in abigail::dwarf_reader::add_or_update_member_function
(where_offset=117049, called_from_public_decl=true, 
    class_type=std::shared_ptr<class abigail::ir::class_or_union> (use count 9,
weak count 5) = {...}, function_die=0x7fffffffa450, ctxt=...)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#7  abigail::dwarf_reader::add_or_update_class_type (ctxt=...,
die=0x7fffffffaa10, scope=<optimized out>, is_struct=<optimized out>,
klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at ../../../libabigail/src/abg-dwarf-reader.cc:13870
#8  0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffaa10, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#9  0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffaa10, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#10 0x00007ffff7ee0dac in abigail::dwarf_reader::add_or_update_class_type
(ctxt=..., die=0x7fffffffaf90, scope=<optimized out>, is_struct=<optimized
out>, klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at ../../../libabigail/src/abg-dwarf-reader.cc:13753
#11 0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffaf90, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#12 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffaf90, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#13 0x00007ffff7ee0dac in abigail::dwarf_reader::add_or_update_class_type
(ctxt=..., die=0x7fffffffb480, scope=<optimized out>, is_struct=<optimized
out>, klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at ../../../libabigail/src/abg-dwarf-reader.cc:13753
#14 0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffb480, scope=0xb8f3c0,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#15 0x00007ffff7edfe51 in abigail::dwarf_reader::add_or_update_class_type
(ctxt=..., die=0x7fffffffbac0, scope=<optimized out>, is_struct=<optimized
out>, klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#16 0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffbac0, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#17 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffbac0, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#18 0x00007ffff7ed329c in abigail::dwarf_reader::build_typedef_type
(where_offset=117049, called_from_public_decl=true, die=0x7fffffffbcb0,
ctxt=...)
    at ../../../libabigail/src/abg-dwarf-reader.cc:15003
#19 abigail::dwarf_reader::build_ir_node_from_die (ctxt=...,
die=0x7fffffffbcb0, scope=0xb8dcf0, called_from_public_decl=<optimized out>,
where_offset=117049, 
    is_declaration_only=<optimized out>, is_required_decl_spec=false) at
../../../libabigail/src/abg-dwarf-reader.cc:16351
#20 0x00007ffff7edfe51 in abigail::dwarf_reader::add_or_update_class_type
(ctxt=..., die=0x7fffffffc270, scope=<optimized out>, is_struct=<optimized
out>, klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#21 0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffc270, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#22 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffc270, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#23 0x00007ffff7ee0dac in abigail::dwarf_reader::add_or_update_class_type
(ctxt=..., die=0x7fffffffc870, scope=<optimized out>, is_struct=<optimized
out>, klass=..., 
    called_from_public_decl=true, where_offset=117049,
is_declaration_only=false) at ../../../libabigail/src/abg-dwarf-reader.cc:13753
#24 0x00007ffff7ed1c7b in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffc870, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false,
is_required_decl_spec=false) at /usr/include/c++/10/bits/shared_ptr_base.h:619
#25 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffc870, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#26 0x00007ffff7ed1a48 in abigail::dwarf_reader::build_reference_type
(where_offset=117049, called_from_public_decl=true, die=0x7fffffffc9b0,
ctxt=...)
    at ../../../libabigail/src/abg-dwarf-reader.cc:14466
#27 abigail::dwarf_reader::build_ir_node_from_die (ctxt=...,
die=0x7fffffffc9b0, scope=0x7aff20, called_from_public_decl=<optimized out>,
where_offset=117049, 
    is_declaration_only=false, is_required_decl_spec=false) at
../../../libabigail/src/abg-dwarf-reader.cc:16383
#28 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffc9b0, called_from_public_decl=<optimized out>,
where_offset=117049)
    at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#29 0x00007ffff7ed4065 in abigail::dwarf_reader::build_var_decl (ctxt=...,
die=0x7fffffffcff0, where_offset=117049, 
    result=std::shared_ptr<class abigail::ir::var_decl> (empty) = {...}) at
../../../libabigail/src/abg-dwarf-reader.cc:15149
#30 0x00007ffff7ed48ae in
abigail::dwarf_reader::build_or_get_var_decl_if_not_suppressed (ctxt=...,
scope=<optimized out>, die=0x7fffffffcff0, where_offset=117049, 
    result=std::shared_ptr<class abigail::ir::var_decl> (empty) = {...},
is_required_decl_spec=true) at /usr/include/c++/10/ext/atomicity.h:100
#31 0x00007ffff7ed17d5 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffcff0, scope=0x7aff20,
called_from_public_decl=<optimized out>, 
    where_offset=117049, is_declaration_only=false, is_required_decl_spec=true)
at /usr/include/c++/10/bits/shared_ptr_base.h:619
--Type <RET> for more, q to quit, c to continue without paging--c
#32 0x00007ffff7ecfc75 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffd1d0, scope=0x7aff20,
called_from_public_decl=<optimized out>, where_offset=117049,
is_declaration_only=false, is_required_decl_spec=false) at
../../../libabigail/src/abg-dwarf-reader.cc:16623
#33 0x00007ffff7ed3770 in abigail::dwarf_reader::build_ir_node_from_die
(ctxt=..., die=0x7fffffffd1d0, called_from_public_decl=<optimized out>,
where_offset=117049) at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#34 0x00007ffff7ee3080 in
abigail::dwarf_reader::build_translation_unit_and_add_to_ir (ctxt=...,
die=<optimized out>, address_size=<optimized out>) at
../../../libabigail/src/abg-dwarf-reader.cc:8556
#35 0x00007ffff7ee4f3a in abigail::dwarf_reader::read_debug_info_into_corpus
(ctxt=...) at ../../../libabigail/src/abg-dwarf-reader.cc:15936
#36 abigail::dwarf_reader::read_corpus_from_elf (ctxt=...,
status=@0x7fffffffd40c: abigail::dwarf_reader::STATUS_UNKNOWN) at
../../../libabigail/src/abg-dwarf-reader.cc:17149
#37 0x0000000000405c93 in load_corpus_and_write_abixml (opts=...,
context=std::shared_ptr<class abigail::dwarf_reader::read_context> (use count
1, weak count 0) = {...}, env=std::shared_ptr<class abigail::ir::environment>
(use count 1, weak count 0) = {...}, argv=0x7fffffffd958) at
../../../libabigail/tools/abidw.cc:494
#38 main (argc=<optimized out>, argv=0x7fffffffd958) at
../../../libabigail/tools/abidw.cc:866
(gdb)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2020-10-23 21:18 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-22  6:05 [Bug default/26771] New: " woodard at redhat dot com
2020-10-23 20:24 ` [Bug default/26771] " woodard at redhat dot com
2020-10-23 21:18 ` woodard at redhat dot com [this message]
2020-10-29  8:40 ` dodji at redhat dot com
2020-10-29 12:18 ` maennich at android dot com
2020-11-10 18:11 ` gprocida+abigail at google dot com
2020-11-10 18:12 ` maennich at android dot com
2020-11-10 18:12 ` maennich at android dot com
2020-11-10 18:30 ` gprocida+abigail at google dot com
2020-11-10 18:40 ` gprocida+abigail at google dot com
2020-11-11  9:06 ` dodji at redhat dot com
2020-11-11  9:31 ` gprocida+abigail at google dot com
2020-11-11  9:54 ` gprocida+abigail at google dot com
2020-11-11 14:09 ` gprocida+abigail at google dot com
2020-11-12 17:15 ` woodard at redhat dot com
2020-11-12 19:04 ` woodard at redhat dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-26771-9487-DL1bxYcqw7@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=libabigail@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).