Bonjour tout le monde,
Le tr1 de GCC et boost::filesystem ne semblent pas faire bon ménage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3test: main.cpp g++ -o test main.cpp -W -Wall -ansi -pedantic -std=c++0xExtrait du header incriminé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
Ma version de GCC est la 4.4.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10// VC++ 7.0 and earlier has a serious namespace bug that causes a clash // between boost::filesystem::is_empty and the unrelated type trait // boost::is_empty. # if !defined( BOOST_MSVC ) || BOOST_MSVC > 1300 BOOST_FS_FUNC(bool) is_empty( const Path & ph ) //<-- l'erreur est ici # else BOOST_FS_FUNC(bool) _is_empty( const Path & ph ) # endif
À votre avis, de qui vient l'erreur (et à qui faire un rapport de bug) ? Boost ou GCC ?
C'est tout de même étrange d'avoir un conflit entre deux fonctions de deux namespaces différents. D'autant plus étrange que Visual C++ 7.0 et inférieur aurait un problème similaire…
Quelqu'un avec un compilo différent peut-il me dire s'il a le même problème ?
Remarque : J'ai essayé de préfixer le nom de la fonction par un underscore, comme dans le #else, mais ce n'est pas franchement mieux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7

 

 
		
		 
         
 

 
			
			

 
  
 
 
			 
   


 Conflit entre boost::filesystem et GCC
 Conflit entre boost::filesystem et GCC
				 Répondre avec citation
  Répondre avec citation
Partager