[Lldb-commits] [PATCH] D68770: [LLDB] [Driver] Use llvm::InitLLVM to do unicode argument conversion on Windows
Martin Storsjö via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Thu Oct 10 02:49:51 PDT 2019
mstorsjo created this revision.
mstorsjo added reviewers: labath, amccarth, rnk.
Herald added a project: LLDB.
This avoids the currently MSVC specific codepath of using the wchar entry point and converting that to utf8.
In the main lldb driver, we had this MSVC specific codepath, but in other potentially important entry points (like lldb-server), there's none at all. So if this is fine, we should probably add the same InitLLVM call to other lldb entry points as well.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D68770
Files:
lldb/tools/driver/Driver.cpp
Index: lldb/tools/driver/Driver.cpp
===================================================================
--- lldb/tools/driver/Driver.cpp
+++ lldb/tools/driver/Driver.cpp
@@ -19,8 +19,8 @@
#include "lldb/API/SBStringList.h"
#include "llvm/ADT/StringRef.h"
-#include "llvm/Support/ConvertUTF.h"
#include "llvm/Support/Format.h"
+#include "llvm/Support/InitLLVM.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/PrettyStackTrace.h"
#include "llvm/Support/Process.h"
@@ -807,23 +807,9 @@
return llvm::None;
}
-int
-#ifdef _MSC_VER
-wmain(int argc, wchar_t const *wargv[])
-#else
-main(int argc, char const *argv[])
-#endif
+int main(int argc, char const *argv[])
{
-#ifdef _MSC_VER
- // Convert wide arguments to UTF-8
- std::vector<std::string> argvStrings(argc);
- std::vector<const char *> argvPointers(argc);
- for (int i = 0; i != argc; ++i) {
- llvm::convertWideToUTF8(wargv[i], argvStrings[i]);
- argvPointers[i] = argvStrings[i].c_str();
- }
- const char **argv = argvPointers.data();
-#endif
+ llvm::InitLLVM IL(argc, argv);
// Print stack trace on crash.
llvm::StringRef ToolName = llvm::sys::path::filename(argv[0]);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D68770.224289.patch
Type: text/x-patch
Size: 1167 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20191010/771d62cd/attachment.bin>
More information about the lldb-commits
mailing list