AIX, Solaris 2.8 excess errors fails

David Edelsohn dje@watson.ibm.com
Wed Feb 20 19:30:00 GMT 2002


	I never said libstdc++ was broken with respect to COMDAT.  I am
extremely sorry if anyone interpreted my comments that way.

	The part of the patch I question is not an instantiation of
templates in the library, but instantiation of static template members in
the testcases themselves.  This is not how most users will write code
using the library.

+ // Explicitly instantiate for systems with no COMDAT or weak support.
+ template 
+   std::basic_string<unsigned short>::size_type 
+   std::basic_string<unsigned short>::_Rep::_S_max_size;
+ 
+ template 
+   unsigned short
+   std::basic_string<unsigned short>::_Rep::_S_terminal;

and

+ // Explicitly instantiate for systems with no COMDAT or weak support.
+ template 
+   std::basic_string< A<B> >::size_type 
+   std::basic_string< A<B> >::_Rep::_S_max_size;
+ 
+ template 
+   A<B>
+   std::basic_string< A<B> >::_Rep::_S_terminal;

addition to the testcases themselves are the elements which concern me.

	This is functionality the library assumes exists on all targets.
I appreciated the testcases probing target platform functionality which
the library expected in order to operate correctly.

David



More information about the Libstdc++ mailing list