Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!tut.cis.ohio-state.edu!ICS.UCI.EDU!rfg From: rfg@ICS.UCI.EDU Newsgroups: gnu.g++.bug Subject: ALERT: don't make 1.36.1 with SOS defined Message-ID: <8912071146.aa27757@ICS.UCI.EDU> Date: 7 Dec 89 19:46:38 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 20 Based on past experience, I had been in the habit of always making g++ with both ESKIT and SOS defined (in the Makefile). I have just learned that having SOS defined can be disasterous. If you have it defined, you will *not* be able to successfully compile libg++. The problem becomes apparent immediately when you are compiling AllocQueue.cc from libg++ (the first file in src/). The problem comes from the initializer for the member "nodes" on line 28 of AllocQueue.cc. This initializer includes a "new" expression. Apparently, if SOS was defined whne you compiled cplus-init.c, then the routine called build_new() in cplus-init.c returns a bogus value on or about line 2521 in cplus-init.c. All hell breaks loose after that. // rfg