Those errors, particularly the first one, are indicative of mixed run time / memory models in the compiled application where memory is allocated under one model and released under the other. 12 characters is probably where std::string switches from internal storage to allocated memory (it's a little less than 16 characters but I haven't checked the exact value lately). I'd check the run-time library settings in all of your libraries and make sure that they are consistent (under Project Properties, go to C/C++ | Code Generation | Runtime Library). At 06:55 AM 8/11/2005, stark wrote:
Hi
I'm trying to use the program_options header to satisfy my command line needs, and I have have run into the following quirk with boost version 1.32 and microsoft visual c++ 7.1 when trying to use 'cout<<' to output the program_options::options_description. Appartently there is a limit to the length of the program option name.
When not specifying short optoins names, the option name seems to be limited to 12 characters. greater than this and I get a debug assertion failure in dbgheap.c line 1132 expression: _CrtIsValidHeapPointer(pUserData) .
When specifying a short option name, the limit for the full name seems to be 6 characters. More than this results in a debug assertion falure in debug mode (msvc++ 7.1, file dbgdel.cpp, line 52) _BLOCK_TYPE_IS_VALID(pHead->nBlockUse). Is there something I can do to to fix this or work around the problem (besides restricting the length of my option names)? Is this a compiler specific problem? Something wrong with my settings?
many thanks,
Glen Stark
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users