Don't neglect to "return *this".


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@165860 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/chrono b/include/chrono
index 3900d59..508c1f3 100644
--- a/include/chrono
+++ b/include/chrono
@@ -728,8 +728,8 @@
 
     // arithmetic
 
-    _LIBCPP_INLINE_VISIBILITY time_point& operator+=(const duration& __d) {__d_ += __d;}
-    _LIBCPP_INLINE_VISIBILITY time_point& operator-=(const duration& __d) {__d_ -= __d;}
+	_LIBCPP_INLINE_VISIBILITY time_point& operator+=(const duration& __d) {__d_ += __d; return *this;}
+	_LIBCPP_INLINE_VISIBILITY time_point& operator-=(const duration& __d) {__d_ -= __d; return *this;}
 
     // special values
 
diff --git a/include/fstream b/include/fstream
index 7b6578f..1b8e7a0 100644
--- a/include/fstream
+++ b/include/fstream
@@ -344,6 +344,7 @@
 {
     close();
     swap(__rhs);
+    return *this;
 }
 
 #endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
diff --git a/include/functional b/include/functional
index 8c166b7..ec5c5e5 100644
--- a/include/functional
+++ b/include/functional
@@ -1351,6 +1351,7 @@
         __f_ = __f.__f_;
         __f.__f_ = 0;
     }
+    return *this;
 }
 
 template<class _Rp, class ..._ArgTypes>
@@ -1362,6 +1363,7 @@
     else if (__f_)
         __f_->destroy_deallocate();
     __f_ = 0;
+    return *this;
 }
 
 template<class _Rp, class ..._ArgTypes>
diff --git a/include/future b/include/future
index 758296a..39475bd 100644
--- a/include/future
+++ b/include/future
@@ -1872,6 +1872,7 @@
         __f_ = __f.__f_;
         __f.__f_ = nullptr;
     }
+    return *this;
 }
 
 template<class _Rp, class ..._ArgTypes>
diff --git a/include/regex b/include/regex
index 3918ee0..7505f2e 100644
--- a/include/regex
+++ b/include/regex
@@ -2562,6 +2562,7 @@
         {
             __member_init(__f);
             __parse(__first, __last);
+            return *this;
         }
 
 #ifndef _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS
diff --git a/include/string b/include/string
index 7c022dc..89a00e5 100644
--- a/include/string
+++ b/include/string
@@ -2208,6 +2208,7 @@
     clear();
     for (; __first != __last; ++__first)
         push_back(*__first);
+    return *this;
 }
 
 template <class _CharT, class _Traits, class _Allocator>
diff --git a/include/vector b/include/vector
index 07859c9..ee71435 100644
--- a/include/vector
+++ b/include/vector
@@ -2700,6 +2700,7 @@
 {
     __move_assign(__v, integral_constant<bool,
           __storage_traits::propagate_on_container_move_assignment::value>());
+    return *this;
 }
 
 template <class _Allocator>