[gnu.g++.lib.bug] String.cc in libg++-1.36.3

samtwga@sundc.East.Sun.COM (Bill Aten) (01/19/90)

Doug Lea (or whomever?):

I've been installing all sorts of GNU software these past few days.  To date
I have the following configuration:  Sun 3/60, SunOS 4.0.3, GNU Make 3.57,
gas 1.34, gcc 1.36 and g++ 1.36.1.  I have successfully compiled
the 'src' directory of libg++-1.36.1.  I have been unable to compile the
'src' directory of libg++-1.36.3 however.  For the record, I tried 1.36.3
first (many times) and then finally reverted to 1.36.1.  I'm no expert in
these sort of things but I've attached a listing of the output for the one
file that will not compile (String.cc).  Removing String.cc & String.o from
the Makefile will allow 'make src' to complete and create libg++.a.  The
point here is that only String.cc is giving me a problem (and only in version
1.36.3).

So if you've got any ideas (fixes), questions, etc.  please let me know.  I'll
help you out in any way possible.
-- 
_____________________________________________________________________________

Bill Aten                           |      UUCP:  ......!sundc!samt19!samtwga
(202) 697-2183                      |  Internet:  samtwga@samt19.afcsa.af.mil
_____________________________________________________________________________
Output from 'make src' as it relates to String.cc:
(P.S.  I wrapped lines greater than 80 chars. to avoid mailer problems)
=============================================================================
(cd src; make GXX="g++"
  GXXFLAGS=" -I/usr2/local/src/gnu/test/libg++-1.36.3/g++-include
  -g -O -fstrength-reduce  -felide-constructors -fschedule-insns
  -fdelayed-branch -fsave-memoized  -Wall  -pipe"
  GXXLDFLAGS="-L/usr2/local/src/gnu/test/libg++-1.36.3/src -lg++ -lm "
  LIBDIR="/usr/local/lib/gnu"
  SRCIDIR="/usr2/local/src/gnu/test/libg++-1.36.3/g++-include"
  CC="gcc"
  CFLAGS=" -I/usr/local/lib/gnu/gcc-include -I/usr/include
  -I/usr2/local/src/gnu/test/libg++-1.36.3/g++-include -g -O 
  -fstrength-reduce -fdelayed-branch  -Wall  -pipe"
  RANLIB="ranlib" LDXX="/usr/local/lib/gnu/gcc-ld"
  GXXCRT1="/usr/local/lib/gnu/crt1+.o" MAKE="make" prefix="" )
g++ -I/usr2/local/src/gnu/test/libg++-1.36.3/g++-include
  -g -O -fstrength-reduce  -felide-constructors -fschedule-insns
  -fdelayed-branch -fsave-memoized  -Wall  -pipe -c  String.cc
String.cc: In method void String::error (char *)const :
String.cc:40: warning: `volatile' function does return
String.cc: In method int String::_gsub (const class Regex &, const char *, int):
String.cc:691: call to non-const method `search' with const object
String.cc:687: warning: `pos' may be used uninitialized in this function
String.cc: In method void String::del (const class Regex &, int (=  0 )):
String.cc:755: call to non-const method `search' with const object
String.cc:754: warning: `mlen' may be used uninitialized in this function
String.cc:
 In method class SubString String::at (const class Regex &, int (=  0 )):
String.cc:826: call to non-const method `search' with const object
String.cc:825: warning: `mlen' may be used uninitialized in this function
String.cc:827: warning: `l' may be used uninitialized in this function
/usr2/local/src/gnu/test/libg++-1.36.3/g++-include/String.h:1265:
 warning: `l' may be used uninitialized in this function
String.cc:
 In method class SubString String::before (const class Regex &, int (=  0 )):
String.cc:858: call to non-const method `search' with const object
String.cc:
 In method class SubString String::through (const class Regex &, int (=  0 )):
String.cc:892: call to non-const method `search' with const object
String.cc:891: warning: `mlen' may be used uninitialized in this function
String.cc:
 In method class SubString String::after (const class Regex &, int (=  0 )):
String.cc:936: call to non-const method `search' with const object
String.cc:935: warning: `mlen' may be used uninitialized in this function
String.cc:
 In method class SubString String::from (const class Regex &, int (=  0 )):
String.cc:964: call to non-const method `search' with const object
String.cc:
 In function
  int split (const class String &, class String *, int, const class Regex &):
String.cc:1017: call to non-const method `search' with const object
String.cc:1014: warning: `matchlen' may be used uninitialized in this function
String.cc: In method int String::freq (const char *)const :
String.cc:1260: call to const method `match' with non-const object
String.cc: In method int String::freq (char)const :
String.cc:1268: call to const method `match' with non-const object
make[1]: *** [String.o] Error 1
make: *** [src] Error 1