File remove_pessimizing_moves.patch of Package rttr

Index: rttr-0.9.6/src/rttr/detail/registration/bind_impl.h
===================================================================
--- rttr-0.9.6.orig/src/rttr/detail/registration/bind_impl.h
+++ rttr-0.9.6/src/rttr/detail/registration/bind_impl.h
@@ -289,7 +289,7 @@ class registration::bind<detail::ctor_fu
                                                    std::move(get_metadata(std::forward<Args>(args)...)),
                                                    std::move(get_default_args<type_list<Acc_Func>, function_type>(std::forward<Args>(args)...)),
                                                    std::move(create_param_infos<type_list<F>, function_type>(std::forward<Args>(args)...)));
-            return std::move(ctor);
+            return ctor;
         }
     public:
         bind(const std::shared_ptr<detail::registration_executer>& reg_exec, F func)
@@ -386,7 +386,7 @@ class registration::bind<detail::prop, C
                                                              detail::map_access_level_to_enum<acc_level>::value,
                                                              getter_policy, setter_policy,
                                                              Metadata_Count>>(name, type::get<Class_Type>(), acc, std::move(metadata_list));
-            return std::move(prop);
+            return prop;
         }
 
     public:
@@ -476,7 +476,7 @@ class registration::bind<detail::prop, C
                                                              getter_policy, setter_policy,
                                                              Metadata_Count>>(name, type::get<Class_Type>(),
                                                                               getter, setter, std::move(metadata_list));
-            return std::move(prop);
+            return prop;
         }
 
     public:
@@ -566,7 +566,7 @@ class registration::bind<detail::prop_re
                                                              getter_policy, default_setter_policy, Metadata_Count>>(name, type::get<Class_Type>(),
                                                                                                                     acc, std::move(metadata_list));
 
-            return std::move(prop);
+            return prop;
         }
 
     public:
@@ -659,7 +659,7 @@ class registration::bind<detail::meth, C
                                                                      std::move(get_metadata(std::forward<Args>(args)...)),
                                                                      std::move(get_default_args<type_list<Acc_Func>, function_type>(std::forward<Args>(args)...)),
                                                                      std::move(create_param_infos<type_list<F>, function_type>(std::forward<Args>(args)...)) );
-            return std::move(meth);
+            return meth;
         }
 
         template<typename Policy, std::size_t Metadata_Count, typename...TArgs, typename...Param_Args>
@@ -770,7 +770,7 @@ class registration::bind<detail::enum_,
                                                                                                 std::move(get_metadata(std::forward<Args>(args)...)));
 
 
-            return std::move(enum_wrapper);
+            return enum_wrapper;
         }
 
     public:
openSUSE Build Service is sponsored by