From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30750 invoked by alias); 10 Jul 2002 21:52:07 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 30731 invoked from network); 10 Jul 2002 21:52:06 -0000 Received: from unknown (HELO localhost.localdomain) (66.60.148.227) by sources.redhat.com with SMTP; 10 Jul 2002 21:52:06 -0000 Received: from warlock.codesourcery.com (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.11.6/8.11.6) with ESMTP id g6ALoQV01902; Wed, 10 Jul 2002 14:50:26 -0700 Date: Wed, 10 Jul 2002 21:14:00 -0000 From: Mark Mitchell To: Joe Buck , Richard Henderson cc: Nathan Sidwell , Andreas Jaeger , "gcc@gcc.gnu.org" , Goodman Joe Subject: Re: Results from Intel4s C++ ABI Testsuite Message-ID: <35210000.1026337826@warlock.codesourcery.com> In-Reply-To: <200207102041.NAA27631@atrus.synopsys.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-SW-Source: 2002-07/txt/msg00479.txt.bz2 > It seems that for true C++ binary compatibility all implementers must > agree on the type of size_t. Was this overlooked? Sort of. As Richard says, this is pretty much a property of the OS. If "int" and "long" are the same, you can interchange the two for binary compatibility purposes, but you'll never make your header files work right. And, of course, since "size_t" is just a typedef we can't mangle it specially, even if we wanted to. It is true that if my OS uses "long" and yours uses "int" -- but they are the same in all other ways -- then I can't mix and match C++ shared objects from our two systems. I can still mix and match C++ shared objects from any one of those systems, even if I used different compilers to build them. -- Mark Mitchell mark@codesourcery.com CodeSourcery, LLC http://www.codesourcery.com