title: What can cause "corrupted double-linked list" error?
body: <p>I am having problems with a fairly complex code. I wasn't able to produce a short snippet that reproduces the error, so I'll try to explain the problem in words.</p>
  
  <p>The code crashes randomly with the error</p>
  
  <pre><code>*** glibc detected *** gravtree: corrupted double-linked list: 0x000000001aa0fc50 ***
  </code></pre>
  
  <p>Debugging showed that it comes from the line where the codes frees an object. There seems to be nothing wrong with the object. It exists, and I can access it's data at the time the error occurs. The object's destructor is trivial and doesn't do anything. </p>
  
  <p>So, I'm kind of stuck. In what kind of circumstances do you expect 'free' to fail?</p>