struct base{ base() {} base(const base&) {} template <class Other> base(const Other&) {}};struct derived : base{};derived der1, der2(der1); // invokes template constuctor instead of copy constructor, what is wrong.I have checked it on GCC and Comeau compilers, and them works without this bug.This bug, for example, does not it possible to inherit boost::function class template properly.I seem, when compiler generates default copy constructor for derived class it pass into base constructor parameter of a derived type considering implicit upcasting. But I can be wrong.
Visual Studio/Silverlight/Tooling version
What category (if any) best represents this feedback?
Steps to reproduce
Product Language
Operating System
Operating System Language
Actual results
Expected results
Please wait...