From 371353aa83f63de9239c4c754f4f24d52f676844 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Wed, 29 May 2024 18:54:24 -0500 Subject: user/rttr: Bring upstream patches in for newer C++ Also, change the warnings we disable to ensure it builds with GCC 13. Also, replaces '-Werror' with '-Wextra' for more verbosity without causing the build to fail. Closes: #1196 --- user/rttr/no-pessimising-moves.patch | 65 ++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 user/rttr/no-pessimising-moves.patch (limited to 'user/rttr/no-pessimising-moves.patch') diff --git a/user/rttr/no-pessimising-moves.patch b/user/rttr/no-pessimising-moves.patch new file mode 100644 index 000000000..7ca6655fc --- /dev/null +++ b/user/rttr/no-pessimising-moves.patch @@ -0,0 +1,65 @@ +From ea1e41f02ca1e32a9bbb731fec05708101c0e03f Mon Sep 17 00:00:00 2001 +From: Andrey Davydov +Date: Mon, 6 Jan 2020 15:11:47 +0300 +Subject: [PATCH] fix pessimizing moves + +--- + src/rttr/detail/registration/bind_impl.h | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/rttr/detail/registration/bind_impl.h b/src/rttr/detail/registration/bind_impl.h +index 7bb63278..606398a4 100644 +--- a/src/rttr/detail/registration/bind_impl.h ++++ b/src/rttr/detail/registration/bind_impl.h +@@ -295,7 +295,7 @@ class registration::bind(args)...)), + std::move(get_default_args, function_type>(std::forward(args)...)), + std::move(create_param_infos, function_type>(std::forward(args)...))); +- return std::move(ctor); ++ return ctor; + } + public: + bind(const std::shared_ptr& reg_exec, F func) +@@ -397,6 +397,6 @@ class registration::bind : + getter_policy, setter_policy, + Metadata_Count>>(name, type::get(), acc, std::move(metadata_list)); +- return std::move(prop); ++ return prop; + } + + public: +@@ -491,6 +491,6 @@ class registration::bind>(name, type::get(), + getter, setter, std::move(metadata_list)); +- return std::move(prop); ++ return prop; + } + + public: +@@ -583,7 +583,7 @@ class registration::bind + >(name, acc, std::move(metadata_list)); + +- return std::move(prop); ++ return prop; + } + + public: +@@ -678,7 +678,7 @@ class registration::bind : + std::move(get_metadata(std::forward(args)...)), + std::move(get_default_args, function_type>(std::forward(args)...)), + std::move(create_param_infos, function_type>(std::forward(args)...)) ); +- return std::move(meth); ++ return meth; + } + + template +@@ -791,7 +791,7 @@ class registration::bind : public registra + std::move(get_metadata(std::forward(args)...))); + + +- return std::move(enum_wrapper); ++ return enum_wrapper; + } + + public: -- cgit v1.2.3-70-g09d2