I tried to compile the smart pointer regression tests on HP-UX and found out that the compiler takes the 'advanced' version of get_deleter() template function (defined in shared_ptr.hpp) which is evidently beyond its limits (we use aCC, version HP ANSI C++ B3910B A.03.35). In case anyone is interested, I attached a 'patch' against shared_ptr.hpp, revision 1.52 - it just redirects the compiler to the already existing workaround version. /Jarda *** shared_ptr.hpp.orig Wed Feb 2 22:12:50 2005 --- shared_ptr.hpp Wed Feb 2 21:49:23 2005 *************** *** 442,448 **** // get_deleter (experimental) ! #if (defined(__GNUC__) && (__GNUC__ < 3)) || (defined(__EDG_VERSION__) && (__EDG_VERSION__ <= 238)) // g++ 2.9x doesn't allow static_cast<X const *>(void *) // apparently EDG 2.38 also doesn't accept it --- 442,450 ---- // get_deleter (experimental) ! #if (defined(__GNUC__) && (__GNUC__ < 3)) ||\ ! (defined(__EDG_VERSION__) && (__EDG_VERSION__ <= 238)) ||\ ! (defined(__HP_aCC) && (__HP_aCC <=33500)) // g++ 2.9x doesn't allow static_cast<X const *>(void *) // apparently EDG 2.38 also doesn't accept it