It seems there's a duplicate loop in btSoftBodySolve_CPU.cpp, just after about line 420.
This loop:
Code: Select all
for( int collisionObject = 0; collisionObject < m_collisionObjectDetailsCopy.size(); ++collisionObject )
{
CollisionShapeDescription &shapeDescription( m_collisionObjectDetails[collisionObject] );
}
The copy constructor invoked here appears to be the default created by the compiler (the class doesn't have anything else that I can see). I found it not by reading through, but the compiler gave a warning that the symbol was unused. Since Bullet compiles while generating very few warnings in the default XCode settings, this (and a couple other dangling ints and floats that are unused) stand out from an otherwise very clean compilation. This is the only one inside a loop....and it probably optimizes out of the build anyway.