From patchwork Fri Jul 24 17:09:53 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Giuliano Procida X-Patchwork-Id: 40174 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7744A3857C64; Fri, 24 Jul 2020 17:10:36 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7744A3857C64 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1595610636; bh=Jyh6qWlbtrQM9uqUMC9G8WBoe8qoVaXZaSu7cdwrF3M=; h=Date:In-Reply-To:References:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Help:List-Subscribe:From:Reply-To:Cc:From; b=TUoBTB/odchBAuPycw+MDdnL0PZCCi4Eh14ZnGAFaAE6lD4x8gVsKBxesuctU0sF7 GkGZWL/tFsH1LHH/lLDNPD0pFD1AtkXw7651IgRklkOdp1YaeLwN26w78tyBHjAJpi fzLNEzNp1JV+GxPVwBBHRlQ7HKznyqi4a1OepcPc= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from mail-wm1-x349.google.com (mail-wm1-x349.google.com [IPv6:2a00:1450:4864:20::349]) by sourceware.org (Postfix) with ESMTPS id CB2283857C64 for ; Fri, 24 Jul 2020 17:10:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org CB2283857C64 Received: by mail-wm1-x349.google.com with SMTP id s2so2116641wmj.7 for ; Fri, 24 Jul 2020 10:10:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc:content-transfer-encoding; bh=Jyh6qWlbtrQM9uqUMC9G8WBoe8qoVaXZaSu7cdwrF3M=; b=O+hD4uKXuw+FTHwzDcHYsWWYT0GieDbMxpVx/TFQBwKDMj9pC+jifamqg2xWEaPbGe Un62fjNywq8iOKXDfQjmDJ94PI2CHG+tlBgIO9nXMZn09V/TH5JTaTNnDahZSX8IQOEa rhfC386xX6UMRtiQ6q/NZ8zGeuv23ctj4xZAbtWlkCmMVQth3rW1Ax6aDbCqz3cwuUz0 lg27rQJAv0LlgVSh4BjrPR9Gb6bkThQfBELxEJunmVRkqOWvkeSyI1VAFy7AnwXt1n7G x1h8curUOsE8E97XyEYSaX6UMQKF2iltZ5nla4/3OtfM6FFgwA8yr+f2zRYUHwLgoiKV kdxg== X-Gm-Message-State: AOAM533W12MefhNDdFXrOd0lZBAGuCaC4Qufa7+PF/woIOlYJ1CKLbDZ nc/tYEVdmxR1P7rQ5qVpklwUKw9NjScIQllOSc+Ln867yPTMq+1iNjslfpAZnlrfgdz9jkQzc1P 00oAemmaznpxgLuGaIlu9xkQOEhsJKdsKACgH6Ve1JBxmPpi3zH13AfxBXDCP2BVnL0Lj2eQ= X-Google-Smtp-Source: ABdhPJx51kcLf+vZMRGYekATl0PDhDlt3oxLDKAhvOE2IUDdKy8abKOeZ/GYQiD02DRs3iDsXQ7MuBoghlY6Lg== X-Received: by 2002:a1c:96c5:: with SMTP id y188mr9808315wmd.71.1595610601517; Fri, 24 Jul 2020 10:10:01 -0700 (PDT) Date: Fri, 24 Jul 2020 18:09:53 +0100 In-Reply-To: <20200724170953.4069948-1-gprocida@google.com> Message-Id: <20200724170953.4069948-3-gprocida@google.com> Mime-Version: 1.0 References: <20200724170953.4069948-1-gprocida@google.com> X-Mailer: git-send-email 2.28.0.rc0.142.g3c755180ce-goog Subject: [PATCH 2/2] DWARF: track chained DIE declaration-only status To: libabigail@sourceware.org X-Spam-Status: No, score=-20.9 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SCC_10_SHORT_WORD_LINES, SCC_20_SHORT_WORD_LINES, SCC_35_SHORT_WORD_LINES, SCC_5_SHORT_WORD_LINES, SPF_HELO_NONE, SPF_PASS, TXREP, T_FILL_THIS_FORM_SHORT, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-Patchwork-Original-From: Giuliano Procida via Libabigail From: Giuliano Procida Reply-To: Giuliano Procida Cc: maennich@google.com, kernel-team@android.com Errors-To: libabigail-bounces@sourceware.org Sender: "Libabigail" Bug 26297: Possible misinterpretation of DW_AT_declaration via DW_AT_specification This commit causes the DWARF reader to only consider a DIE to be "declaration only" if all DIEs in the chain leading to it have the DW_AT_declaration attribute. It is a follow-up commit to a change making die_is_declaration_only examine just the immediate DIE. The responsibility of tracking the cumulative declaration-only status of DIEs falls on build_ir_node_from_die which is the function that makes recursive calls to itself on encountering a DW_AT_specification or DW_AT_abstract_origin link. Various other functions that would have previously called die_is_declaration_only are modified so that get the cumulative value for this flag, rather than just examing the DIE they are given. This change eliminates a lot of spurious declaration-only types in ABI output and may also prevent the same, particularly when anonymous, from confusing libabigail's type equality and canonicalisation logic. * src/abg-dwarf-reader.cc (add_or_update_class_type): Add an is_declaration_only argument. Use this in favour of the die_is_declaration_only helper function. (add_or_update_union_type): Ditto. (function_is_suppressed): Ditto. (build_or_get_fn_decl_if_not_suppressed): Ditto. (build_enum_type): Ditto. (build_ir_node_from_die): To the main overload, add is_declaration_only argument and default this to true. Update this to false if the given DIE is not declaration only and pass this on in recusrive calls and calls to build_enum_type, add_or_update_union_type, add_or_update_class_type and build_or_get_fn_decl_if_not_suppressed. * tests/data/test-annotate/test17-pr19027.so.abi: Update test. This is mostly the removal of is-declaration-only attributes, removal of unreachable parts of the type graph and type id renumbering. * tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi: Likewise. * tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi: Likewise. * tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi: Likewise. * tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt: Likewise. * tests/data/test-read-dwarf/test17-pr19027.so.abi: Likewise. * tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi: Likewise. * tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi: Likewise. * tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi: Likewise. Signed-off-by: Giuliano Procida --- src/abg-dwarf-reader.cc | 107 ++++++----- .../data/test-annotate/test17-pr19027.so.abi | 18 +- ...st18-pr19037-libvtkRenderingLIC-6.1.so.abi | 58 +++--- ...19-pr19023-libtcmalloc_and_profiler.so.abi | 108 +++++------ ...st20-pr19025-libvtkParallelCore-6.1.so.abi | 174 +++++++++--------- ...-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt | 33 +--- .../test-read-dwarf/test17-pr19027.so.abi | 18 +- ...st18-pr19037-libvtkRenderingLIC-6.1.so.abi | 57 +++--- ...19-pr19023-libtcmalloc_and_profiler.so.abi | 108 +++++------ ...st20-pr19025-libvtkParallelCore-6.1.so.abi | 174 +++++++++--------- 10 files changed, 422 insertions(+), 433 deletions(-) diff --git a/src/abg-dwarf-reader.cc b/src/abg-dwarf-reader.cc index 66705882..ba2fc41b 100644 --- a/src/abg-dwarf-reader.cc +++ b/src/abg-dwarf-reader.cc @@ -7852,6 +7852,7 @@ build_ir_node_from_die(read_context& ctxt, scope_decl* scope, bool called_from_public_decl, size_t where_offset, + bool is_declaration_only = true, bool is_required_decl_spec = false); static type_or_decl_base_sptr @@ -7861,21 +7862,23 @@ build_ir_node_from_die(read_context& ctxt, size_t where_offset); static class_decl_sptr -add_or_update_class_type(read_context& ctxt, - Dwarf_Die* die, - scope_decl* scope, - bool is_struct, - class_decl_sptr klass, - bool called_from_public_decl, - size_t where_offset); +add_or_update_class_type(read_context& ctxt, + Dwarf_Die* die, + scope_decl* scope, + bool is_struct, + class_decl_sptr klass, + bool called_from_public_decl, + size_t where_offset, + bool is_declaration_only); static union_decl_sptr -add_or_update_union_type(read_context& ctxt, - Dwarf_Die* die, - scope_decl* scope, - union_decl_sptr union_type, - bool called_from_public_decl, - size_t where_offset); +add_or_update_union_type(read_context& ctxt, + Dwarf_Die* die, + scope_decl* scope, + union_decl_sptr union_type, + bool called_from_public_decl, + size_t where_offset, + bool is_declaration_only); static decl_base_sptr build_ir_node_for_void_type(read_context& ctxt); @@ -7889,14 +7892,16 @@ build_function_decl(read_context& ctxt, static bool function_is_suppressed(const read_context& ctxt, const scope_decl* scope, - Dwarf_Die *function_die); + Dwarf_Die *function_die, + bool is_declaration_only); static function_decl_sptr build_or_get_fn_decl_if_not_suppressed(read_context& ctxt, scope_decl *scope, Dwarf_Die *die, size_t where_offset, - function_decl_sptr f = function_decl_sptr()); + bool is_declaration_only, + function_decl_sptr f); static var_decl_sptr build_var_decl(read_context& ctxt, @@ -13055,7 +13060,8 @@ static enum_type_decl_sptr build_enum_type(read_context& ctxt, Dwarf_Die* die, scope_decl* scope, - size_t where_offset) + size_t where_offset, + bool is_declaration_only) { enum_type_decl_sptr result; if (!die) @@ -13068,7 +13074,6 @@ build_enum_type(read_context& ctxt, string name, linkage_name; location loc; die_loc_and_name(ctxt, die, loc, name, linkage_name); - bool is_declaration_only = die_is_declaration_only(die); bool is_anonymous = false; // If the enum is anonymous, let's give it a name. @@ -13541,7 +13546,8 @@ add_or_update_class_type(read_context& ctxt, bool is_struct, class_decl_sptr klass, bool called_from_public_decl, - size_t where_offset) + size_t where_offset, + bool is_declaration_only) { class_decl_sptr result; if (!die) @@ -13581,7 +13587,6 @@ add_or_update_class_type(read_context& ctxt, string name, linkage_name; location loc; die_loc_and_name(ctxt, die, loc, name, linkage_name); - bool is_declaration_only = die_is_declaration_only(die); bool is_anonymous = false; if (name.empty()) @@ -13787,8 +13792,7 @@ add_or_update_class_type(read_context& ctxt, &child)) continue; - decl_base_sptr ty = is_decl( - build_ir_node_from_die(ctxt, &type_die, + decl_base_sptr ty = is_decl(build_ir_node_from_die(ctxt, &type_die, called_from_public_decl, where_offset)); type_base_sptr t = is_type(ty); @@ -13908,12 +13912,13 @@ add_or_update_class_type(read_context& ctxt, /// e.g, DW_TAG_partial_unit that can be included in several places in /// the DIE tree. static union_decl_sptr -add_or_update_union_type(read_context& ctxt, - Dwarf_Die* die, - scope_decl* scope, +add_or_update_union_type(read_context& ctxt, + Dwarf_Die* die, + scope_decl* scope, union_decl_sptr union_type, - bool called_from_public_decl, - size_t where_offset) + bool called_from_public_decl, + size_t where_offset, + bool is_declaration_only) { union_decl_sptr result; if (!die) @@ -13939,7 +13944,6 @@ add_or_update_union_type(read_context& ctxt, string name, linkage_name; location loc; die_loc_and_name(ctxt, die, loc, name, linkage_name); - bool is_declaration_only = die_is_declaration_only(die); bool is_anonymous = false; if (name.empty()) @@ -15183,7 +15187,8 @@ build_var_decl(read_context& ctxt, static bool function_is_suppressed(const read_context& ctxt, const scope_decl* scope, - Dwarf_Die *function_die) + Dwarf_Die *function_die, + bool is_declaration_only) { if (function_die == 0 || dwarf_tag(function_die) != DW_TAG_subprogram) @@ -15202,8 +15207,7 @@ function_is_suppressed(const read_context& ctxt, // symbol, by default, it's not suppressed. Unless we are asked to // drop undefined symbols too. if (!is_class_type(scope) - && (!die_is_declaration_only(function_die) - || ctxt.drop_undefined_syms())) + && (!is_declaration_only || ctxt.drop_undefined_syms())) { Dwarf_Addr fn_addr; if (!ctxt.get_function_address(function_die, fn_addr)) @@ -15256,10 +15260,11 @@ build_or_get_fn_decl_if_not_suppressed(read_context& ctxt, scope_decl *scope, Dwarf_Die *fn_die, size_t where_offset, + bool is_declaration_only, function_decl_sptr result) { function_decl_sptr fn; - if (function_is_suppressed(ctxt, scope, fn_die)) + if (function_is_suppressed(ctxt, scope, fn_die, is_declaration_only)) return fn; if (!result) @@ -16232,6 +16237,7 @@ build_ir_node_from_die(read_context& ctxt, scope_decl* scope, bool called_from_public_decl, size_t where_offset, + bool is_declaration_only, bool is_required_decl_spec) { type_or_decl_base_sptr result; @@ -16268,6 +16274,12 @@ build_ir_node_from_die(read_context& ctxt, return result; } + // This is *the* bit of code that ensures we have the right notion + // of "declared" at any point in a DIE chain formed from + // DW_AT_abstract_origin and DW_AT_specification links. There should + // be no other callers of die_is_declaration_only. + is_declaration_only = is_declaration_only && die_is_declaration_only(die); + switch (tag) { // Type DIEs we support. @@ -16373,7 +16385,8 @@ build_ir_node_from_die(read_context& ctxt, else if (!type_suppressed) { enum_type_decl_sptr e = build_enum_type(ctxt, die, scope, - where_offset); + where_offset, + is_declaration_only); result = add_decl_to_scope(e, scope); if (result) { @@ -16415,7 +16428,9 @@ build_ir_node_from_die(read_context& ctxt, is_decl(build_ir_node_from_die(ctxt, &spec_die, skope.get(), called_from_public_decl, - where_offset)); + where_offset, + is_declaration_only, + /*is_required_decl_spec=*/false)); ABG_ASSERT(cl); klass = dynamic_pointer_cast(cl); ABG_ASSERT(klass); @@ -16426,7 +16441,8 @@ build_ir_node_from_die(read_context& ctxt, tag == DW_TAG_structure_type, klass, called_from_public_decl, - where_offset); + where_offset, + is_declaration_only); } else klass = @@ -16434,7 +16450,8 @@ build_ir_node_from_die(read_context& ctxt, tag == DW_TAG_structure_type, class_decl_sptr(), called_from_public_decl, - where_offset); + where_offset, + is_declaration_only); result = klass; if (klass) { @@ -16451,7 +16468,8 @@ build_ir_node_from_die(read_context& ctxt, add_or_update_union_type(ctxt, die, scope, union_decl_sptr(), called_from_public_decl, - where_offset); + where_offset, + is_declaration_only); if (union_type) { maybe_set_member_type_access_specifier(union_type, die); @@ -16541,7 +16559,7 @@ build_ir_node_from_die(read_context& ctxt, if (tag == DW_TAG_member) ABG_ASSERT(!is_c_language(ctxt.cur_transl_unit()->get_language())); - if (die_die_attribute(die, DW_AT_specification, spec_die,false) + if (die_die_attribute(die, DW_AT_specification, spec_die, false) || (var_is_cloned = die_die_attribute(die, DW_AT_abstract_origin, spec_die, false))) { @@ -16555,6 +16573,7 @@ build_ir_node_from_die(read_context& ctxt, spec_scope.get(), called_from_public_decl, where_offset, + is_declaration_only, /*is_required_decl_spec=*/true)); if (d) { @@ -16636,7 +16655,9 @@ build_ir_node_from_die(read_context& ctxt, origin_die, interface_scope.get(), called_from_public_decl, - where_offset)); + where_offset, + is_declaration_only, + /*is_required_decl_spec=*/false)); if (d) { fn = dynamic_pointer_cast(d); @@ -16659,7 +16680,9 @@ build_ir_node_from_die(read_context& ctxt, : scope; result = build_or_get_fn_decl_if_not_suppressed(ctxt, logical_scope, - die, where_offset, fn); + die, where_offset, + is_declaration_only, + fn); if (result && !fn) result = add_decl_to_scope(is_decl(result), logical_scope); @@ -16814,7 +16837,8 @@ build_ir_node_from_die(read_context& ctxt, const scope_decl_sptr& scop = ctxt.global_scope(); return build_ir_node_from_die(ctxt, die, scop.get(), called_from_public_decl, - where_offset); + where_offset, + true); } scope_decl_sptr scope = get_scope_for_die(ctxt, die, @@ -16822,7 +16846,8 @@ build_ir_node_from_die(read_context& ctxt, where_offset); return build_ir_node_from_die(ctxt, die, scope.get(), called_from_public_decl, - where_offset); + where_offset, + true); } status diff --git a/tests/data/test-annotate/test17-pr19027.so.abi b/tests/data/test-annotate/test17-pr19027.so.abi index 4814b0f2..f3d326e4 100644 --- a/tests/data/test-annotate/test17-pr19027.so.abi +++ b/tests/data/test-annotate/test17-pr19027.so.abi @@ -8847,7 +8847,7 @@ - + @@ -8868,7 +8868,7 @@ - + @@ -8889,7 +8889,7 @@ - + @@ -14004,7 +14004,7 @@ - + @@ -14025,7 +14025,7 @@ - + @@ -14046,7 +14046,7 @@ - + @@ -35220,7 +35220,7 @@ - + @@ -35241,7 +35241,7 @@ - + @@ -35262,7 +35262,7 @@ - + diff --git a/tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi b/tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi index 3fa79582..0999e02d 100644 --- a/tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi +++ b/tests/data/test-annotate/test18-pr19037-libvtkRenderingLIC-6.1.so.abi @@ -5148,7 +5148,7 @@ - + @@ -5195,7 +5195,7 @@ - + @@ -5623,7 +5623,7 @@ - + @@ -5845,7 +5845,7 @@ - + @@ -5960,7 +5960,7 @@ - + @@ -8094,10 +8094,6 @@ - - - - @@ -10304,7 +10300,7 @@ - + @@ -12359,7 +12355,7 @@ - + @@ -13005,7 +13001,7 @@ - + @@ -13017,7 +13013,7 @@ - + @@ -13046,7 +13042,7 @@ - + @@ -13790,7 +13786,7 @@ - + @@ -13819,7 +13815,7 @@ - + @@ -13831,7 +13827,7 @@ - + @@ -13843,7 +13839,7 @@ - + @@ -13896,7 +13892,7 @@ - + @@ -14011,7 +14007,7 @@ - + @@ -14126,7 +14122,7 @@ - + @@ -16338,7 +16334,7 @@ - + @@ -16367,7 +16363,7 @@ - + @@ -16379,7 +16375,7 @@ - + @@ -16391,7 +16387,7 @@ - + @@ -16403,7 +16399,7 @@ - + @@ -16417,7 +16413,7 @@ - + @@ -16433,7 +16429,7 @@ - + @@ -16445,7 +16441,7 @@ - + @@ -16487,7 +16483,7 @@ - + @@ -16499,7 +16495,7 @@ - + diff --git a/tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi b/tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi index 48221737..0450fe3c 100644 --- a/tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi +++ b/tests/data/test-annotate/test19-pr19023-libtcmalloc_and_profiler.so.abi @@ -2694,7 +2694,7 @@ - + @@ -7964,7 +7964,7 @@ - + @@ -10488,7 +10488,7 @@ - + @@ -10506,7 +10506,7 @@ - + @@ -12218,7 +12218,7 @@ - + @@ -13421,7 +13421,7 @@ - + @@ -15822,7 +15822,7 @@ - + @@ -15851,7 +15851,7 @@ - + @@ -16021,7 +16021,7 @@ - + @@ -16050,7 +16050,7 @@ - + @@ -16193,7 +16193,7 @@ - + @@ -18385,7 +18385,7 @@ - + @@ -18397,7 +18397,7 @@ - + @@ -18409,7 +18409,7 @@ - + @@ -18421,7 +18421,7 @@ - + @@ -19052,7 +19052,7 @@ - + @@ -19081,7 +19081,7 @@ - + @@ -19093,7 +19093,7 @@ - + @@ -19105,7 +19105,7 @@ - + @@ -19121,7 +19121,7 @@ - + @@ -19133,7 +19133,7 @@ - + @@ -19934,7 +19934,7 @@ - + @@ -22030,7 +22030,7 @@ - + @@ -22378,7 +22378,7 @@ - + @@ -22407,7 +22407,7 @@ - + @@ -22419,7 +22419,7 @@ - + @@ -22458,7 +22458,7 @@ - + @@ -22852,7 +22852,7 @@ - + @@ -22877,7 +22877,7 @@ - + @@ -22889,7 +22889,7 @@ - + @@ -22901,7 +22901,7 @@ - + @@ -22913,7 +22913,7 @@ - + @@ -22925,7 +22925,7 @@ - + @@ -22940,7 +22940,7 @@ - + @@ -23055,7 +23055,7 @@ - + @@ -26740,9 +26740,9 @@ - + - + @@ -28141,7 +28141,7 @@ - + @@ -28256,7 +28256,7 @@ - + @@ -30654,7 +30654,7 @@ - + @@ -31029,7 +31029,7 @@ - + @@ -31426,7 +31426,7 @@ - + @@ -31541,7 +31541,7 @@ - + @@ -34265,7 +34265,7 @@ - + @@ -34932,7 +34932,7 @@ - + @@ -34987,7 +34987,7 @@ - + @@ -34999,7 +34999,7 @@ - + @@ -35011,7 +35011,7 @@ - + @@ -35066,7 +35066,7 @@ - + @@ -35095,7 +35095,7 @@ - + @@ -37172,7 +37172,7 @@ - + @@ -37695,7 +37695,7 @@ - + @@ -37812,7 +37812,7 @@ - + @@ -39279,7 +39279,7 @@ - + diff --git a/tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi b/tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi index 3dbf8cd2..44148103 100644 --- a/tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi +++ b/tests/data/test-annotate/test20-pr19025-libvtkParallelCore-6.1.so.abi @@ -7297,7 +7297,7 @@ - + @@ -10195,7 +10195,7 @@ - + @@ -10438,7 +10438,7 @@ - + @@ -10450,7 +10450,7 @@ - + @@ -10672,7 +10672,7 @@ - + @@ -10792,7 +10792,7 @@ - + @@ -10804,7 +10804,7 @@ - + @@ -10937,7 +10937,7 @@ - + @@ -11083,7 +11083,7 @@ - + @@ -11095,7 +11095,7 @@ - + @@ -11612,7 +11612,7 @@ - + @@ -11952,7 +11952,7 @@ - + @@ -12067,7 +12067,7 @@ - + @@ -12182,7 +12182,7 @@ - + @@ -19226,7 +19226,7 @@ - + @@ -19349,7 +19349,7 @@ - + @@ -19528,9 +19528,9 @@ - + - + @@ -20358,7 +20358,7 @@ - + @@ -21186,7 +21186,7 @@ - + @@ -24768,7 +24768,7 @@ - + @@ -24932,9 +24932,9 @@ - + - + @@ -24948,7 +24948,7 @@ - + @@ -24962,7 +24962,7 @@ - + @@ -25117,7 +25117,7 @@ - + @@ -25129,7 +25129,7 @@ - + @@ -25141,7 +25141,7 @@ - + @@ -25153,7 +25153,7 @@ - + @@ -25306,7 +25306,7 @@ - + @@ -25335,7 +25335,7 @@ - + @@ -25347,7 +25347,7 @@ - + @@ -25359,7 +25359,7 @@ - + @@ -25440,7 +25440,7 @@ - + @@ -25452,7 +25452,7 @@ - + @@ -25607,7 +25607,7 @@ - + @@ -25619,7 +25619,7 @@ - + @@ -25631,7 +25631,7 @@ - + @@ -25643,7 +25643,7 @@ - + @@ -25659,7 +25659,7 @@ - + @@ -25671,7 +25671,7 @@ - + @@ -25683,7 +25683,7 @@ - + @@ -25695,7 +25695,7 @@ - + @@ -25707,7 +25707,7 @@ - + @@ -25719,7 +25719,7 @@ - + @@ -27704,7 +27704,7 @@ - + @@ -30444,7 +30444,7 @@ - + @@ -30559,7 +30559,7 @@ - + @@ -30676,7 +30676,7 @@ - + @@ -30791,7 +30791,7 @@ - + @@ -30908,7 +30908,7 @@ - + @@ -31023,7 +31023,7 @@ - + @@ -31140,7 +31140,7 @@ - + @@ -31255,7 +31255,7 @@ - + @@ -31370,7 +31370,7 @@ - + @@ -31634,7 +31634,7 @@ - + @@ -31749,7 +31749,7 @@ - + @@ -31864,7 +31864,7 @@ - + @@ -31979,7 +31979,7 @@ - + @@ -32094,7 +32094,7 @@ - + @@ -34461,9 +34461,9 @@ - + - + @@ -34475,7 +34475,7 @@ - + @@ -34487,7 +34487,7 @@ - + @@ -34499,7 +34499,7 @@ - + @@ -34511,7 +34511,7 @@ - + @@ -34527,7 +34527,7 @@ - + @@ -34539,7 +34539,7 @@ - + @@ -34551,7 +34551,7 @@ - + @@ -34575,7 +34575,7 @@ - + @@ -34742,7 +34742,7 @@ - + @@ -40006,9 +40006,9 @@ - + - + @@ -40020,7 +40020,7 @@ - + @@ -40032,7 +40032,7 @@ - + @@ -40044,7 +40044,7 @@ - + @@ -40056,7 +40056,7 @@ - + @@ -40209,7 +40209,7 @@ - + @@ -40221,7 +40221,7 @@ - + @@ -40233,7 +40233,7 @@ - + @@ -40245,7 +40245,7 @@ - + @@ -40257,7 +40257,7 @@ - + @@ -40592,7 +40592,7 @@ - + @@ -40707,7 +40707,7 @@ - + @@ -40822,7 +40822,7 @@ - + @@ -40937,7 +40937,7 @@ - + @@ -42357,7 +42357,7 @@ - + diff --git a/tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt b/tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt index 7f1d3836..3fce90b7 100644 --- a/tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt +++ b/tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1-report-0.txt @@ -1,32 +1,3 @@ -Functions changes summary: 0 Removed, 9 Changed, 0 Added functions -Variables changes summary: 0 Removed, 0 Changed, 0 Added variable - -9 functions with some indirect sub-type change: - - [C] 'function vtkSQLDatabaseSchemaInternals::Column* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Column*, vtkSQLDatabaseSchemaInternals::Column*, vtkSQLDatabaseSchemaInternals::Column*, std::allocator&)' at stl_uninitialized.h:254:1 has some indirect sub-type changes: - function vtkSQLDatabaseSchemaInternals::Column* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Column*, vtkSQLDatabaseSchemaInternals::Column*, vtkSQLDatabaseSchemaInternals::Column*, std::allocator&) is not declared inline anymore - - [C] 'function vtkSQLDatabaseSchemaInternals::Index* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Index*, vtkSQLDatabaseSchemaInternals::Index*, vtkSQLDatabaseSchemaInternals::Index*, std::allocator&)' at stl_uninitialized.h:254:1 has some indirect sub-type changes: - function vtkSQLDatabaseSchemaInternals::Index* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Index*, vtkSQLDatabaseSchemaInternals::Index*, vtkSQLDatabaseSchemaInternals::Index*, std::allocator&) is not declared inline anymore - - [C] 'function vtkSQLDatabaseSchemaInternals::Option* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Option*, vtkSQLDatabaseSchemaInternals::Option*, vtkSQLDatabaseSchemaInternals::Option*, std::allocator&)' at stl_uninitialized.h:254:1 has some indirect sub-type changes: - function vtkSQLDatabaseSchemaInternals::Option* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Option*, vtkSQLDatabaseSchemaInternals::Option*, vtkSQLDatabaseSchemaInternals::Option*, std::allocator&) is not declared inline anymore - - [C] 'function vtkSQLDatabaseSchemaInternals::Trigger* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Trigger*, vtkSQLDatabaseSchemaInternals::Trigger*, vtkSQLDatabaseSchemaInternals::Trigger*, std::allocator&)' at stl_uninitialized.h:254:1 has some indirect sub-type changes: - function vtkSQLDatabaseSchemaInternals::Trigger* std::__uninitialized_copy_a(vtkSQLDatabaseSchemaInternals::Trigger*, vtkSQLDatabaseSchemaInternals::Trigger*, vtkSQLDatabaseSchemaInternals::Trigger*, std::allocator&) is not declared inline anymore - - [C] 'function vtkStdString* std::__uninitialized_copy_a(vtkStdString*, vtkStdString*, vtkStdString*, std::allocator&)' at stl_uninitialized.h:254:1 has some indirect sub-type changes: - function vtkStdString* std::__uninitialized_copy_a(vtkStdString*, vtkStdString*, vtkStdString*, std::allocator&) is not declared inline anymore - - [C] 'function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Column*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Column&, std::allocator&)' at stl_uninitialized.h:315:1 has some indirect sub-type changes: - function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Column*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Column&, std::allocator&) is not declared inline anymore - - [C] 'function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Index*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Index&, std::allocator&)' at stl_uninitialized.h:315:1 has some indirect sub-type changes: - function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Index*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Index&, std::allocator&) is not declared inline anymore - - [C] 'function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Option*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Option&, std::allocator&)' at stl_uninitialized.h:315:1 has some indirect sub-type changes: - function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Option*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Option&, std::allocator&) is not declared inline anymore - - [C] 'function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Trigger*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Trigger&, std::allocator&)' at stl_uninitialized.h:315:1 has some indirect sub-type changes: - function void std::__uninitialized_fill_n_a(vtkSQLDatabaseSchemaInternals::Trigger*, unsigned long int, const vtkSQLDatabaseSchemaInternals::Trigger&, std::allocator&) is not declared inline anymore +Functions changes summary: 0 Removed, 0 Changed (57 filtered out), 0 Added functions +Variables changes summary: 0 Removed, 0 Changed (1 filtered out), 0 Added variable diff --git a/tests/data/test-read-dwarf/test17-pr19027.so.abi b/tests/data/test-read-dwarf/test17-pr19027.so.abi index 1220bea1..3bf12806 100644 --- a/tests/data/test-read-dwarf/test17-pr19027.so.abi +++ b/tests/data/test-read-dwarf/test17-pr19027.so.abi @@ -5655,7 +5655,7 @@ - + @@ -5669,7 +5669,7 @@ - + @@ -5683,7 +5683,7 @@ - + @@ -8982,7 +8982,7 @@ - + @@ -8996,7 +8996,7 @@ - + @@ -9010,7 +9010,7 @@ - + @@ -22582,7 +22582,7 @@ - + @@ -22596,7 +22596,7 @@ - + @@ -22610,7 +22610,7 @@ - + diff --git a/tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi b/tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi index 73cd929f..90082471 100644 --- a/tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi +++ b/tests/data/test-read-dwarf/test18-pr19037-libvtkRenderingLIC-6.1.so.abi @@ -3188,7 +3188,7 @@ - + @@ -3218,7 +3218,7 @@ - + @@ -3497,7 +3497,7 @@ - + @@ -3640,7 +3640,7 @@ - + @@ -3713,7 +3713,7 @@ - + @@ -4999,9 +4999,6 @@ - - - @@ -6398,7 +6395,7 @@ - + @@ -7671,7 +7668,7 @@ - + @@ -8086,7 +8083,7 @@ - + @@ -8094,7 +8091,7 @@ - + @@ -8112,7 +8109,7 @@ - + @@ -8591,7 +8588,7 @@ - + @@ -8609,7 +8606,7 @@ - + @@ -8617,7 +8614,7 @@ - + @@ -8625,7 +8622,7 @@ - + @@ -8658,7 +8655,7 @@ - + @@ -8731,7 +8728,7 @@ - + @@ -8804,7 +8801,7 @@ - + @@ -10153,7 +10150,7 @@ - + @@ -10171,7 +10168,7 @@ - + @@ -10179,7 +10176,7 @@ - + @@ -10187,7 +10184,7 @@ - + @@ -10195,7 +10192,7 @@ - + @@ -10204,7 +10201,7 @@ - + @@ -10214,7 +10211,7 @@ - + @@ -10222,7 +10219,7 @@ - + @@ -10248,7 +10245,7 @@ - + @@ -10256,7 +10253,7 @@ - + diff --git a/tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi b/tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi index fd4dc5d6..41c15583 100644 --- a/tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi +++ b/tests/data/test-read-dwarf/test19-pr19023-libtcmalloc_and_profiler.so.abi @@ -1517,7 +1517,7 @@ - + @@ -4841,7 +4841,7 @@ - + @@ -6394,7 +6394,7 @@ - + @@ -6405,7 +6405,7 @@ - + @@ -7513,7 +7513,7 @@ - + @@ -8291,7 +8291,7 @@ - + @@ -9844,7 +9844,7 @@ - + @@ -9862,7 +9862,7 @@ - + @@ -9973,7 +9973,7 @@ - + @@ -9991,7 +9991,7 @@ - + @@ -10085,7 +10085,7 @@ - + @@ -11500,7 +11500,7 @@ - + @@ -11508,7 +11508,7 @@ - + @@ -11516,7 +11516,7 @@ - + @@ -11524,7 +11524,7 @@ - + @@ -11929,7 +11929,7 @@ - + @@ -11947,7 +11947,7 @@ - + @@ -11955,7 +11955,7 @@ - + @@ -11963,7 +11963,7 @@ - + @@ -11973,7 +11973,7 @@ - + @@ -11981,7 +11981,7 @@ - + @@ -12496,7 +12496,7 @@ - + @@ -13758,7 +13758,7 @@ - + @@ -13984,7 +13984,7 @@ - + @@ -14002,7 +14002,7 @@ - + @@ -14010,7 +14010,7 @@ - + @@ -14035,7 +14035,7 @@ - + @@ -14290,7 +14290,7 @@ - + @@ -14306,7 +14306,7 @@ - + @@ -14314,7 +14314,7 @@ - + @@ -14322,7 +14322,7 @@ - + @@ -14330,7 +14330,7 @@ - + @@ -14338,7 +14338,7 @@ - + @@ -14348,7 +14348,7 @@ - + @@ -14421,7 +14421,7 @@ - + @@ -16713,8 +16713,8 @@ - - + + @@ -17613,7 +17613,7 @@ - + @@ -17686,7 +17686,7 @@ - + @@ -19236,7 +19236,7 @@ - + @@ -19479,7 +19479,7 @@ - + @@ -19736,7 +19736,7 @@ - + @@ -19809,7 +19809,7 @@ - + @@ -21527,7 +21527,7 @@ - + @@ -21956,7 +21956,7 @@ - + @@ -21990,7 +21990,7 @@ - + @@ -21998,7 +21998,7 @@ - + @@ -22006,7 +22006,7 @@ - + @@ -22040,7 +22040,7 @@ - + @@ -22058,7 +22058,7 @@ - + @@ -23376,7 +23376,7 @@ - + @@ -23716,7 +23716,7 @@ - + @@ -23790,7 +23790,7 @@ - + @@ -24661,7 +24661,7 @@ - + diff --git a/tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi b/tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi index 0d98ce48..ce44bebb 100644 --- a/tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi +++ b/tests/data/test-read-dwarf/test20-pr19025-libvtkParallelCore-6.1.so.abi @@ -4450,7 +4450,7 @@ - + @@ -6245,7 +6245,7 @@ - + @@ -6403,7 +6403,7 @@ - + @@ -6411,7 +6411,7 @@ - + @@ -6554,7 +6554,7 @@ - + @@ -6628,7 +6628,7 @@ - + @@ -6636,7 +6636,7 @@ - + @@ -6718,7 +6718,7 @@ - + @@ -6808,7 +6808,7 @@ - + @@ -6816,7 +6816,7 @@ - + @@ -7146,7 +7146,7 @@ - + @@ -7364,7 +7364,7 @@ - + @@ -7437,7 +7437,7 @@ - + @@ -7510,7 +7510,7 @@ - + @@ -11723,7 +11723,7 @@ - + @@ -11801,7 +11801,7 @@ - + @@ -11908,8 +11908,8 @@ - - + + @@ -12440,7 +12440,7 @@ - + @@ -12971,7 +12971,7 @@ - + @@ -15178,7 +15178,7 @@ - + @@ -15284,8 +15284,8 @@ - - + + @@ -15294,7 +15294,7 @@ - + @@ -15303,7 +15303,7 @@ - + @@ -15405,7 +15405,7 @@ - + @@ -15413,7 +15413,7 @@ - + @@ -15421,7 +15421,7 @@ - + @@ -15429,7 +15429,7 @@ - + @@ -15530,7 +15530,7 @@ - + @@ -15548,7 +15548,7 @@ - + @@ -15556,7 +15556,7 @@ - + @@ -15564,7 +15564,7 @@ - + @@ -15614,7 +15614,7 @@ - + @@ -15622,7 +15622,7 @@ - + @@ -15725,7 +15725,7 @@ - + @@ -15733,7 +15733,7 @@ - + @@ -15741,7 +15741,7 @@ - + @@ -15749,7 +15749,7 @@ - + @@ -15759,7 +15759,7 @@ - + @@ -15767,7 +15767,7 @@ - + @@ -15775,7 +15775,7 @@ - + @@ -15783,7 +15783,7 @@ - + @@ -15791,7 +15791,7 @@ - + @@ -15799,7 +15799,7 @@ - + @@ -17068,7 +17068,7 @@ - + @@ -18830,7 +18830,7 @@ - + @@ -18903,7 +18903,7 @@ - + @@ -18977,7 +18977,7 @@ - + @@ -19050,7 +19050,7 @@ - + @@ -19124,7 +19124,7 @@ - + @@ -19197,7 +19197,7 @@ - + @@ -19271,7 +19271,7 @@ - + @@ -19344,7 +19344,7 @@ - + @@ -19417,7 +19417,7 @@ - + @@ -19587,7 +19587,7 @@ - + @@ -19660,7 +19660,7 @@ - + @@ -19733,7 +19733,7 @@ - + @@ -19806,7 +19806,7 @@ - + @@ -19879,7 +19879,7 @@ - + @@ -21330,8 +21330,8 @@ - - + + @@ -21339,7 +21339,7 @@ - + @@ -21347,7 +21347,7 @@ - + @@ -21355,7 +21355,7 @@ - + @@ -21363,7 +21363,7 @@ - + @@ -21373,7 +21373,7 @@ - + @@ -21381,7 +21381,7 @@ - + @@ -21389,7 +21389,7 @@ - + @@ -21404,7 +21404,7 @@ - + @@ -21507,7 +21507,7 @@ - + @@ -24809,8 +24809,8 @@ - - + + @@ -24818,7 +24818,7 @@ - + @@ -24826,7 +24826,7 @@ - + @@ -24834,7 +24834,7 @@ - + @@ -24842,7 +24842,7 @@ - + @@ -24943,7 +24943,7 @@ - + @@ -24951,7 +24951,7 @@ - + @@ -24959,7 +24959,7 @@ - + @@ -24967,7 +24967,7 @@ - + @@ -24975,7 +24975,7 @@ - + @@ -25191,7 +25191,7 @@ - + @@ -25264,7 +25264,7 @@ - + @@ -25337,7 +25337,7 @@ - + @@ -25410,7 +25410,7 @@ - + @@ -26296,7 +26296,7 @@ - +