GCC "using" bug?
От: comer США http://getboost.codeplex.com/
Дата: 22.02.03 17:47
Оценка:
Пытаюсь использовать using для шаблонной функции.
Такой вот пример:
struct A
{
    template<class R>
    void F(R)
    { // строка 5
    }
};

struct B: private A
{
    using A::F; // строка 11
};

int main()
{
    B b;
    b.F(3); // строка 17
    return 0;
}


VC 6 и Comeau скомпилировали нормально. А вот gcc version 3.2 20020818 (prerelease), выдал сообщение:

...: In function `int main()':
...:5: `void A::F(R) [with R = int]' is inaccessible
...:17: within this context


Самое печальное то что ошибку он выдал в строке 17. А не в строке 11, что было бы логичнго если GCC не может использовать using директиву для шаблонных функций , заметьте, других функции F больше нет в классе A.
getboost.codeplex.com
citylizard.codeplex.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.