The generic task holds and destroyes a task::impl but we want the derived class's destructor to be called when the task is destroyed otherwise, for example, member like abort_source subscription will not be destroyed (and auto-unlinked). Fixes #12183 Signed-off-by: Benny Halevy <bhalevy@scylladb.com> Closes #12266