Hello,

Is it possible to use lockfree::queue with shared_ptr as element types?

For instance,

---[code]---
#include <boost/lockfree/queue.hpp>
#include <boost/smart_ptr.hpp>

class foobar
{
};

int main()
{
    typedef boost::shared_ptr<foobar> element_type;
    typedef boost::lockfree::queue<element_type> queue_type;

    queue_type queue;
}
---[/code]---

If I compile the above code I get the following error:

---[error]---
boost_lockfree_mwmr_queue.cpp:13:13:   required from here
~/projects/svn/boost-trunk/boost/lockfree/queue.hpp:81:5: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’
~/projects/svn/boost-trunk/boost/lockfree/queue.hpp:85:5: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’
---[/error]---

If I use "foobar" or "foobar*" as element_type, it works.

I'm using
- GCC 4.7.2 with the following options enabled: -Wextra -Wall -ansi -pedantic
- boost SVN trunk version

Thank you very much for helping.

Best,

-- Marco