[clang] 043550e - [Driver] Stop stack use after free
Alex Brachet via cfe-commits
cfe-commits at lists.llvm.org
Fri Feb 10 14:42:20 PST 2023
Author: Alex Brachet
Date: 2023-02-10T22:42:12Z
New Revision: 043550e33509fb3179cfcd6516e8d93240553582
URL: https://github.com/llvm/llvm-project/commit/043550e33509fb3179cfcd6516e8d93240553582
DIFF: https://github.com/llvm/llvm-project/commit/043550e33509fb3179cfcd6516e8d93240553582.diff
LOG: [Driver] Stop stack use after free
In reality this would have always been fine because main's
stack frame will always be live when another thread is
executing the cc1_reproducer_main. But ASan and HWASan
were upset
Added:
Modified:
clang/tools/driver/driver.cpp
Removed:
################################################################################
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp
index 52d391fc6971..3ec2bcc0bd75 100644
--- a/clang/tools/driver/driver.cpp
+++ b/clang/tools/driver/driver.cpp
@@ -537,7 +537,7 @@ int clang_main(int Argc, char **Argv, const llvm::ToolContext &ToolContext) {
return 1;
if (!UseNewCC1Process) {
- TheDriver.CC1Main = [&ToolContext](SmallVectorImpl<const char *> &ArgV) {
+ TheDriver.CC1Main = [ToolContext](SmallVectorImpl<const char *> &ArgV) {
return ExecuteCC1Tool(ArgV, ToolContext);
};
// Ensure the CC1Command actually catches cc1 crashes
More information about the cfe-commits
mailing list