From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19891 invoked by alias); 15 Jan 2013 17:51:55 -0000 Received: (qmail 19879 invoked by uid 22791); 15 Jan 2013 17:51:54 -0000 X-SWARE-Spam-Status: No, hits=-6.4 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 15 Jan 2013 17:51:48 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r0FHpdYq016155 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 15 Jan 2013 12:51:39 -0500 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r0FHpbKF017946 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Tue, 15 Jan 2013 12:51:37 -0500 From: Tom Tromey To: Martin Runge Cc: Joel Brobecker , John Gilmore , gdb@sourceware.org, Martin Runge Subject: Re: RFC: include mod time and size in DWARF file name table References: <201301130519.r0D5JQJJ016059@new.toad.com> <20130113055406.GX3567@adacore.com> Date: Tue, 15 Jan 2013 17:51:00 -0000 In-Reply-To: (Martin Runge's message of "Mon, 14 Jan 2013 13:00:10 +0100") Message-ID: <87bocqjpw6.fsf@fleche.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2013-01/txt/msg00062.txt.bz2 >>>>> "Martin" == Martin Runge writes: Martin> Imagine an executable that uses a library. The executable is not Martin> changed very often, but the library is rebuild every day. If the Martin> library's interface (defined in a header file included by both) Martin> changes, you get a process (the executable with the library loaded) Martin> that knows two versions of the things defined in that header file. How Martin> can this be detected, once the wrong build messed things up? I would suggest writing a tool to check the ABI using the debuginfo. Then you can compare types between the executable and the library. There are already some ABI checkers out there, maybe one would suit your purposes. Tom