#69 evc3/4/msvc8 fix for _STLP_DEBUG mode

closed
None
5
2007-12-23
2007-11-29
No

Here's a patch for STLport 5.1 tree to fix the bug in _STLP_DEBUG mode. This comes from a compiler bug in the ARM compiler that is described here:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=155924

Essentially the compiler generates wrong code when structs are passed by value and the copy ctor isn't called, but the struct data words are passed by registers (and if the struct is larger, the remaining words are passed on the stack). When iterators are passed by value in _STLP_DEBUG mode, a list with valid iterators of the container is managed, and the wrong (local variable) pointer is inserted in this list.

The patch is a bit ugly with the ifdefs, but it fixes all problems in _STLP_DEBUG mode. Unit tests were run to verify this.

Discussion

  • Francois Dumont

    Francois Dumont - 2007-12-06
    • assigned_to: nobody --> dums
     
  • Francois Dumont

    Francois Dumont - 2007-12-23

    Logged In: YES
    user_id=1096600
    Originator: NO

    Applied in SVN trunk, thanks.

     
  • Francois Dumont

    Francois Dumont - 2007-12-23
    • status: open --> closed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks