[OpenSTA-devel] Re: Platform SDK
Brought to you by:
dansut
|
From: Daniel S. <da...@Op...> - 2006-01-16 03:22:07
|
Pete Wickersham wrote: > Ok, I'm in the midst of building CVS HEAD with no STLPort, VC 6 SP6, > Platform SDK Feb 2003 edition, everything else standard. > > I'm running into some compilation errors with some of the STL > classes. Do you have these resolved already? If so, I'll wait for > any of your checkins. I am building totally cleanly with no STLPort, but I am currently using the later/current PSDK but I don't think that should make any difference. THe only thing that is holding me back in commiting my changes to support building without the STLPort is a bit of extra testing - specifically making sure that the changes will still work with the existing recommended build environment... this wouldn't be a real problem except my alternate build machine has "issues" at the moment. The other thing that I have found useful is that I'm now building with BD Software's STLFilt: http://www.bdsoft.com/tools/stlfilt.html I don't know if this is hiding any errors - I'll try a build with it turned off and report back if there is anything tomorrow. To help you get on quickly, I think this patch describes the source changes that are required to build cleanly without the STLPort: -------------- StartPatch -------------- --- C:\OpenSTA\sf-rw-src\ostaw32\src\Architecture\CyrToolsOS\ctime.hpp Mon May 17 11:34:44 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\Architecture\CyrToolsOS\ctime.hpp Tue Jun 21 16:15:47 2005 @@ -42,7 +42,7 @@ #include <string> using std::string; #ifdef WIN32 -//#include <windows.h> +#include <windows.h> #endif --- C:\OpenSTA\sf-rw-src\ostaw32\src\Architecture\TestProcess\Common\Atvf\TRecCreator.h Mon May 17 11:34:50 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\Architecture\TestProcess\Common\Atvf\TRecCreator.h Fri Jun 24 11:58:31 2005 @@ -32,7 +32,9 @@ **/ #include <string> +#pragma warning(disable:4800) #include <map> +#pragma warning(default:4800) #ifdef unix #elif defined (__VMS) #elif defined (WIN32) --- C:\OpenSTA\sf-rw-src\ostaw32\src\Architecture\TestProcess\Common\Base\CECTofTxt.cpp Mon May 17 11:34:51 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\Architecture\TestProcess\Common\Base\CECTofTxt.cpp Wed Jun 22 10:31:45 2005 @@ -572,7 +572,7 @@ // Do the 'ltrim' and return function value. string::size_type iOff = ltrimstr.find_first_not_of(" \t\r\n"); if(iOff == string::npos) - resstrP->clear(); + resstrP->erase(); else *resstrP = ltrimstr.substr(iOff); return true; @@ -664,7 +664,7 @@ // Do the 'rtrim' and return function value. string::size_type iOff = rtrimstr.find_last_not_of(" \t\r\n"); if(iOff == string::npos) - resstrP->clear(); + resstrP->erase(); else *resstrP = rtrimstr.substr(0, iOff+1); return true; --- C:\OpenSTA\sf-rw-src\ostaw32\src\Architecture\TestProcess\Common\Base\TContext.h Mon May 17 11:34:51 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\Architecture\TestProcess\Common\Base\TContext.h Fri Jun 24 14:10:33 2005 @@ -38,7 +38,9 @@ #endif #include <string> +#pragma warning(disable:4800) #include <map> +#pragma warning(default:4800) #include <set> #include <stack> #include <list> --- C:\OpenSTA\sf-rw-src\ostaw32\src\Architecture\xmlparser\XPath.inl Mon May 17 11:35:14 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\Architecture\xmlparser\XPath.inl Thu Jun 23 15:28:36 2005 @@ -2643,7 +2643,10 @@ if(val2.m_eType == TYPE_NODESET) { // val and val2 are valid. Perform the union. - val.m_nodeSet.insert(val2.m_nodeSet.begin(), val2.m_nodeSet.end()); + while(!val2.m_nodeSet.empty()) { + val.m_nodeSet.insert(*(val2.m_nodeSet.begin())); + val2.m_nodeSet.erase(val2.m_nodeSet.begin()); + } } else val.Clear(); @@ -2706,7 +2709,10 @@ { DocumentOrder order(DocumentOrder::forward); OrderedNodeSet tmpSet(order); - tmpSet.insert(val.m_nodeSet.begin(), val.m_nodeSet.end()); + while(!val.m_nodeSet.empty()) { + tmpSet.insert(*(val.m_nodeSet.begin())); + val.m_nodeSet.erase(val.m_nodeSet.begin()); + } tmpSet.swap(val.m_nodeSet); } --- C:\OpenSTA\sf-rw-src\ostaw32\src\HTTP\HTMLParser\TagParsing.hpp Tue May 18 11:41:22 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\HTTP\HTMLParser\TagParsing.hpp Fri Jun 24 12:18:28 2005 @@ -35,7 +35,9 @@ # pragma warning (disable: 4786) #endif +#pragma warning(disable:4800) #include<map> +#pragma warning(default:4800) // This enum contains all the tag types. enum Tags --- C:\OpenSTA\sf-rw-src\ostaw32\src\HTTP\UI\iecacheman\IECache.h Mon May 17 11:35:36 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\HTTP\UI\iecacheman\IECache.h Fri Jun 24 12:24:25 2005 @@ -37,7 +37,9 @@ #endif // _MSC_VER > 1000 #pragma warning (disable: 4786) +#pragma warning(disable:4800) #include <map> +#pragma warning(default:4800) #include <string> #include <list> --- C:\OpenSTA\sf-rw-src\ostaw32\src\HTTP\UI\Modeller\EndTimerDlg.cpp Mon May 17 11:35:34 2004 +++ C:\OpenSTA\ostaw32-nostlp\src\HTTP\UI\Modeller\EndTimerDlg.cpp Wed Jun 22 11:21:08 2005 @@ -45,7 +45,7 @@ void CEndTimerDlg::FillList() { int index = 0; - for (stringStlSet::iterator itr = m_timerSet.begin(); itr != m_timerSet.end(); ++itr, ++index) + for (stringStlSet::const_iterator itr = m_timerSet.begin(); itr != m_timerSet.end(); ++itr, ++index) { m_TimerList.InsertString(index, (*itr)); } --------------- End Patch --------------- Cheers /dan -- Daniel Sutcliffe <Da...@Op...> OpenSTA part-time caretaker - http://OpenSTA.org/ |