Patch-ID# 117830-08

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.7 sun studio 10 c++ compiler
Synopsis: Sun Studio 10: Patch for Sun C++ 5.7 Compiler
Date: Aug/07/2006


Install Requirements: NA                      
                      
Solaris Release: 8 9 10

SunOS Release: 5.8 5.9 5.10

Unbundled Product: Sun Studio 10 C++ Compiler

Unbundled Release: 5.7

Xref: 

Topic: 

Relevant Architectures: sparc

BugId's fixed with this patch: 4884025 4907751 5025475 5036081 5042911 5050758 5056237 5057840 5059765 5060845 5062954 5067432 5070004 5073793 5077945 5088763 6176465 6182181 6186646 6186857 6189114 6191581 6193249 6195868 6197269 6197465 6199377 6203110 6211394 6211974 6211983 6212003 6212539 6214410 6216319 6216369 6216629 6217887 6217921 6221080 6221536 6223839 6224793 6226742 6227232 6231173 6231884 6233892 6234584 6235039 6236581 6238873 6238896 6241704 6241812 6242459 6242885 6244102 6244128 6244485 6244956 6245261 6245555 6248363 6249393 6250573 6251271 6251279 6252515 6253074 6253345 6253944 6254494 6254578 6257181 6257360 6261465 6264564 6264801 6265052 6265671 6266854 6269939 6273787 6273972 6275166 6279144 6279462 6283965 6286320 6286678 6287458 6288439 6293518 6295079 6295110 6302092 6302735 6302748 6302749 6304357 6304703 6304762 6305792 6306660 6306995 6309042 6309790 6313010 6316019 6316185 6317249 6319635 6319741 6322691 6324182 6324725 6325486 6326163 6326214 6328453 6329641 6330485 6332323 6335580 6337151 6339605 6339613 6342646 6345860 6346186 6347520 6348680 6352241 6354037 6354171 6354370 6354922 6357018 6357166 6363210 6363440 6364169 6368786 6372374 6372964 6374329 6375620 6378188 6378348 6378510 6379792 6382424 6383168 6383471 6386932 6388063 6390393 6390766 6393170 6393808 6393839 6397056 6397993 6398645 6399358 6400136 6401871 6403659 6404246 6406885 6407543 6409632 6410220 6416807 6416811 6416816 6416990 6418781 6419444 6421107 6424271 6432002

Changes incorporated in this version: 6393839 6390393 6390766 6400136 6397993 6403659 6404246 6401871 6375620 6406885 6407543 6409632 6397056 6410220 6416811 6416816 6416807 6416990 6374329 6419444 6399358 6421107 5073793 6418781 6432002 6424271 6398645

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 117832-06 (or greater)

Obsoleted by: 

Files included with this patch: 

<install_dir>/SUNWspro/prod/bin/CC
<install_dir>/SUNWspro/prod/bin/CCadmin
<install_dir>/SUNWspro/prod/bin/CClink
<install_dir>/SUNWspro/prod/bin/c++filt
<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
<install_dir>/SUNWspro/prod/include/CC/Cstd/deque.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/fstream
<install_dir>/SUNWspro/prod/include/CC/Cstd/fstream.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/iosfwd
<install_dir>/SUNWspro/prod/include/CC/Cstd/istream
<install_dir>/SUNWspro/prod/include/CC/Cstd/istream.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/limits
<install_dir>/SUNWspro/prod/include/CC/Cstd/list
<install_dir>/SUNWspro/prod/include/CC/Cstd/list.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/memory
<install_dir>/SUNWspro/prod/include/CC/Cstd/ostream
<install_dir>/SUNWspro/prod/include/CC/Cstd/rw/iotraits
<install_dir>/SUNWspro/prod/include/CC/Cstd/rw/tree
<install_dir>/SUNWspro/prod/include/CC/Cstd/rw/tree.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/sstream
<install_dir>/SUNWspro/prod/include/CC/Cstd/sstream.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/string
<install_dir>/SUNWspro/prod/include/CC/Cstd/string.cc
<install_dir>/SUNWspro/prod/include/CC/Cstd/vector
<install_dir>/SUNWspro/prod/include/CC/std/cerrno
<install_dir>/SUNWspro/prod/include/CC/std/cfloat
<install_dir>/SUNWspro/prod/include/CC/std/climits
<install_dir>/SUNWspro/prod/include/CC/std/cmath
<install_dir>/SUNWspro/prod/include/CC/std/cstdarg
<install_dir>/SUNWspro/prod/include/CC/std/cstddef
<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/_limits.c
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_limits.h
<install_dir>/SUNWspro/prod/include/CC/stlport4/stl/_num_put.c
<install_dir>/SUNWspro/prod/lib/libCrun.a
<install_dir>/SUNWspro/prod/lib/libCstd.a
<install_dir>/SUNWspro/prod/lib/libdemangle.a
<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/libdemangle.a
<install_dir>/SUNWspro/prod/lib/libp/libiostream.a
<install_dir>/SUNWspro/prod/lib/rw7/CC4/librwtool_dbg.a
<install_dir>/SUNWspro/prod/lib/rw7/librwtool_dbg.a
<install_dir>/SUNWspro/prod/lib/rw7/std/librwtool_dbg.a
<install_dir>/SUNWspro/prod/lib/rw7/std/v9/librwtool_dbg.a
<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/unsync_stdio.o
<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/stlport4/v9/unsync_stdio.o
<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/libdemangle.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/libdemangle.a
<install_dir>/SUNWspro/prod/lib/v9/libp/libiostream.a

Problem Description:

6398645 dbx pretty printing does not work for temp_temp_arg
6424271 No error reported for multiple class definitions
6432002 librwtool_dbg.a should be built with PIC
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
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
6397056 BOOST: incorrect ambiguity error on overloaded template functions
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
6419444 Friend declaration of template class
6399358 BOOST: Incorrect error on definition of specialized template class
6421107 BOOST: Unexpected influence of two typedefs
5073793 inlining incorrectly suppresses access error of private member variables
6418781 C++ 5.7 Patch 117830-06 fails with: "Error: static ... is not accessible from ..."
 
(from 117830-07)
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
6383471 BOOST: Template name w/o arguments in the nested friend template function definition
6386932 name lookup bug with overloaded function pointer as template argument
6388063 BOOST: Could not find a match for function with nested templates in the return value type
6363210 std::deque memory corruption
6354171 C++ openmp compiler bug
6393808 can't compile valid template code
6393170 Purify reporting "array bound writes" on deque template in libCstd
 
(from 117830-06)
4884025 requirement for accessibly copy constr not enforced
5067432 compiler allowd indirect implicit instantiation of abstract class
6261465 compiler generates wrong assembler syntax
6287458 BOOST: static template functions not allowed
6304762 BOOST: Need to allow references to static from within templates
6305792 member templates: compiler not able to find a match
6306660 CC driver: need option -features=tmplrefstatic
6316185 member templates and overload resolution
6330485 dbx's fix and cont fails to rebuild executable if compile line includes -Dxxx= a quoted string
6339613 template code not accepted
6348680 inaccessible copy constructor not diagnosed
6352241 fails to detect access to private class member
6363440 invalid complaint about overloading ambiguity
6364169 disappearing characters with variadic macros
6368786 Warning: std::stringstream::rdbuf hides the function std::ios::rdbuf
6372374 BOOST: Accessibility checking is done before overload resolution
6372964 Miss method declaration after friend member template
6378188 -instlib doesn't handle static template data members correctly
6378348 setting bitfield in a destructor yields wrong value reading from temp object
6378510 BOOST: Invalid type of template argument dependent return value
6379792 BOOST: Invalid ambiguity error on member template functions
6382424 stlport: Two different mangled names for the same function
6383168 stlport: missing entry in libstlport
 
(from 117830-05)
5059765 Template matching regression in C++ 5.5 patch 113817-05/08 and 5.6
5060845 Aachen: cannot compile template code
6244102 C++ compiler does not detect ambiguities
6253074 deststructor called twice
6288439 == args converted to bool
6317249 Compiler errors in evaluaing the default parameters with circular dependency in template
6319741 STLport header warning include/CC/stlport4/stl/_istream.h", line 118: ... The variable __lval ...
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/optimized
6326163 C++ exception propagates outside of destructor, while "stack unwinding"
6326214 "Assertion:   (../lnk/storage.cc, line 99)", when compiling template code
6329641 __rb_tree::operator=() does not store rhs comparison object in lhs
6332323 istrstream operator>>() modifies target even if input is invalid
6337151 stlport prints garbage value for LLONG_MIN
5042911 CODEGEN IR TREE SYNTAX ERROR with -xO[0-5]
6221536 typedef as member of class template in nested template instantiation
6249393 wrong code generated at -xO3
6257181 -xO3: bad code generation on a pointer-to-member to bool conversion
6309042 invalid access of private member from non-member function
6309790 testcase E6295110 failed during compilation with Fatal error in ccfe (core dumped)
6316019 Attempting to create an array of abstract class type should fail type deduction
6324725 Error: The operation "const char* - Y_136Y_151" is illegal; 1st fail: 20050826_mars
6328453 BOOST specialization bug
6335580 enum in template not recognized as integer constant expression
6339605 Problem with implicit type convertions
6345860 extra copy ctor in conditional ?: expression
6346186 Incorrect application behavior with -xO3
6347520 BOOST: problem with numeric_limits<long double> in stlport
6354037 template declaration and definition treated as different templates
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
6357018 Invalid cast zero constant to pointer to member in template function
6357166 incorrect overloading ambiguity
 
(from 117830-04)
6216629 OpenMP-C++: privatisation of variable conflicts w/ template initialization
6236581 Sun Studio 10 compile time error with c++ code
6238896 BOOST: invalid template constructor selected as best match
6250573 CC 5.5, 5.6, 5.7 incorrectly creates multiple instances of static template variables
6251271 Confusion among member functions of different template classes
6252515 specialized templates are not chosen
6264801 static member template name resolution problem
6265671 Invalid use of default template parameter not detected
6273972 -xarch=v9 hangs on a very large unused struct
6279144 BOOST: problem with template function parameter T[N] versus T*
6293518 Error: "Class2<T>::func(value_type&)" was previously declared <<same>>
6295079 Studio10 C++ failing to instantiate necessary template methods
6295110 Template-template parameters aren't considered in ordering partial specializations
6302092 Can't find nested typedef in case of partial specialization
6302735 Compiler error compiling code with two comma-separated deletes.
6302748 Ambiguous partial specialization in case of usage dependent type
6302749 Ambiguous partial specialization for A<T>, A<const T>, A<volatile T>
6304357 Type conversion ambiguity not detected
6304703 sort() hang in libCstd
6306995 Type conversion ambiguity not detected on deep derived class
6313010 BOOST: Assertion:   (../lnk/init.cc, line 1032)
6319635 void stream_rmutex::rmutex_init() should call pthread_mutexattr_destroy()
 
(from 117830-03)
6197465 specialized template friend declarations
6231884 Assertion: (../lnk/binaryexpr.cc, line 97)
6233892 Assertion:   (../lnk/init.cc, line 1004)
6241704 problem with array versus reference to array in template instantiation
6242459 gcount() does not return 0 when unformatted input fails
6242885 +w2 option caused C++ header warnings in include/CC/Cstd/./list.cc
6244128 C++ libCstd find_last_not_of wrong result
6244485 bogus error about adding default default function parameter values in template function
6245261 problem with nested template definitions
6245555 partial specialization confused with primary template
6248363 compiler doesn't accept default template parameters
6251279 type conversion operator not applied when literal integer is left operand
6253345 typo in error messages
6253944 Confusion between template and non-template class functions
6254494 iropt segmentation fault with C++ 5.7 patch 117830-01 and -xalias_level=compatible
6254578 openMP-C++: privatisation of variable in nested loop causes app to dump core
6257360 Unexpected error with constant in the default template type
6264564 C++ compiler does not detect incomplete type
6265052 undefined symbol for member templates
6266854 BOOST: improper selection of specializations
6269939 Cafe dumps core on a simple testcase
6273787 Assertion:   (../lnk/tmplmatchargs.cc, line 178) for member template specialization
6275166 Bitwise inclusive OR yields wrong result
6279462 C++ app aborts at runtime when compiled w/ 117830-02 or 117831-02 resp.
6283965 Compiler could not find a match for constructor
6286320 C++ Overloading Ambiguity
6286678 BOOST: Could not find a match for function when one function has substitution failure
 
(from 117830-02)
6216369 template function parameter default expressions incorrect
6226742 integer conversions not used to find template function
6227232 Wrong overload resolution for builtin operators in the presence of user-defined conversion-operator
6234584 incorrect ambiguity error in overloading with ptr-to-member and ptr-to-func
6235039 BOOST: wrong resolution function-style cast and constructor call
6238873 BOOST: elaborated type in cast inside function call
6241812 CC continues to process trigraphs in comments
6244956 Comma in the helper library path in the ld options -zld*
 
(from 117830-01)
4907751 Rethrowing an exception in a catch block causing SIGABRT
5025475 Identical namespace alias declarations in different scopes causes seg fault
5050758 vector<int> generates compile warning
5057840 ccfe: Segmentation Fault with DWARF output
5062954 "explicit" ignored when converting constructor needed
5070004 fstream opened with ios::app is very slow because of calls to lseek()
5077945 undefined symbol __init_task_common with -xipo -xopenmp -xO4
5088763 template member of template class not recognized in friend declaration
6176465 blitz template-template code fails
6182181 crash in demangler library (on symbol __2logN) (also incomplete stabs)
6186646 PERFLIB: Optimization gives inaccurate results.
6186857 C++ compiler should emit dependency info for make .KEEP_STATE purposes for templates, but doesn't
6189114 Assertion unexpected type in submangle_constant (../lnk/v2mangler.cc, line 1483)
6191581 missing "typename" on template parameter causes incorrect behavior
6193249 signed int template parameter becomes unsigned int for bitfields.
6195868 BOOST: Assertion: unhandled expression (../lnk/v2mangle r.cc, line 1585
6197269 DROPS: mismatched names on template function parameters don't compile
6199377 DROPS: Assertion: (../lnk/tmplmatchargs.cc, line 178)
6203110 ir_get_type_member(): unexpected nested type
6211394 __STATIC_CONSTRUCTOR() missing when using -xipo=2
6211974 BOOST: compiler loops while processing xml_grammar.cpp
6211983 BOOST: array specializations (T[] vs T[N])
6212003 BOOST: problems with "signals" templates
6212539 BOOST: partial specialization with template-template parameter
6214410 Signal 11: invalid SunIR Type generation
6216319 overloading of template conversion function
6217887 C++ front end needs to autoscope const variables
6217921 class object with no accessible default constructor should not be autoscoped
6221080 compiler will not work if install directory path contains a comma
6223839 Emit globalization prefix into stabs only with -g
6224793 compiler will not work with option -xsb if install directory path contains a comma
6231173 C++ version of C headers <c...> don't compile correctly

Patch Installation Instructions:
--------------------------------
For Solaris 7-10 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.

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

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

