Support for VS2005?

Started by
12 comments, last by WitchLord 18 years, 2 months ago
After installing Microsoft Visual C++ 2005 Express edition, I've finally been able to reproduce the bug. It's strange that the problem doesn't show on MSVC6, but I guess Microsoft changed the implementation of the std::string object.

After some preliminary testing it seems the BC_ChkNullV has a bug in it. It shouldn't check the value that 'a' points to, but the value of 'a' itself.

case BC_ChkNullV:{  // TODO: Pointer size  asDWORD *a = *(asDWORD**)(l_fp - SWORDARG0(l_bc));  if( a == 0 )  {


Making this change makes the tutorial work perfectly. However it seems to be breaking some other things, that I'm studying right this moment.

I'll be back with more info when I can.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Advertisement
the MS STL no longer allows you to treat an iterator as you would a pointer to an object i believe
Sure it does. If the iterator happens to be a pointer. There is nothing in the standard that says std::string::iterator is a char*.
Did I miss something? Who mentioned iterators?

Anyway, I've confirmed that the above fix is correct. However, by installing VS2005 I also discovered various other bugs in the library related to memory management. It seems that Microsoft improved the debug memory manager to more easily catch writes to already deallocated memory blocks.

I've fixed most of them, but I'll do some more testing in order to verify if there are more bugs hiding in the code.

Hopefully I'll be able to release 2.5.0b (and eventually 2.4.1e) later this week with all the bugs fixed.

Regards,
Andreas

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

This topic is closed to new replies.

Advertisement