Patch-ID# 111713-08
Keywords: libC.so.5 libCrun.so.1 libCstd.so.1 libiostream.so.1
Synopsis: SunOS 5.9_x86: Shared library patch for C++_x86 
Note: This patch available for SPARC as patches 111711 (32-Bit) and 111712 (64-Bit)

Date: May/12/2004

Solaris Release: 9_x86

SunOS Release: 5.9_x86

Unbundled Product: libC

Unbundled Release: 4.0.1, 4.1, 4.2, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5

Relevant Architectures: i386

BugId's fixed with this patch: 4302954 4698028 4699194 4704604 4708982 4745600 4747931 4749398 4749628 4750936 4756106
BugId's fixed with this patch: 4794587 4797953 4806782 4820555
BugId's fixed with this patch: 4825898 4828443 4853946 4856138 4861853 
BugId's fixed with this patch: 4886310 4884516 4894898 4918858 4876793 4919536 4864189
BugId's fixed with this patch: 4949404 4951789 4953582 4953639 4965215
BugId's fixed with this patch: 4945288 4967333
BugId's fixed with this patch: 5019613
BugId's fixed with this patch: 4957415 4678395 4962360 4997504 4859928 5019752 5032521 5037790 4980736 5034760 5039540 5001937

Changes incorporated in this version: 4886310 4957415 4678395 4962360 4997504 4859928 5019752 5032521 5037790 4980736 5034760 5039540 5001937

Patches accumulated and obsoleted by this patch:

Patches which conflict with this patch:

Patches required with this patch:

Files included with this patch:

/usr/lib/libC.so.5
/usr/lib/libCrun.so.1
/usr/lib/libCstd.so.1
/usr/lib/libdemangle.so.1
/usr/lib/libiostream.so.1
/usr/include/demangle.h

Problem Description:

4957415 Incomplete extern inline.
4678395 compiling with -p (-xpg) -xarch=v8plusa (v8plusb) gives undefined symbols
4962360 static inline functions given global linkage
4997504 Problems with istream::readsome() in libCstd
4859928 lapack++_1.1a: gcc compilers are 3-4 times faster
5019752 unsync_stdio.o not built with -xarch=v8
5032521 default libCstd library search is inconsistent with driver
5037790 Revert to old library structure.
4980736 +d2 fails to emit all functions
5034760 Compiler forces local binding for inline functions while using xldscope flags
5039540 failed to build Mico and Orbacus with with -xldscope=sympolic
5001937 dlopen/dlclose a C++ shared lib causes MT C program to SEGV

(from 111713-07)
5019613 ostrstream writes NULL terminator into char array

(from 111713-06)
4945288 Sdtimage crash when opening *.tif and *.gif file.
4967333 internal use of clog/__clog in -lC/-liostream should bind to its own copy

(from 111713-05)
4949404 numeric_limits doesn't understand 64 bit integers
4951789 incorrect value for numeric_limits::is_modulo
4953582 stringstream::seekg() does not set the current pointer at the designated positio
4953639 istream::getline reads upto n-2 characters where n is buffer size
4965215 cerr hanging if interupted by a signal

(from 111713-04)
4886310 Overloading ambiguity error with usage of template function with const vector
4884516 libCstd vector class does not pass correct size to deallocator
4894898 the fixes for bugs 4856138 and 4876793 break binary compatibility
4918858 incorrect use of "typename" in standard headers
4876793 second argument to deallocate() should be the strings capacity NOT length
4919536 libCstd does not provide enough overloads of operator>() for fpos
4864189 numeric_limits denorm_min incorrectly returns zero

(from 111713-03)
4825898 C++ runtime performace standard iostream is much slower than classic iostream
4828443 incorrect number of characters outputed after fix of bug 4747931
4853946 static template class variable must be __global when use -xldscope=symbolic
4856138 libCstd string class does not pass correct size to deallocator
4861853 SUNW_1.2 version in libCrun.so.1 on Solaris 2.6 is not found in newer Solaris OE

(from 111713-02)
4794587 ostream "internal" padding incorrect for hex
4797953 c++: -mt option causes not to catch std::bad_alloc exception.
4806782 -xport64 generates warnings from standard headers
4820555 error in InterlockedDecrement()

(from 111713-01)
4302954 Memory leak in stream classes
4698028 RTC reports rua error for program using deque
4699194 reverse_iterator<...>::self should be public
4704604 C++ 5.0 onwards: cin>> assignments to long long do not return error.
4708982 Patched version of libCstd.so.1 is compiled for sparcv8plus
4745600 problem with rdbuff being used to redirect stderror
4747931 deriving from std::strstreambuf yields core dump
4749398 low performance of the standard template class string.
4749628 C++ 5.3 runtime performance insertion into ostrstream is slow
4750936 basic_string assumes int converts to char_type
4756106 problem in std library with customer allocator

Patch Installation Instructions:
--------------------------------
For Solaris 8 release, refer to the man pages for instructions on
using 'patchadd' and 'patchrm' scripts provided with Solaris.
Any other special or non-generic installation instructions should be
described below as special instructions.  The following example
installs a patch to a standalone machine:

        example# patchadd /var/spool/patch/104945-02

The following example removes a patch from a standalone system:

        example# patchrm 104945-02

For additional examples please see the appropriate man pages.


Special Install Instructions:
-----------------------------

If you are compiling, linking or running executable images
that have been compiled using -xarch=v9 or -xarch=v9a, it
is strongly recommend that you also install the most recent
version of patch 111712, the corresponding sparcv9-S2 patch to the
one for 32-bit Solaris 9 (111711) .

