From 03e17f8387a051404d2db0e9d1dd198fca682db9 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 18 Aug 2010 00:11:25 +0000 Subject: [PATCH] Don't pass in a null pointer to std::string's ctor, an empty string ref should produce an empty std::string. This fixes PR7879. llvm-svn: 111332 --- llvm/include/llvm/ADT/StringRef.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/llvm/include/llvm/ADT/StringRef.h b/llvm/include/llvm/ADT/StringRef.h index 33756f605f01..9962bb2b1888 100644 --- a/llvm/include/llvm/ADT/StringRef.h +++ b/llvm/include/llvm/ADT/StringRef.h @@ -149,7 +149,10 @@ namespace llvm { unsigned edit_distance(StringRef Other, bool AllowReplacements = true); /// str - Get the contents as an std::string. - std::string str() const { return std::string(Data, Length); } + std::string str() const { + if (Data == 0) return ""; + return std::string(Data, Length); + } /// @} /// @name Operator Overloads -- GitLab