From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13257 invoked by alias); 6 Oct 2004 17:38: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 13249 invoked from network); 6 Oct 2004 17:38:06 -0000 Received: from unknown (HELO mail.codesourcery.com) (65.74.133.10) by sourceware.org with SMTP; 6 Oct 2004 17:38:06 -0000 Received: (qmail 19574 invoked from network); 6 Oct 2004 17:38:05 -0000 Received: from taltos.codesourcery.com (zack@66.92.218.83) by mail.codesourcery.com with DES-CBC3-SHA encrypted SMTP; 6 Oct 2004 17:38:05 -0000 Received: by taltos.codesourcery.com (sSMTP sendmail emulation); Wed, 6 Oct 2004 10:38:04 -0700 To: Geert Bosch Cc: gcc@gcc.gnu.org, kenner@vlsi1.ultra.nyu.edu (Richard Kenner), per@bothner.com Subject: Re: Ada, treelang needs to be converted to --enable-mapped-location References: <10410061250.AA02989@vlsi1.ultra.nyu.edu> <87ekkcj6ua.fsf@codesourcery.com> <7AF18448-17A8-11D9-80FD-000A959A128E@gnat.com> <874ql7kh2u.fsf@codesourcery.com> <6F8348E5-17AD-11D9-80FD-000A959A128E@gnat.com> <87y8ijj13j.fsf@codesourcery.com> From: Zack Weinberg Date: Wed, 06 Oct 2004 18:52:00 -0000 In-Reply-To: (Geert Bosch's message of "Wed, 6 Oct 2004 12:36:05 -0400") Message-ID: <87u0t7iw77.fsf@codesourcery.com> User-Agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2004-10/txt/msg00222.txt.bz2 Geert Bosch writes: > On Oct 6, 2004, at 11:52, Zack Weinberg wrote: >> Do you have the same complaint, then, about hashtab.c? What about >> xmalloc? > > No, because the front ends do not need to use these files. Indeed, > GNAT uses its own hash tables and allocation strategies. It would be > different if you'd require front ends to store any identifiers it > reads using hashtab.c. This is news to me; I had thought that hashtab.c was required. I'm sure I don't have to explain to you why duplicated code is bad; and I don't see why Ada's packaging requirements prevent you from picking up C modules which have, after all, been carefully coded to be independent of the rest of GCC. Such as hashtab.c and line-map.c. I'd also point out that, while proper interface boundaries are good, sharing data structures is also good. Any time you have two data structures which are isomorphic representations of the same thing, and logic to translate between them, that's wasting time and space which could be saved by sharing the data structure. zw