@@ -55,8 +55,8 @@ namespace rust {
5555 static String lossy (const char16_t *) noexcept ;
5656 static String lossy (const char16_t *, std::size_t ) noexcept ;
5757
58- String &operator =(const String &) &noexcept ;
59- String &operator =(String &&) &noexcept ;
58+ String &operator =(const String &) & noexcept ;
59+ String &operator =(String &&) & noexcept ;
6060
6161 explicit operator std::string () const ;
6262
@@ -115,7 +115,7 @@ namespace rust {
115115 Str (const char *);
116116 Str (const char *, std::size_t );
117117
118- Str &operator =(const Str &) &noexcept = default ;
118+ Str &operator =(const Str &) & noexcept = default ;
119119
120120 explicit operator std::string () const ;
121121
@@ -163,8 +163,8 @@ namespace rust {
163163 struct copy_assignable_if <false > {
164164 copy_assignable_if () noexcept = default ;
165165 copy_assignable_if (const copy_assignable_if &) noexcept = default ;
166- copy_assignable_if &operator =(const copy_assignable_if &) &noexcept = delete ;
167- copy_assignable_if &operator =(copy_assignable_if &&) &noexcept = default ;
166+ copy_assignable_if &operator =(const copy_assignable_if &) & noexcept = delete ;
167+ copy_assignable_if &operator =(copy_assignable_if &&) & noexcept = default ;
168168 };
169169 } // namespace detail
170170
@@ -177,8 +177,8 @@ namespace rust {
177177 Slice () noexcept ;
178178 Slice (T *, std::size_t count) noexcept ;
179179
180- Slice &operator =(const Slice<T> &) &noexcept = default ;
181- Slice &operator =(Slice<T> &&) &noexcept = default ;
180+ Slice &operator =(const Slice<T> &) & noexcept = default ;
181+ Slice &operator =(Slice<T> &&) & noexcept = default ;
182182
183183 T *data () const noexcept ;
184184 std::size_t size () const noexcept ;
@@ -265,7 +265,7 @@ namespace rust {
265265 explicit Box (const T &);
266266 explicit Box (T &&);
267267
268- Box &operator =(Box &&) &noexcept ;
268+ Box &operator =(Box &&) & noexcept ;
269269
270270 const T *operator ->() const noexcept ;
271271 const T &operator *() const noexcept ;
@@ -310,7 +310,7 @@ namespace rust {
310310 Vec (Vec &&) noexcept ;
311311 ~Vec () noexcept ;
312312
313- Vec &operator =(Vec &&) &noexcept ;
313+ Vec &operator =(Vec &&) & noexcept ;
314314 Vec &operator =(const Vec &) &;
315315
316316 std::size_t size () const noexcept ;
@@ -391,7 +391,7 @@ namespace rust {
391391 ~Error () noexcept override ;
392392
393393 Error &operator =(const Error &) &;
394- Error &operator =(Error &&) &noexcept ;
394+ Error &operator =(Error &&) & noexcept ;
395395
396396 const char *what () const noexcept override ;
397397
@@ -758,7 +758,7 @@ namespace rust {
758758 }
759759
760760 template <typename T>
761- Box<T> &Box<T>::operator =(Box &&other) &noexcept {
761+ Box<T> &Box<T>::operator =(Box &&other) & noexcept {
762762 if (this ->ptr ) {
763763 this ->drop ();
764764 }
@@ -849,7 +849,7 @@ namespace rust {
849849 }
850850
851851 template <typename T>
852- Vec<T> &Vec<T>::operator =(Vec &&other) &noexcept {
852+ Vec<T> &Vec<T>::operator =(Vec &&other) & noexcept {
853853 this ->drop ();
854854 this ->repr = other.repr ;
855855 new (&other) Vec ();
0 commit comments