I don't think this is appropriate. Just wrap a std::list member instead of deriving from it.