J'ai un problème pour compiler le code suivant sous VC8 beta 1 :
template <class T, class U>
struct B
{};
template <class T>
struct A : public B <T, typename T::subtype::subtype> // ligne 7
{
};
struct T1
{
typedef int subtype;
};
struct T2
{
typedef T1 subtype;
};
int main()
{
A<T2> a; // ligne 23
};
Si je remplace
struct A : public B <T, typename T::subtype::subtype>
par
struct A : public B <T, typename T::subtype>
Là, il veut bien compiler.
Est-ce un problème dans le code, ou bien dans le compilo ?
Pour info, les messages d'erreur :
TestTemplate.cpp(7) : error C2143: syntax error : missing ',' before
'T1::{ctor}'
TestTemplate.cpp(23) : see reference to class template instantiation
'A<T>' being compiled
with
[
T=T2
]
TestTemplate.cpp(7) : error C2976: 'B' : too few template arguments
TestTemplate.cpp(4) : see declaration of 'B'
TestTemplate.cpp(8) : error C2955: 'B' : use of class template requires
template argument list
TestTemplate.cpp(4) : see declaration of 'B'
TestTemplate.cpp(23) : error C2512: 'A<T>' : no appropriate default
constructor available
with
[
T=T2
]
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc Bourguet
Loïc Joly writes:
Est-ce un problème dans le code, ou bien dans le compilo ?
Ni como 4.3.3, ni icc 8.1, ni g++ 4.0 ne se plaignent et j'ai l'impression qu'ils ont raison.
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Loïc Joly <loic.actarus.joly@wanadoo.fr> writes:
Est-ce un problème dans le code, ou bien dans le compilo ?
Ni como 4.3.3, ni icc 8.1, ni g++ 4.0 ne se plaignent et
j'ai l'impression qu'ils ont raison.
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Est-ce un problème dans le code, ou bien dans le compilo ?
Ni como 4.3.3, ni icc 8.1, ni g++ 4.0 ne se plaignent et j'ai l'impression qu'ils ont raison.
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
Cyrille
Loïc Joly writes:
Est-ce un problème dans le code, ou bien dans le compilo ?
Ni como 4.3.3, ni icc 8.1, ni g++ 4.0 ne se plaignent
La beta 2 de VC8 compile aussi sans rechigner. Un bug de la beta 1 qui a été corrigé, sans doute.
j'ai l'impression qu'ils ont raison.
itou.
-- win the yes need the no to win against the no!
Loïc Joly <loic.actarus.joly@wanadoo.fr> writes:
Est-ce un problème dans le code, ou bien dans le compilo ?
Ni como 4.3.3, ni icc 8.1, ni g++ 4.0 ne se plaignent
La beta 2 de VC8 compile aussi sans rechigner. Un bug de la beta 1 qui a
été corrigé, sans doute.