aboutsummaryrefslogtreecommitdiff
path: root/src/common/make_unique_for_overwrite.h
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2026-09-25 07:54:49 +0200
committercrueter <crueter@eden-emu.dev>2026-09-25 07:54:49 +0200
commitbebc19da3253f13ceb5abfe8560cdbdc32ea7d8a (patch)
tree3119f32d2873ee0d00ebde7208939045d1edb9dd /src/common/make_unique_for_overwrite.h
parent99bf8cf51afb7b367cb5003f11a797499c71d13c (diff)
[common] Use `std::make_unique_for_overwrite<T>` in ScratchBuffer, remove polyfill (#4432)
Original `make_unique_for_overwrite.h` is well defined acc. to standard https://en.cppreference.com/cpp/memory/unique_ptr/make_unique, but by now most libc++ supports the function, so no need for polyfill. Test that this didn't break anything (for example, Megaman game that has video at the start), or anything using VIC/IPC. Signed-off-by: lizzie <lizzie@eden-emu.dev> - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md) - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4432 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Diffstat (limited to 'src/common/make_unique_for_overwrite.h')
-rw-r--r--src/common/make_unique_for_overwrite.h27
1 files changed, 0 insertions, 27 deletions
diff --git a/src/common/make_unique_for_overwrite.h b/src/common/make_unique_for_overwrite.h
deleted file mode 100644
index 17f81bba4a..0000000000
--- a/src/common/make_unique_for_overwrite.h
+++ /dev/null
@@ -1,27 +0,0 @@
-// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include <memory>
-#include <type_traits>
-
-namespace Common {
-
-template <class T>
- requires(!std::is_array_v<T>)
-std::unique_ptr<T> make_unique_for_overwrite() {
- return std::unique_ptr<T>(new T);
-}
-
-template <class T>
- requires std::is_unbounded_array_v<T>
-std::unique_ptr<T> make_unique_for_overwrite(std::size_t n) {
- return std::unique_ptr<T>(new std::remove_extent_t<T>[n]);
-}
-
-template <class T, class... Args>
- requires std::is_bounded_array_v<T>
-void make_unique_for_overwrite(Args&&...) = delete;
-
-} // namespace Common