http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437
--- Comment #3 from Marc Glisse <glisse at gcc dot gnu.org> --- Less confusing testcase: #include <algorithm> #include <vector> using namespace std; int main() { const int num = 10000000; vector<int> v; v.reserve(num); for(int i=0;i!=num;++i) v.push_back(-i); sort(v.begin(), v.end()); }