Work around GCC 5 bug: scylladb/seastar#338, scylladb/seastar#339
Work around GCC 5 bug: scylladb/seastar#338, scylladb/seastar#339

This fix prevents running into std::tuple construction failure when the constructor of a stored type expects a unique_ptr to the base class but a unique_ptr to a derived class is passed.
The original code compiles fine with GCC 6 and later so can be restored once Seastar migrates entirely to newer compilers.

Fixes #338

Signed-off-by: Vladimir Krivopalov <8393b6f566d8ebdefd4d2517fe16f44423413d9c@gmail.com>
Message-Id: <20170925044647.23450-1-8393b6f566d8ebdefd4d2517fe16f44423413d9c@gmail.com>

dreamsxin/seastar,cloudius-systems/seastar,dreamsxin/seastar,scylladb/seastar,scylladb/seastar,avikivity/seastar,avikivity/seastar,scylladb/seastar,cloudius-systems/seastar,dreamsxin/seastar,syuu1228/seastar,avikivity/seastar,cloudius-systems/seastar,syuu1228/seastar,syuu1228/seastar