
I'm working on a program with which we are using the boost::program_options module and ran into an odd assertion in the xstring library used by said module. The program was compiled using VC++ 8 and the Platform SDK Windows Server 2003 SP1. The assertion occured when the total string length (spaces + options + arg defaults + description) was over about 80 characters and was not formatted with a \n or the like. The assertion was xstring:173 ("_Myptr + _Off <=(((_Mystring *)this->_Mycont)->_Myptr()+((_Mystring *)->_Mycont)->_Mysize)&&+_Off >= ((_Mystring *)this->_Mycont)->_Myptr()", 0). and a call stack on one of the programs this occurred on can be seen below. This has occurred for a number of applications we have that all have the same condition. Thank you in advance for your assitance
& os={...}, std::basic_string<char,std::char_traits<char>,std::allocator<char> >
IMNManager.exe!std::_String_const_iterator<char,std::char_traits<char>,std:: allocator<char> >::operator+=(int _Off=-1) Line 171 + 0x78 bytes C++ IMNManager.exe!std::_String_const_iterator<char,std::char_traits<char>,std:: allocator<char> >::operator-=(int _Off=1) Line 188 C++ IMNManager.exe!std::_String_const_iterator<char,std::char_traits<char>,std:: allocator<char> >::operator-(int _Off=1) Line 193 + 0xc bytes C++ IMNManager.exe!boost::program_options::`anonymous namespace'::format_paragraph(std::basic_ostream<char,std::char_traits<char> par="Used to specify the debugged namespaces", unsigned int first_column_width=41, unsigned int line_length=79) Line 381 + 0x28 bytes C++ IMNManager.exe!boost::program_options::`anonymous namespace'::format_description(std::basic_ostream<char,std::char_traits<char
& os={...}, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & desc="Used to specify the debugged namespaces", unsigned int first_column_width=41, unsigned int line_length=79) Line 453 + 0x34 bytes C++ IMNManager.exe!boost::program_options::`anonymous namespace'::format_one(std::basic_ostream<char,std::char_traits<char> > & os={...}, const boost::program_options::option_description & opt={...}, unsigned int first_column_width=41, unsigned int line_length=80) Line 489 + 0x1a bytes C++
IMNManager.exe!boost::program_options::options_description::print(std::basic _ostream<char,std::char_traits<char> > & os={...}) Line 522 + 0x1e bytes C++ IMNManager.exe!boost::program_options::operator<<(std::basic_ostream<char,st d::char_traits<char> > & os={...}, const boost::program_options::options_description & desc={...}) Line 289 C++ Paul Ryan SAIC