From: Phil Bouchard (philippe_at_[hidden])
Date: 2008-04-29 02:00:21
"Steven Watanabe" <watanabesj_at_[hidden]> wrote in message
> The problem is that you are manipulating the reference count
> of a block after it is freed. The first node is deleted. The second
> node is then deleted which decrements the reference count of the
> first block which is already deleted.
Thanks for pointing this out. I dismissed this issue because it this
situation the "back" pointer doesn't refer to the first element in the set
list after several insertions and this creates a series of problems which
may have a solution but better left aside for this type of problem.
I added some code in shifted_ptr::release() which will make it disregard any
reference count when the destructor is called upon a set deletion. Now
everything works fine.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk