Bonjour à tous,
J'utilise Boost 1.44, et là je tombe sur un truc marrant (ou pas):
Ca compile pas sous gcc 4.4.3 : 47: error: macro "BOOST_FOREACH" passed 3 arguments, but takes just 2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 std::set<std::pair<int, int> > my_set; for (auto iter = m_generators.begin(); iter != m_generators.end(); ++iter) { const std::vector<std::pair<int, int> >& t = (*iter)->GetTimeStamps(); BOOST_FOREACH(const std::pair<int, int>& p, t) { my_set.insert(p); } }
Alors que
ça compile !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 std::set<std::pair<int, int> > my_set; for (auto iter = m_generators.begin(); iter != m_generators.end(); ++iter) { const std::vector<std::pair<int, int> >& t = (*iter)->GetTimeStamps(); typedef std::pair<int,int> pair; BOOST_FOREACH(const pair& p, t) { my_set.insert(p); } }
J'ai l'impression qu'il prend la virgule de la pair dans le parseur...
Bug, ou bien y'a un truc qui m'échappe ?![]()
Partager