From: Florian Hahn Date: Mon, 7 Oct 2019 17:05:09 +0000 (+0000) Subject: [Remarks] Pass StringBlockValue as StringRef. X-Git-Tag: llvmorg-11-init~7332 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=90b7dc9e716450ec8ce3d64cccbb6acdb750a609;p=platform%2Fupstream%2Fllvm.git [Remarks] Pass StringBlockValue as StringRef. After changing the remark serialization, we now pass StringRefs to the serializer. We should use StringRef for StringBlockVal, to avoid creating temporary objects, which then cause StringBlockVal.Value to point to invalid memory. Reviewers: thegameg, anemet Reviewed By: thegameg Differential Revision: https://reviews.llvm.org/D68571 llvm-svn: 373923 --- diff --git a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp index 66eb06b..3a42fe0 100644 --- a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp +++ b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp @@ -103,7 +103,7 @@ template <> struct MappingTraits { /// newlines in strings. struct StringBlockVal { StringRef Value; - StringBlockVal(const std::string &Value) : Value(Value) {} + StringBlockVal(StringRef R) : Value(R) {} }; template <> struct BlockScalarTraits {