Следующий код в MSVC 2008 компилится:
template <typename S, typename T>
class someclass : public non_existent_class
{
T operator() (S s) const {
return T(s);
}
};
Вопрос — а должен? Ни один другой компилятор из проверенных (GCC 4.5.0, Intel, Online Comeau, VS 2005) не скомпилировал с вполне логичной ошибкой об отсутствии "non_existent_class". Возможно, в C++0x есть что-то, объясняющее данное поведение?
(x-posted on
stackoverflow.com)
19.03.11 16:46: Перенесено модератором из 'C/C++. Прикладные вопросы' — Odi$$ey