OSDN Git Service

[StringRef] Use default member initializers and = default.
authorMalcolm Parsons <malcolm.parsons@gmail.com>
Tue, 29 Nov 2016 10:53:18 +0000 (10:53 +0000)
committerMalcolm Parsons <malcolm.parsons@gmail.com>
Tue, 29 Nov 2016 10:53:18 +0000 (10:53 +0000)
Summary: This makes the default constructor implicitly constexpr and noexcept.

Reviewers: zturner, beanz

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D27094

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288131 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/StringRef.h

index d8e0732..09f9d65 100644 (file)
@@ -53,10 +53,10 @@ namespace llvm {
 
   private:
     /// The start of the string, in an external buffer.
-    const char *Data;
+    const char *Data = nullptr;
 
     /// The length of the string.
-    size_t Length;
+    size_t Length = 0;
 
     // Workaround memcmp issue with null pointers (undefined behavior)
     // by providing a specialized version
@@ -71,7 +71,7 @@ namespace llvm {
     /// @{
 
     /// Construct an empty string ref.
-    /*implicit*/ StringRef() : Data(nullptr), Length(0) {}
+    /*implicit*/ StringRef() = default;
 
     /// Disable conversion from nullptr.  This prevents things like
     /// if (S == nullptr)