Patch-ID# 106529-08 Keywords: libC.so.5 Synopsis: SunOS 5.5.1: Shared library patch for C++ Date: Jul/31/2001 Solaris Release: 2.5.1 SunOS Release: 5.5.1 Unbundled Product: libC Unbundled Release: 4.0.1 NOTE: this patch also apply to 4.1, 4.2 Xref: Topic: Relevant Architectures: sparc BugId's fixed with this patch: 1136478 1146175 1147044 1147577 1148647 1151825 1159647 1160084 1161999 1164100 1165177 1166414 1169658 1171426 1172054 1172379 1173166 1174107 1178171 1180564 1182934 1184772 1187592 1193580 1194462 1195674 1223494 1232305 1232579 1232632 1254838 1259645 1262573 1264396 1265054 4005413 4022750 4050876 4058012 4067988 4079317 4082776 4089011 4100612 4100882 4101606 4121018 4123883 4132688 4190043 4193618 4199857 4318566 4394919 Changes incorporated in this version: 4394919 Patches accumulated and obsoleted by this patch: 101242-13 Patches which conflict with this patch: Patches required with this patch: Obsoleted by: Files included with this patch: /usr/include/demangle.h /usr/lib/libC.so.5 /usr/lib/libCrun.so.1 /usr/lib/libdemangle.so.1 Problem Description: 4394919 106529-07: missing unpatched SUNWlibC package (from 106529-07) 4318566 cpu2000 fails on 581 (from 106529-06) -none- (from 106529-05) 4123883 Error in Exception Handling -none- Forward-compatibility libCrun entry point used in CC 5.1 (from 106529-04) (from 106529-03) (from 106529-02) (from 106529-01) 4058012 segmentation fault in exeption handling (rethrow from unexpected) 4101606 C++ program crashes with exception in constructor when optimized 4132688 C++ 4.2 : destructor not called without -g in a exception 4190043 Test E1166414 times out (x86 only) 4193618 Wide streams (wcout, et al.) not initialized properly 4199857 Missing symbols from libCrun.so.1 4079317 C++ code gives a segmentation fault at ex_throw 4082776 dynamic casting ostream() call problem - runtime core dump 4067988 C++ 4.2 copy constructor problem 4100612 strstream not working correctly within libC.so.5 4100882 2.6 C++ 4.2 runtime library prob with strstream. 4089011 Deadlock in IOStream::InitLock while processing .init sections 4050876 dynamic_cast won't let you cast to derived type 4121018 dbx reporting RUA errors against sync_with_stdio (from 101242-13) 4005413 throw is not thread safe (from 101242-12) 4022750 C++ multi-threaded code generates a signal fault in critical section (from 101242-11) 1265054 Using C++4.1 on 2.5 strstream gets premature EOF. 1264396 Cfront defines detach() as a member of fstreambase but C++ 4.x compiler does not 1254838 demangler bug: dbx dumps core trying to read C++ source file 1259645 ifstream class doesnt 'or' options with ios::in if options specified in ctor 1262573 Problems with the stream class contructor, c++ 4.1 1232632 Incorrect iostream behavior 1232579 ofstream::setbuf() works differently between SC2.0.1 & SC3.0.1 C++ 1232305 instance of strstream class using istream get() member function doesnt work 1223494 lock is aquired for every call to new even if malloc() succeeds (from 101242-10) 1174107 functions add-vector and check_addr take intensive cpu resources 1193580 Problem with binary data in iostreams 1194462 fstream .open behavior with ios::out worked at 3.0.1, is broken at 4.0.1 1195674 exception lists for shared object are MT-unsafe (from 101242-09) 1187592 The fstream class does not handle pipes (FIFO) properly. 1180564 istreams get set to EOF when a SIGALRM happens 1184772 ios formatting fails to print floating point numbers as printf() 1182934 Writing to a strstream moves the get (tellg) pointer (from 101242-08) 1178171 constructors not called for array allocated using (placement) new (from 101242-07) 1172054 strstream::seekp(val) does not actually change the put pointer 1172379 C++ 4.0 insertion into ostrstream is slow 1173166 C++ dumps core at ostream() call (from 101242-06) 1160084 When operator new throws an exception, it does not release lock 1161999 Inputting of float values does not work in French/German locales 1165177 streams tellp() method repositions input stream pointer - it shouldn't 1169658 libC.so.5 shared-lib dependencies are wrong 1164100 Destructor for some exceptions not called on exit from handler 1166414 Need to have per thread set_terminate and set_unexpected functions 1171426 Exception stack area not properly freed in MT application (from 101242-05) 1151825 bad slines for try blocks breaks dbx's whocatches 1159647 array destructors are not thread safe in C++4.0.1 (from 101242-04) 1148647 cafe mangled name change invalidates bundled libC.so.4 - patch not sufficient (from 101242-03) 1147044 Memory leak in cafe's libC 1147577 program using cin/cout in static constructor coredumps with -mt (from 101242-02) 1146175 mt programs linked dynamically with libC don't work (from 101242-01) 1136478 Need a patch for libC.so.4 on s493 Patch Installation Instructions: -------------------------------- Refer to the Install.info file for instructions on using the generic 'installpatch' and 'backoutpatch' scripts provided with each patch. Any other special or non-generic installation instructions should be described below as special instructions. Special Install Instructions: ----------------------------- 1. Determine which patches (if any) have been applied to your SUNWlibC package. # showrev -p | grep libC If no entries, or entries for earlier revisions of this patch (106803, 106540, 106539, or 106804), are displayed, skip to step 4. If you have an entry(s) for either patch 101242 or 102859, skip to step 2. 2. Remove the patched SUNWlibC package: # pkgrm SUNWlibC 3. Install the unpatched SUNWlibC package: # pkgadd -d //pkg SUNWlibC where is the directory containing the patch and is the patch number. must be a full path name. Example: # pkgadd -d /tmp/123456-01/pkg SUNWlibC 4. Patch the SUNWlibC package using the instructions from the Install.info file. README -- Last modified date: Tuesday, July 31, 2001