|
Boost Users : |
Subject: [Boost-users] Template method applied to template object
From: Adrien Chauve (adrien.chauve_at_[hidden])
Date: 2009-03-03 12:45:28
Hi all,
The following lines don't compile with g++ (4.3.2) whereas it's ok with msvc
9.
struct Foo
{
template<class T>
unsigned int foo() const
{
return sizeof(T);
}
};
struct OtherFoo
{
template<class T>
void f(const T& t)
{
t.foo<double>();
}
};
int main()
{
Foo foo;
OtherFoo other;
other.f<Foo>(foo);
return 0;
}
The ouput is :
test.cpp: In member function void OtherFoo::f(const T&):
test.cpp:17: erreur: expected primary-expression before double
test.cpp:17: erreur: expected `;' before double
Does anybody know a workaround ?
Thanks,
Adrien
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net