From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15041 invoked by alias); 12 May 2017 02:11:45 -0000 Mailing-List: contact libabigail-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Id: List-Subscribe: Sender: libabigail-owner@sourceware.org Received: (qmail 14546 invoked by uid 48); 12 May 2017 02:11:38 -0000 From: "woodard at redhat dot com" To: libabigail@sourceware.org Subject: [Bug default/21486] missing const when comparing C++ object files Date: Sun, 01 Jan 2017 00:00:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: libabigail X-Bugzilla-Component: default X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: woodard at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: dodji at redhat dot com X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2017-q2/txt/msg00018.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=3D21486 --- Comment #4 from Ben Woodard --- The problem with libabigail is that it drops the "const" which is an ABI artifact in both objects.=20 It is not clear to me that clang's statement that the type is typedef'd is = in fact an artifact. That could be a problem with clang. I'm not sure. The second problem with parameter 3 may be a GCC problem: [ 41147] subprogram external (flag_present) yes name (strp) "dump" decl_file (data1) 2 decl_line (data2) 4069 linkage_name (strp) "abigail::dump(abigail::ir::translation_unit const&, std::basic_ostream >&, bool)" declaration (flag_present) yes sibling (ref4) [ 41167] [ 41157] formal_parameter type (ref4) [ 6b4b9] [ 4115c] formal_parameter type (ref4) [ 42e87] [ 41161] formal_parameter type (ref4) [ 3c1a1] [ 3c1a1] base_type byte_size (data1) 1 encoding (data1) boolean (2) name (strp) "bool" To me this looks like it should be 3c1a9 which is: [ 3c1a9] const_type type (ref4) [ 3c1a1] If you agree then I will submit a gcc PR regarding that. Clang seems to get this correct: [ 6a5cd] formal_parameter location (sec_offset) location list [ 1118f] name (strp) "annotate" decl_file (data1) 36 decl_line (data2) 4091 type (ref4) [ 6ad8e] [ 6ad8e] const_type type (ref4) [ 2064a] [ 2064a] base_type name (strp) "bool" encoding (data1) boolean (2) byte_size (data1) 1 --=20 You are receiving this mail because: You are on the CC list for the bug.