diff --git a/src/pugixml.hpp b/src/pugixml.hpp index b01da4f..efcc471 100644 --- a/src/pugixml.hpp +++ b/src/pugixml.hpp @@ -41,11 +41,19 @@ namespace std #ifdef __SUNPRO_CC // Sun C++ compiler has a bug which forces template argument names in forward declarations to be the same as in actual definitions - template class allocator; - template struct char_traits; - template class basic_istream; - template class basic_ostream; - template class basic_string; +# ifndef _STLPORT_VERSION + template class allocator; + template struct char_traits; + template class basic_istream; + template class basic_ostream; + template class basic_string; +# else + template class allocator; + template struct char_traits; + template class basic_istream; + template class basic_ostream; + template class basic_string; +# endif #else // Borland C++ compiler has a bug which forces template argument names in forward declarations to be the same as in actual definitions template class allocator;