| 90 | }; |
| 91 | |
| 92 | DiamondAddrs diamond_addrs() { |
| 93 | auto sp = std::make_shared<Diamond>(); |
| 94 | return DiamondAddrs{reinterpret_cast<uintptr_t>(sp.get()), |
| 95 | reinterpret_cast<uintptr_t>(static_cast<VBase *>(sp.get())), |
| 96 | reinterpret_cast<uintptr_t>(static_cast<Left *>(sp.get())), |
| 97 | reinterpret_cast<uintptr_t>(static_cast<Right *>(sp.get()))}; |
| 98 | } |
| 99 | |
| 100 | // Animal-Cat-Tiger reproducer copied from PR #5796 |
| 101 | // clone_raw_ptr, clone_unique_ptr added under PR #5836 |