[clang] 6963309 - [Frontend] Avoid creating a temporary instance of std::string (NFC) (#140326)

via cfe-commits cfe-commits at lists.llvm.org
Fri May 16 20:02:53 PDT 2025


Author: Kazu Hirata
Date: 2025-05-16T20:02:50-07:00
New Revision: 6963309af12f8d1a688fa2c42019d83e78a0024c

URL: https://github.com/llvm/llvm-project/commit/6963309af12f8d1a688fa2c42019d83e78a0024c
DIFF: https://github.com/llvm/llvm-project/commit/6963309af12f8d1a688fa2c42019d83e78a0024c.diff

LOG: [Frontend] Avoid creating a temporary instance of std::string (NFC) (#140326)

Since getLastArgValue returns StringRef, and the constructor of
SmallString accepts StringRef, we do not need to go through a
temporary instance of std::string.

Added: 
    

Modified: 
    clang/lib/Frontend/CompilerInvocation.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index fd48e425a5c21..3c23073fc6a8c 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -2055,8 +2055,7 @@ bool CompilerInvocation::ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args,
   // The memory profile runtime appends the pid to make this name more unique.
   const char *MemProfileBasename = "memprof.profraw";
   if (Args.hasArg(OPT_fmemory_profile_EQ)) {
-    SmallString<128> Path(
-        std::string(Args.getLastArgValue(OPT_fmemory_profile_EQ)));
+    SmallString<128> Path(Args.getLastArgValue(OPT_fmemory_profile_EQ));
     llvm::sys::path::append(Path, MemProfileBasename);
     Opts.MemoryProfileOutput = std::string(Path);
   } else if (Args.hasArg(OPT_fmemory_profile))


        


More information about the cfe-commits mailing list