Author: Abhina Sree
Date: 2026-07-03T11:04:19-04:00
New Revision: 4ba692f421e0679676057b8bf880ff9728c90dd0

URL: 
https://github.com/llvm/llvm-project/commit/4ba692f421e0679676057b8bf880ff9728c90dd0
DIFF: 
https://github.com/llvm/llvm-project/commit/4ba692f421e0679676057b8bf880ff9728c90dd0.diff

LOG: Change ToLiteralEncodingConverter to a unique_ptr (#207258)

This patch changes ToLiteralEncodingConverter from a raw pointer to a unique_ptr

Added: 
    

Modified: 
    clang/include/clang/Lex/TextEncoding.h
    clang/lib/Lex/TextEncoding.cpp

Removed: 
    


################################################################################
diff  --git a/clang/include/clang/Lex/TextEncoding.h 
b/clang/include/clang/Lex/TextEncoding.h
index 19af46fa05fb9..55663cdc072da 100644
--- a/clang/include/clang/Lex/TextEncoding.h
+++ b/clang/include/clang/Lex/TextEncoding.h
@@ -21,7 +21,7 @@ enum ConversionAction { CA_NoConversion, CA_ToLiteralEncoding 
};
 
 class TextEncoding {
   llvm::StringRef LiteralEncoding;
-  llvm::TextEncodingConverter *ToLiteralEncodingConverter = nullptr;
+  std::unique_ptr<llvm::TextEncodingConverter> ToLiteralEncodingConverter;
 
 public:
   llvm::TextEncodingConverter *getConverter(ConversionAction Action) const;

diff  --git a/clang/lib/Lex/TextEncoding.cpp b/clang/lib/Lex/TextEncoding.cpp
index 989f5fc55c408..eb4fde8928a68 100644
--- a/clang/lib/Lex/TextEncoding.cpp
+++ b/clang/lib/Lex/TextEncoding.cpp
@@ -16,7 +16,7 @@ llvm::TextEncodingConverter *
 TextEncoding::getConverter(ConversionAction Action) const {
   switch (Action) {
   case CA_ToLiteralEncoding:
-    return ToLiteralEncodingConverter;
+    return ToLiteralEncodingConverter.get();
   default:
     return nullptr;
   }
@@ -39,7 +39,7 @@ TextEncoding::setConvertersFromOptions(TextEncoding &TE,
       llvm::TextEncodingConverter::create(UTF8, TE.LiteralEncoding);
   if (ErrorOrConverter)
     TE.ToLiteralEncodingConverter =
-        new TextEncodingConverter(std::move(*ErrorOrConverter));
+        std::make_unique<TextEncodingConverter>(std::move(*ErrorOrConverter));
   else
     return ErrorOrConverter.getError();
   return std::error_code();


        
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to