From 33db20978e8157f53ca24fce1c54a7b5e07159cf Mon Sep 17 00:00:00 2001 From: Levi Zim Date: Tue, 9 Apr 2024 14:47:06 +0800 Subject: Pass value and valueLen to create a StringRef Instead of creating a cstring. Co-authored-by: LoveSy --- compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp') diff --git a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp index 8d43fe6052a..db3c0386b94 100644 --- a/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp +++ b/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp @@ -829,9 +829,10 @@ extern "C" void LLVMRustAddModuleFlagString( LLVMModuleRef M, Module::ModFlagBehavior MergeBehavior, const char *Name, - const char *Value) { - llvm::LLVMContext &Ctx = unwrap(M)->getContext(); - unwrap(M)->addModuleFlag(MergeBehavior, Name, llvm::MDString::get(Ctx, Value)); + const char *Value, + size_t ValueLen) { + unwrap(M)->addModuleFlag(MergeBehavior, Name, + MDString::get(unwrap(M)->getContext(), StringRef(Value, ValueLen))); } extern "C" bool LLVMRustHasModuleFlag(LLVMModuleRef M, const char *Name, -- cgit 1.4.1-3-g733a5