From owner-freebsd-current Tue Aug 27 18:39:27 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 87AB137B401 for ; Tue, 27 Aug 2002 18:39:25 -0700 (PDT) Received: from gull.mail.pas.earthlink.net (gull.mail.pas.earthlink.net [207.217.120.84]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2A2D443E6A for ; Tue, 27 Aug 2002 18:39:25 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from pool0268.cvx40-bradley.dialup.earthlink.net ([216.244.43.13] helo=mindspring.com) by gull.mail.pas.earthlink.net with esmtp (Exim 3.33 #1) id 17jrnh-0005HI-00; Tue, 27 Aug 2002 18:39:18 -0700 Message-ID: <3D6C292B.A9ABE189@mindspring.com> Date: Tue, 27 Aug 2002 18:36:43 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Alexander Langer Cc: freebsd-current@FreeBSD.org Subject: Re: gcc 3.1 / streambuf.h broken with "using namespace std;" References: <20020828021006.D1412@fump.kawo2.rwth-aachen.de> <3D6C1F76.30B458A5@mindspring.com> <20020828032139.F1412@fump.kawo2.rwth-aachen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Alexander Langer wrote: > Thus spake Terry Lambert (tlambert2@mindspring.com): > > > What's going on wrong here? > > > GCC 2.9x can compile this, 3.1 cannot: > > Delete and reinstall your header files. They must match > > the compiler you are using, and you must not have stale > > header files from the previous compiler version. > > The -STABLE -> -CURRENT upgrade path is broken then. Yes. The same way it leaves the system version of perl installed, instead of deleting it out from under you and forcing you to install the package/port to get perl back. > > Use at least GCC 3.2, if you feel compelled to use a buggy > > non-maintenance release level GCC; alternately, wait for 3.3. > > I felt like using -CURRENT's 3.1, as it is expected. > Well, I'll try to look if a new world fixes the problem, though I bet it > won't. If you have anything installed already which you don't rebuild (e.g. C++ libraries), then you will not be able to link the old and new code, since the C++ implementation details have changed sufficiently that object files generated by different versions of the compiler are no longer binary compatible. Going to 3.2 or the 3.3 beta version will at least make an effort toward you not having the problem again, in the future. If you treat -current as a stand-along thing, and not something that's supposed to work all the time, and for which upgrades from source will work without problems, then you won't run into things like this in the future. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message