From owner-freebsd-current Fri Aug 14 15:36:17 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id PAA02160 for freebsd-current-outgoing; Fri, 14 Aug 1998 15:36:17 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from smtp02.primenet.com (smtp02.primenet.com [206.165.6.132]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA01986 for ; Fri, 14 Aug 1998 15:35:35 -0700 (PDT) (envelope-from tlambert@usr04.primenet.com) Received: (from daemon@localhost) by smtp02.primenet.com (8.8.8/8.8.8) id PAA21955; Fri, 14 Aug 1998 15:35:02 -0700 (MST) Received: from usr04.primenet.com(206.165.6.204) via SMTP by smtp02.primenet.com, id smtpd021938; Fri Aug 14 15:35:00 1998 Received: (from tlambert@localhost) by usr04.primenet.com (8.8.5/8.8.5) id PAA22151; Fri, 14 Aug 1998 15:34:56 -0700 (MST) From: Terry Lambert Message-Id: <199808142234.PAA22151@usr04.primenet.com> Subject: Re: new compiler? To: mestery@winternet.com (Kyle Mestery) Date: Fri, 14 Aug 1998 22:34:56 +0000 (GMT) Cc: smp@csn.net, bright@hotjobs.com, current@FreeBSD.ORG In-Reply-To: from "Kyle Mestery" at Aug 14, 98 01:23:28 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > We have a fairly complex system running with 2.2.6, FreeBSD pthreads and > > g++28. We tried both the standard compiler and egcs, but neither would > > compile the complete project, let alone run. The biggest problem is in > > the area of c++ templates, g++28 will eat things the other 2 barfed on. > > We had to make one patch to gcc28 b4 building, and turn on the > > "GCC28_THREAD_AWARE" define in libc_r to fix the problem with dynamic > > chain handling. After this exceptions seem to work properly. > > > > My vote would be for gcc28. > > My reason's for wanting gcc-2.8.1 also lie along these lines, as we are > using a cross development environment at work that is complex and utilizes > a mix of gcc-2.8.1 front end and back-end linker/assembler from WRS, > targeting arm-wrs-vxworks. It works quite well, and we have no problems > with the compiler so far. To add more fuel to this fire, Whistle also made this dynamic chain change; I believe it's part of the FreeBSD gcc2.8 port, in fact. The Cygnus (egcs) guys didn't want the change because they had "solved" the problem by making you choose at compile time (per my other post), and Jeremy didn't want to submit the change to FSF because he didn't want to drive divergence between the two code bases. FWIW, I think Jeremy made the wrong decision, and I would be pleased if the FSF people would ask him for the change, under the terms of the GPL. 8-) 8-). The ACAP code makes heavy use of exceptions and threads; as far as I know, we are the only people who have brought it up using a g++ derived compiler; there were a number of changes having to do with g++ parsing of the :: namespace escape (ie: it demanded whitespace changes... bletch 8-)), but that is the only issue I have found so far with the 2.8.1 compiler. Most of the other changes were bad link order assumptions on the part of the ACAP authors and STL pthreads compliance level (Draft 4 vs. standard) assumptions in the Moscow Center for SPARC computing's STL (this is the best STL. Use it. It is more portable than the others, and is derived from the SGI and HP code). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message