Simplify PDiag's move assignment overload a bit, the self-move check isn't actually necessary.
This just empties out the diag, which is fine.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169542 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/Basic/PartialDiagnostic.h b/include/clang/Basic/PartialDiagnostic.h
index 63363a9..0ac4296 100644
--- a/include/clang/Basic/PartialDiagnostic.h
+++ b/include/clang/Basic/PartialDiagnostic.h
@@ -253,17 +253,13 @@
#if LLVM_HAS_RVALUE_REFERENCES
PartialDiagnostic &operator=(PartialDiagnostic &&Other) {
- if (this != &Other) {
- if (DiagStorage)
- freeStorage();
+ freeStorage();
- DiagID = Other.DiagID;
- DiagStorage = Other.DiagStorage;
- Allocator = Other.Allocator;
+ DiagID = Other.DiagID;
+ DiagStorage = Other.DiagStorage;
+ Allocator = Other.Allocator;
- Other.DiagStorage = 0;
- }
-
+ Other.DiagStorage = 0;
return *this;
}
#endif