diff options
author | Marcin Kolny <marcin.kolny@gmail.com> | 2016-01-18 23:29:47 +0100 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2016-03-01 22:30:50 +0100 |
commit | a52ca174a5f609ce7b7cdbf0b694a03433c8b2b1 (patch) | |
tree | 535b48c32adaace259b91447236fcf861d2816d4 | |
parent | b3093fb058db5c40a91730bc32076b2f6318d0d2 (diff) | |
download | sigc++-a52ca174a5f609ce7b7cdbf0b694a03433c8b2b1.tar.gz |
partial build fix
-rw-r--r-- | sigc++/adaptors/bind.h | 3 | ||||
-rw-r--r-- | sigc++/tuple_transform_each.h | 4 |
2 files changed, 3 insertions, 4 deletions
diff --git a/sigc++/adaptors/bind.h b/sigc++/adaptors/bind.h index d2d66fc..b671021 100644 --- a/sigc++/adaptors/bind.h +++ b/sigc++/adaptors/bind.h @@ -94,8 +94,7 @@ struct TransformEachInvoker { //We take T_element as non-const because invoke() is not const. static - decltype(auto) - transform(T_element& element) { + auto transform(T_element& element) -> decltype(element.invoke())& { return element.invoke(); } }; diff --git a/sigc++/tuple_transform_each.h b/sigc++/tuple_transform_each.h index d64fe85..a55a485 100644 --- a/sigc++/tuple_transform_each.h +++ b/sigc++/tuple_transform_each.h @@ -99,7 +99,7 @@ struct tuple_transform_each_impl using element_type = typename std::tuple_element<index, T_current>::type; auto& from = std::get<index>(t_original); - const auto element = T_transformer<element_type>::transform(from); + const auto& element = T_transformer<element_type>::transform(from); const auto t_element = std::make_tuple(element); const auto t_start = tuple_start<index>(t); @@ -131,7 +131,7 @@ struct tuple_transform_each_impl<T_transformer, 0> constexpr std::size_t index = 0; using element_type = typename std::tuple_element<index, T_original>::type; - const auto element = T_transformer<element_type>::transform(std::get<index>(t_original)); + const auto& element = T_transformer<element_type>::transform(std::get<index>(t_original)); const auto tuple_element = std::make_tuple(element); const auto tuple_rest = tuple_cdr(t); return std::tuple_cat(tuple_element, tuple_rest); |