Patch-ID# 121017-04

NOTE:
***********************************************************************
READ THE TERMS OF THE AGREEMENT ("AGREEMENT") IN THE LEGAL_LICENSE.TXT
FILE CAREFULLY BEFORE USING THIS SOFTWARE. BY USING THE SOFTWARE, YOU
AGREE TO THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE
TERMS, PROMPTLY DESTROY THE UNUSED SOFTWARE.
***********************************************************************

Keywords: c++ 5.8 compiler sun studio 11
Synopsis: Sun Studio 11: Patch for Sun C++ 5.8 compiler
Date: Aug/21/2006


Install Requirements: NA                      
                      
Solaris Release: 8 9 10

SunOS Release: 5.8 5.9 5.10

Unbundled Product: Sun Studio 11 C++ Compiler

Unbundled Release: 5.8

Xref: 

Topic: 

Relevant Architectures: sparc

BugId's fixed with this patch: 4884025 5036081 5056237 5059765 5067432 5073793 6221536 6244102 6251919 6264823 6288439 6301803 6302735 6304357 6304762 6305792 6306995 6307739 6309042 6309244 6309790 6310691 6313010 6315142 6316019 6316185 6317249 6319635 6319741 6322691 6324182 6324725 6325486 6325777 6326214 6326292 6328453 6329641 6330485 6332323 6335580 6337151 6339010 6339605 6339613 6342646 6344225 6345860 6346186 6347514 6347520 6348680 6352241 6354037 6354370 6354922 6357018 6357166 6362597 6363210 6363440 6364169 6368786 6370757 6372374 6372724 6372964 6374329 6375620 6378188 6378348 6378510 6379792 6380367 6382424 6383168 6383471 6386932 6388063 6390393 6390766 6393808 6393839 6397056 6397993 6398019 6399358 6400136 6401871 6403659 6404246 6404443 6405345 6406049 6406885 6407543 6409632 6410220 6410610 6412216 6414306 6414570 6415084 6415783 6416807 6416811 6416816 6416990 6418159 6421107 6423151 6426664 6431178 6431694 6440389 6444438 6449456 6451506

Changes incorporated in this version: 6444438 6449456 6326292 6451506

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 120760-03 (or greater)

Obsoleted by: 

Files included with this patch: 

<install_dir>/SUNWspro/prod/bin/CC
<install_dir>/SUNWspro/prod/bin/ccfe
<install_dir>/SUNWspro/prod/include/CC/Cstd/algorithm
<install_dir>/SUNWspro/prod/include/CC/Cstd/algorithm.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/deque.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/fstream.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/iosfwd
<install_dir>/SUNWspro/prod/include/CC/Cstd/iostream
<install_dir>/SUNWspro/prod/include/CC/Cstd/istream
<install_dir>/SUNWspro/prod/include/CC/Cstd/istream.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/list
<install_dir>/SUNWspro/prod/include/CC/Cstd/memory
<install_dir>/SUNWspro/prod/include/CC/Cstd/rw/iotraits
<install_dir>/SUNWspro/prod/include/CC/Cstd/rw/tree
<install_dir>/SUNWspro/prod/include/CC/stlport4/limits
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_algobase.h
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_codecvt.h
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_config.h
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_num_put.c
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_ostream.c
<install_dir>/SUNWspro/prod/lib/libCrun.a
<install_dir>/SUNWspro/prod/lib/libCstd.a
<install_dir>/SUNWspro/prod/lib/libCstd.inst
<install_dir>/SUNWspro/prod/lib/libiostream.a
<install_dir>/SUNWspro/prod/lib/libp/libCrun.a
<install_dir>/SUNWspro/prod/lib/libp/libCstd.a
<install_dir>/SUNWspro/prod/lib/libp/libiostream.a
<install_dir>/SUNWspro/prod/lib/rw7/CC4/librwtool.so.2
<install_dir>/SUNWspro/prod/lib/rw7/librwtool.so.2
<install_dir>/SUNWspro/prod/lib/rw7/std/librwtool.so.2
<install_dir>/SUNWspro/prod/lib/rw7/std/v9/libp/librwtool.a
<install_dir>/SUNWspro/prod/lib/rw7/std/v9/librwtool.a
<install_dir>/SUNWspro/prod/lib/rw7/std/v9/librwtool.so.2
<install_dir>/SUNWspro/prod/lib/rw7/std/v9/librwtool_dbg.a
<install_dir>/SUNWspro/prod/lib/rw7/v9/libp/librwtool.a
<install_dir>/SUNWspro/prod/lib/rw7/v9/librwtool.a
<install_dir>/SUNWspro/prod/lib/rw7/v9/librwtool.so.2
<install_dir>/SUNWspro/prod/lib/rw7/v9/librwtool_dbg.a
<install_dir>/SUNWspro/prod/lib/stlport4/libp/libstlport.a
<install_dir>/SUNWspro/prod/lib/stlport4/libstlport.a
<install_dir>/SUNWspro/prod/lib/stlport4/libstlport.so.1
<install_dir>/SUNWspro/prod/lib/stlport4/libstlport_dbg.a
<install_dir>/SUNWspro/prod/lib/stlport4/v9/libp/libstlport.a
<install_dir>/SUNWspro/prod/lib/stlport4/v9/libstlport.a
<install_dir>/SUNWspro/prod/lib/stlport4/v9/libstlport.so.1
<install_dir>/SUNWspro/prod/lib/stlport4/v9/libstlport_dbg.a
<install_dir>/SUNWspro/prod/lib/v8plus/libCstd.a
<install_dir>/SUNWspro/prod/lib/v8plus/libp/libCstd.a
<install_dir>/SUNWspro/prod/lib/v9/libCrun.a
<install_dir>/SUNWspro/prod/lib/v9/libCstd.a
<install_dir>/SUNWspro/prod/lib/v9/libiostream.a
<install_dir>/SUNWspro/prod/lib/v9/libp/libCrun.a
<install_dir>/SUNWspro/prod/lib/v9/libp/libCstd.a
<install_dir>/SUNWspro/prod/lib/v9/libp/libiostream.a

Problem Description:

6444438 Core dump when return function reference
6449456 AMD64:  Multiply defined symbols
6326292 BOOST: condition portion of 'if' not parsed
6451506 ccfe crash when abusing __VA_ARGS__
 
(from 121017-03)
6400136 BOOST: Overloaded unary '&' operator is not recognized
6397993 C++ seg faults on template specialization
6403659 BOOST: Distinguish among char[] and wchar_t[] in partial specialization
6404246 BOOST: Number of template-template parameter arguments in a partial specialization
6401871 template operator!= using ptr-to-mem-func failed
6375620 BOOST: Can't call template operator with array argument
6406885 Can't use template-template partial specialization parameter
6407543 BOOST: mpl tests show unexpected error
6409632 BOOST: std::__find_end is not declared in the any include files
6410610 Default arguments of operator new
6406049 libCstd: acquiring a mutex on a deleted locale object causes core dump
6412216 Could not find conversion from pointer to overloaded function to class with template constructor
6397056 BOOST: incorrect ambiguity error on overloaded template functions
6414570 cv-qualificator in the enum field declaration
6415084 Ellipsis in the partial specialization argument list
6414306 Compiler does not recognize call static method of template class
6415783 Compiler goes into infinite loop
6410220 BOOST: Incorrect string conversion to char* instead char[]
6416811 BOOST: Deducing dependent type of function argument
6416816 BOOST: Compiler prefer template function to non-template one
6416807 BOOST: Constant reference in template specialization
6416990 BOOST: Cannot find overloaded function when argument is specialized class
6374329 pch: using double slash in include path causes failure output
6399358 BOOST: Incorrect error on definition of specialized template class
6421107 BOOST: Unexpected influence of two typedefs
6423151 constructor in non-type template argument causes infinite loop in compiler
6251919 Sun C++ fails to detect ambiguous operator definitions
6404443 Assertion: while processing template code with static member template
6405345 -xdumpmacros does not list predefined macros
6418159 destructor call missing for temporary object in switch statement when case is missing break
6426664 Studio 11 C++ generates code that SEGV while Studio 10 works OK
6431178 compiler assertion on code with template class having two base classes
6431694 Fails to resolve overload on pointer type
6440389 segfault while compiling a file
 
(from 121017-02)
6393839 dellocate() called with 0 by libCstd functions
6390393 badbit not set when input function exits via exception
6390766 BOOST: Incorrect argument type of nested class template member
6398019 BOOST: Partial specialization with template-template argument
6354037 template declaration and definition treated as different templates
6357018 Invalid cast zero constant to pointer to member in template function
6347514 incorrect input IR to iropt causing iropt core dump
6363440 invalid complaint about overloading ambiguity
6364169 disappearing characters with variadic macros
6339613 template code not accepted
6372964 Miss method declaration after friend member template
6372374 BOOST: Accessibility checking is done before overload resolution
6378510 BOOST: Invalid type of template argument dependent return value
6378348 setting bitfield in a destructor yields wrong value reading from temp object
6379792 BOOST: Invalid ambiguity error on member template functions
6378188 -instlib doesn't handle static template data members correctly
6383471 BOOST: Template name w/o arguments in the nested friend template function definition
6388063 BOOST: Could not find a match for functio with nested templates in the return value typ
6386932 name lookup bug with overloaded function pointer as template argument
6330485 dbx's fix and cont fails to rebuild executable if compile line includes -Dxxx= a quoted string
6370757 stlport4: EOF return from overflow does not cause ostream failure
6372724 stlport crashes with cout << null_char_ptr
6382424 stlport: Two different mangled names for the same function
6383168 stlport: Missing entry in libstlport
6380367 stlport cannot print large floating-point values in fixed mode
6368786 Warning: std::stringstream::rdbuf hides the function std::ios::rdbuf
5036081 Warnings from <list> when compiling with +w2
5056237 Missing overload for std::fpos<__mbstate_t>::operator+=(unsigned int)
6342646 Request for C++ compiler to detect mismatched printf arguments
6315142 Types defined by typedef are considered as unpromoted
6324725 Error: The operation "const char* - Y_136Y_151" is illegal; 1st fail: 20050826_mars
6339605 Problem with implicit type convertions
6357166 incorrect overloading ambiguity
6362597 CC dumps core with -xO3 compiled file, -xO2 works fine
6363210 std::deque memory corruption
6393808 can't compile valid template code
 
(from 121017-01)
4884025 requirement for accessibly copy constr not enforced
5059765 Template matching regression in C++ 5.5 patch 113817-05/08 and 5.6
5067432 compiler allowd indirect implicit instantiation of abstract class
5073793 inlining incorrectly suppresses access error of private member variables
6221536 typedef as member of class template in nested template instantiation
6244102 Compiler does not detect ambiguities
6264823 CC fails to compile a program
6288439 == args converted to bool
6301803 value in unary expression not promoted to int
6302735 Compiler error compiling code with two comma-separated deletes
6304357 Type conversion ambiguity not detected
6304762 BOOST: Need to allow references to static from within templates
6305792 member templates: compiler not able to find a match
6306995 Type conversion ambiguity not detected on deep derived class
6307739 ccfe continues processing even for bad combination of options
6309042 invalid access of private member from non-member function
6309244 explicit instantiation does not instantiate nested class
6309790 testcase E6295110 failed during compilation with Fatal error
6310691 Uninitialized fields in IR
6313010 BOOST: Assertion:   (../lnk/init.cc, line 1032)
6316019 Attempting to create an array of abstract class type should fail type deduction
6316185 member templates and overload resolution
6317249 Compiler errors in evaluating the default parameters with circular
6319635 stream_rmutex::rmutex_init() should call pthread_mutexattr_destroy()
6319741 STLport header warning include/CC/stlport4/stl/_istream.h", line 118: 
6322691 suppress Warning: Could not find source for std::_LimG<bool>::_D_inf
6324182 C++ 5.7 - Assertion:   (../lnk/emitexpression.cc, line 405)
6325486 incorrect result when template specialization function is inlined
6325777 ccfe dies with Signal 11
6326214 "Assertion:   (../lnk/storage.cc, line 99)", when compiling template
6328453 BOOST specialization bug
6329641 __rb_tree::operator=() does not store rhs comparison object in lhs
6332323 istrstream operator>>() modifies target even if input is invalid
6335580 enum in template not recognized as integere constant expression
6337151 stlport prints garbage value for LLONG_MIN
6339010 SEGV during destruction of exception object containing a deque
6344225 Does not differentiates casts to base classes on different
6345860 extra copy ctor in conditional ?: expression
6346186 Incorrect application behavior with -xO3
6347520 BOOST: problem with numeric_limits<long double> in stlport
6348680 inaccessible copy constructor not diagnosed
6352241 fails to detect access to private class member
6354370 compiler incorrectly flagging as error static_cast to convert
6354922 ofstream::close() method does not fail if it fails to flush the buffer to disk

Patch Installation Instructions:
--------------------------------
For Solaris 8-9 releases, 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/106326-01
 
The following example removes a patch from a standalone system:
 
     example# patchrm 104945-02
 
For additional examples please see the appropriate man pages.
 
For Solaris 10 releases, Sun Studio 11 installer explicitly does a -G install,  therefore the
patches must be installed or removed with -G, also.
 
     example# patchadd -G /var/spool/patch/106326-01
     example# patchrm -G 104945-02

Special Install Instructions:
-----------------------------
none.

README -- Last modified date:  Monday, August 21, 2006

