scope deduction with named<shared_ptr<T>>