[gnu.g++.lib.bug] problems in String.h on decstation

othar@ERNIE.BERKELEY.EDU (Othar Hansson) (12/14/89)

I get errors in compiling libg++-1.36.0 on a decstation (dec-3100).
This could be due to a mis-compilation of G++ on the machine, but it's
peculiar that only this file would induce vomiting.  Any ideas on what
might be wrong?  The G++ (g++-1.36.2) seems to successfully compile
several thousand lines of my code, as well as genclass'ed code.

Othar Hansson
CS Division 
UC Berkeley
othar@ernie.berkeley.edu

output from Make:
-----------------

/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h: In method StrTmp::StrTmp (struct StrRep *):
In file included from String.cc:27:
/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h:413: member `rep' comes from base class needing constructor
/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h: In method StrTmp::StrTmp (class String &):
/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h:415: member `rep' comes from base class needing constructor
/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h: In method StrTmp::StrTmp (class StrTmp &):
/net/guard/users/mayer/src-nasa/libg++/g++-include/String.h:417: member `rep' comes from base class needing constructor
make[1]: *** [String.o] Error 1
make: *** [src/libg++.a] Error 1

offending lines from String.h:
------------------------------

inline StrTmp::StrTmp(StrRep* r) :  rep(r) {}

inline StrTmp::StrTmp(String& x) :rep(x.rep) { x.rep = &_nilStrRep; }

inline StrTmp::StrTmp(StrTmp& x) :rep(x.rep) { x.rep = &_nilStrRep; }