#include using namespace boost::interprocess; class my_class { public: my_class() {} }; struct my_class_deleter { void operator()(my_class *p) {} }; typedef unique_ptr uptr; uptr create() { return uptr(); } int main() { uptr x; x = create(); return 0; }