diff options
| author | David Bolvansky <david.bolvansky@gmail.com> | 2018-05-09 18:57:17 +0000 |
|---|---|---|
| committer | David Bolvansky <david.bolvansky@gmail.com> | 2018-05-09 18:57:17 +0000 |
| commit | b89605db0133ac8231304da31f7b4ac9d68a1984 (patch) | |
| tree | e95af7a185652106fa033460111d40182c8e8a83 | |
| parent | 762d49880876eca14aa75a1bc893eba23ed50788 (diff) | |
| download | bcm5719-llvm-b89605db0133ac8231304da31f7b4ac9d68a1984.tar.gz bcm5719-llvm-b89605db0133ac8231304da31f7b4ac9d68a1984.zip | |
Allow copy elision in path concatenation
Summary:
Just port of libstdc++'s fix to libc++ fs: https://github.com/gcc-mirror/gcc/commit/e6ac4004fe49d785c63bf87aec4b095b5ce1d19f
Author of fix: Jonathan Wakely
Reviewers: EricWF, mclow.lists
Reviewed By: EricWF
Subscribers: smeenai, christof, cfe-commits, llvm-commits
Differential Revision: https://reviews.llvm.org/D46593
llvm-svn: 331910
| -rw-r--r-- | libcxx/include/experimental/filesystem | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libcxx/include/experimental/filesystem b/libcxx/include/experimental/filesystem index a8518249dd8..f29e23e1816 100644 --- a/libcxx/include/experimental/filesystem +++ b/libcxx/include/experimental/filesystem @@ -1140,7 +1140,9 @@ bool operator>=(const path& __lhs, const path& __rhs) _NOEXCEPT inline _LIBCPP_INLINE_VISIBILITY path operator/(const path& __lhs, const path& __rhs) { - return path(__lhs) /= __rhs; + path __result(__lhs); + __result /= __rhs; + return __result; } template <class _Source> |

