File: Foundation\include\Poco\SharedPtr.h
template <typename T> SharedPtr<T, ReferenceCounter, ReleaseArrayPolicy<T>> makeSharedArray(std::size_t size) { return new SharedPtr<T, ReferenceCounter, ReleaseArrayPolicy<T>>(new T[size]); }
The return value is SharedPtr* , may by not right.