summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2020-12-06 02:13:19 +0100
committerLéo Lam <leo@leolam.fr>2020-12-06 02:34:47 +0100
commitf99debc7efcf248838aa133c39c599bb76241bca (patch)
treeb407515a775fc7e4f88dc3ff8c1c162446462f57
parent49097ad9e6dbe83762d6f0701af0039a5edd6af0 (diff)
Enable -Wdeprecated warnings and fix them
-rw-r--r--CMakeLists.txt2
m---------lib/sead0
-rw-r--r--src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h11
-rw-r--r--src/KingSystem/Resource/resLoadRequest.h9
4 files changed, 21 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index af74dbfa..15393254 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -15,7 +15,7 @@ set(CMAKE_CXX_EXTENSIONS OFF)
add_executable(uking)
target_include_directories(uking PRIVATE src)
target_compile_options(uking PRIVATE -fno-rtti -fno-exceptions)
-target_compile_options(uking PRIVATE -Wall -Wextra)
+target_compile_options(uking PRIVATE -Wall -Wextra -Wdeprecated)
target_compile_options(uking PRIVATE -fno-strict-aliasing)
target_compile_options(uking PRIVATE -Wno-invalid-offsetof)
diff --git a/lib/sead b/lib/sead
-Subproject d7bf1a5232dd68886126ae9ca68698a5e07a019
+Subproject 7bc4c0907158f9be382017c03b339e7d33feac5
diff --git a/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h b/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h
index 7a58a5cf..9bc70714 100644
--- a/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h
+++ b/src/KingSystem/ActorSystem/actActorLinkConstDataAccess.h
@@ -17,6 +17,17 @@ public:
/// Destructor that automatically releases any acquired BaseProc.
~ActorLinkConstDataAccess();
+ ActorLinkConstDataAccess(const ActorLinkConstDataAccess&) = delete;
+ ActorLinkConstDataAccess& operator=(const ActorLinkConstDataAccess&) = delete;
+ ActorLinkConstDataAccess(ActorLinkConstDataAccess&& other) noexcept {
+ *this = std::move(other);
+ }
+ ActorLinkConstDataAccess& operator=(ActorLinkConstDataAccess&& other) noexcept {
+ std::swap(mAcquired, other.mAcquired);
+ std::swap(mProc, other.mProc);
+ return *this;
+ }
+
/// Acquire a BaseProc. This increments its reference count.
/// If an actor was already acquired, it is released.
bool acquire(BaseProc* proc);
diff --git a/src/KingSystem/Resource/resLoadRequest.h b/src/KingSystem/Resource/resLoadRequest.h
index e7384aa0..048bc306 100644
--- a/src/KingSystem/Resource/resLoadRequest.h
+++ b/src/KingSystem/Resource/resLoadRequest.h
@@ -21,6 +21,9 @@ class Handle;
class ILoadRequest {
SEAD_RTTI_BASE(ILoadRequest)
public:
+ ILoadRequest() = default;
+ ILoadRequest(const ILoadRequest&) = default;
+ ILoadRequest& operator=(const ILoadRequest&) = default;
virtual ~ILoadRequest();
bool _8 = false;
@@ -34,6 +37,8 @@ class LoadRequest : public ILoadRequest {
public:
LoadRequest();
LoadRequest(s32 load_data_alignment, u32 arg_c, bool arg_20);
+ LoadRequest(const LoadRequest&) = default;
+ LoadRequest& operator=(const LoadRequest&) = default;
~LoadRequest() override = default;
bool _20 = false;
@@ -64,6 +69,8 @@ class SimpleLoadRequest : public ILoadRequest {
public:
SimpleLoadRequest();
~SimpleLoadRequest() override = default;
+ SimpleLoadRequest(const SimpleLoadRequest&) = default;
+ SimpleLoadRequest& operator=(const SimpleLoadRequest&) = default;
sead::SafeString mPath;
void* _30 = nullptr;
@@ -75,6 +82,8 @@ class SimplePackedLoadRequest : public ILoadRequest {
public:
SimplePackedLoadRequest();
~SimplePackedLoadRequest() override = default;
+ SimplePackedLoadRequest(const SimplePackedLoadRequest&) = default;
+ SimplePackedLoadRequest& operator=(const SimplePackedLoadRequest&) = default;
Handle* mPack = nullptr;
void* _30 = nullptr;