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

Reply via email to