id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 3008,Patch for Filesystem / gcc-4.4.0,Kevin Sopp,Beman Dawes,"The Filesystem library fails to compile with gcc-4.4.0: gcc.compile.c++ ../../../bin.v2/libs/filesystem/build/gcc-4.4.0/debug/operations.o In file included from ../../../libs/filesystem/src/operations.cpp:46: /usr/lib/gcc/i686-pc-linux-gnu/4.4.0/../../../../include/c++/4.4.0/tr1_impl/type_traits: In function ‘bool boost::filesystem::is_empty(const boost::filesystem::path&)’: /usr/lib/gcc/i686-pc-linux-gnu/4.4.0/../../../../include/c++/4.4.0/tr1_impl/type_traits:326: error: ‘template struct std::is_empty’ is not a function, ../../../boost/filesystem/operations.hpp:363: error: conflict with ‘template typename boost::enable_if, bool>::type boost::filesystem::is_empty(const Path&)’ ../../../boost/filesystem/operations.hpp:662: error: in call to ‘is_empty’ /usr/lib/gcc/i686-pc-linux-gnu/4.4.0/../../../../include/c++/4.4.0/tr1_impl/type_traits: In function ‘bool boost::filesystem::is_empty(const boost::filesystem::wpath&)’: /usr/lib/gcc/i686-pc-linux-gnu/4.4.0/../../../../include/c++/4.4.0/tr1_impl/type_traits:326: error: ‘template struct std::is_empty’ is not a function, ../../../boost/filesystem/operations.hpp:363: error: conflict with ‘template typename boost::enable_if, bool>::type boost::filesystem::is_empty(const Path&)’ ../../../boost/filesystem/operations.hpp:664: error: in call to ‘is_empty’ An easy solution is to fully qualify the function name as this patch does. It might be necessary to fully qualify other similar function calls as well (is_other, is_symlink, ...), as they might conflict in the same way with user defined class templates, I haven't investigated that though. I also had to modify test/path_test.cpp, the calls to next/prior were ambiguous with the new std::next/std::prior. Tests now pass successfully using gcc-4.4.0 in c++0x mode.",Patches,closed,,filesystem,Boost Development Trunk,Showstopper,fixed,,