17 lines
432 B
C++
17 lines
432 B
C++
#include <memory>
|
|
|
|
struct Large {
|
|
size_t x;
|
|
char filler[512 - sizeof(size_t)] = {};
|
|
|
|
Large(size_t x) : x(x) {}
|
|
};
|
|
|
|
void* forward_raw(void* p);
|
|
|
|
std::unique_ptr<size_t> forward_unique(std::unique_ptr<size_t>&& p);
|
|
std::shared_ptr<size_t> forward_shared(std::shared_ptr<size_t>&& p);
|
|
|
|
std::unique_ptr<Large> forward_unique_large(std::unique_ptr<Large>&& p);
|
|
std::shared_ptr<Large> forward_shared_large(std::shared_ptr<Large>&& p);
|