Hi William, To increase exposure to this, you may consider also posting this to the Sun Studio C++ forum:
http://forums.sun.com/forum.jspa?forumID=850 There is also a sticky note about filing a bug/RFE: http://forums.sun.com/ann.jspa?annID=30 /kso William Fulton wrote: > The c++ compiler does not seem to understand using statements of a template > function in a base class as shown in the example below. I've got one > workaround commented out. Are there any other alternative ways of using the > 'using' statement that the compiler will understand, as my workaround is > rather verbose and prone to error? Is this a known bug and if not, where is > the best place to file the bug. I've tried versions 11, 12, and 12.1. > > William > > $ cat using_bug.cxx > #include <vector> > > class MyVector : private std::vector<double> { > public: > // template <class InputIterator> void assign(InputIterator first, > InputIterator last) { std::vector<double>::assign<InputIterator>(first, > last); } > using std::vector<double>::assign; > }; > > int main(int /*argc*/, char* /*argv*/ []) { > MyVector retval; > const double *begin = 0; > const double *end = 0; > retval.assign<const double *>(begin, end); > return 0; > } > > $ /sbcimp/run/tp/sun/SUNWspro/v12.1-20090630/bin/CC -c -mt -xlibmopt > -Bdynamic -xO5 -library=stlport4 +w -D_SOLARIS_ -Bdynamic using_bug.cxx > "using_bug.cxx", line 13: Error: std::vector<double>::assign<const > double*>(const double*, const double*) is not accessible from main(int, > char**). > 1 Error(s) detected. -- http://koberoi.com