
From: "Joshua" <animedemon@hotmail.com>
I'm just trying to include the files for the shared_ptr class and keep having problems. I was able to fix a problem with a duplicate definition of 'max' and 'min' (in suffix.hpp, it was conflicting with a file from the SGI STL implementation) I mainly just commented it out, if someone has a better plan on how to fix it I would love to know how to fix it. I have tried Boost 1.28 and 1.29 and still got the same set of errors. In addition to the 'max' and 'min' conflict I am getting these errors : e:\programming projects\c++ projects\boost_1_28_0\boost\checked_delete.hpp(24) : error C2061: syntax error : identifier 'T' e:\programming projects\c++ projects\boost_1_28_0\boost\checked_delete.hpp(24) : error C2061: syntax error : identifier 'T' e:\programming projects\c++ projects\boost_1_28_0\boost\checked_delete.hpp(30) : error C2061: syntax error : identifier 'T' e:\programming projects\c++ projects\boost_1_28_0\boost\checked_delete.hpp(30) : error C2061: syntax error : identifier 'T' e:\programming projects\c++ projects\boost_1_28_0\boost\detail\shared_count.hpp(184) : error C2504: 'counted_base' : base class undefined e:\programming projects\c++ projects\boost_1_28_0\boost\detail\shared_count.hpp(206) : see reference to class template instantiation 'detail::counted_base_impl<P,D>' being compiled e:\programming projects\c++ projects\boost_1_28_0\boost\detail\shared_count.hpp(253) : error C2061: syntax error : identifier 'Y' e:\programming projects\c++ projects\boost_1_28_0\boost\detail\shared_count.hpp(254) : error C2065: 'Y' : undeclared identifier e:\programming projects\c++ projects\boost_1_28_0\boost\detail\shared_count.hpp(390) : fatal error C1506: unrecoverable block scoping error
Looks like the SGI STL has the "helpful" #define typename somewhere. Fix this (MSVC usually doesn't need this hack) or change all "typename T" template parameters to "class T".