Fix bug #18350. Add tests for tuples of all the smart pointers (except auto_ptr)