hokein created this revision. hokein added a reviewer: ioeric. Herald added a subscriber: llvm-commits.
Passing a nullptr to memcpy is UB. Repository: rL LLVM https://reviews.llvm.org/D50966 Files: lib/Support/StringSaver.cpp Index: lib/Support/StringSaver.cpp =================================================================== --- lib/Support/StringSaver.cpp +++ lib/Support/StringSaver.cpp @@ -12,6 +12,8 @@ using namespace llvm; StringRef StringSaver::save(StringRef S) { + if (S.empty()) + return StringRef(); char *P = Alloc.Allocate<char>(S.size() + 1); memcpy(P, S.data(), S.size()); P[S.size()] = '\0';
Index: lib/Support/StringSaver.cpp =================================================================== --- lib/Support/StringSaver.cpp +++ lib/Support/StringSaver.cpp @@ -12,6 +12,8 @@ using namespace llvm; StringRef StringSaver::save(StringRef S) { + if (S.empty()) + return StringRef(); char *P = Alloc.Allocate<char>(S.size() + 1); memcpy(P, S.data(), S.size()); P[S.size()] = '\0';
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits