[clang] 3ec88ca - Revert "[clang-repl] Allow passing in code as positional arguments."
Mitch Phillips via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 2 11:05:15 PDT 2021
Author: Mitch Phillips
Date: 2021-07-02T11:04:28-07:00
New Revision: 3ec88ca60b24418b2216de88fad1da4f269f6b8c
URL: https://github.com/llvm/llvm-project/commit/3ec88ca60b24418b2216de88fad1da4f269f6b8c
DIFF: https://github.com/llvm/llvm-project/commit/3ec88ca60b24418b2216de88fad1da4f269f6b8c.diff
LOG: Revert "[clang-repl] Allow passing in code as positional arguments."
This reverts commit e386871e1d21cf206a1287356e88c5853563fc77.
Reason: Broke the ASan buildbots
(https://lab.llvm.org/buildbot/#/builders/5/builds/9291). See comments
on https://reviews.llvm.org/D104898 for more information.
Added:
Modified:
clang/test/Interpreter/execute.cpp
clang/tools/clang-repl/ClangRepl.cpp
Removed:
################################################################################
diff --git a/clang/test/Interpreter/execute.cpp b/clang/test/Interpreter/execute.cpp
index 730796bd4016a..108b79b23a59d 100644
--- a/clang/test/Interpreter/execute.cpp
+++ b/clang/test/Interpreter/execute.cpp
@@ -1,12 +1,7 @@
-// RUN: clang-repl "int i = 10;" 'extern "C" int printf(const char*,...);' \
-// RUN: 'auto r1 = printf("i = %d\n", i);' | FileCheck --check-prefix=CHECK-DRIVER %s
+// RUN: cat %s | clang-repl | FileCheck %s
// REQUIRES: host-supports-jit
// UNSUPPORTED: system-aix
-// CHECK-DRIVER: i = 10
-
-// RUN: cat %s | clang-repl | FileCheck %s
-
extern "C" int printf(const char *, ...);
int i = 42;
auto r1 = printf("i = %d\n", i);
diff --git a/clang/tools/clang-repl/ClangRepl.cpp b/clang/tools/clang-repl/ClangRepl.cpp
index ba6bb11abc867..b5b5bf6e0c6bb 100644
--- a/clang/tools/clang-repl/ClangRepl.cpp
+++ b/clang/tools/clang-repl/ClangRepl.cpp
@@ -28,9 +28,6 @@ static llvm::cl::list<std::string>
llvm::cl::CommaSeparated);
static llvm::cl::opt<bool> OptHostSupportsJit("host-supports-jit",
llvm::cl::Hidden);
-static llvm::cl::list<std::string> OptInputs(llvm::cl::Positional,
- llvm::cl::ZeroOrMore,
- llvm::cl::desc("[code to run]"));
static void LLVMErrorHandler(void *UserData, const std::string &Message,
bool GenCrashDiag) {
@@ -81,22 +78,15 @@ int main(int argc, const char **argv) {
static_cast<void *>(&CI->getDiagnostics()));
auto Interp = ExitOnErr(clang::Interpreter::create(std::move(CI)));
- for (const std::string &input : OptInputs) {
- if (auto Err = Interp->ParseAndExecute(input))
+ llvm::LineEditor LE("clang-repl");
+ // FIXME: Add LE.setListCompleter
+ while (llvm::Optional<std::string> Line = LE.readLine()) {
+ if (*Line == "quit")
+ break;
+ if (auto Err = Interp->ParseAndExecute(*Line))
llvm::logAllUnhandledErrors(std::move(Err), llvm::errs(), "error: ");
}
- if (OptInputs.empty()) {
- llvm::LineEditor LE("clang-repl");
- // FIXME: Add LE.setListCompleter
- while (llvm::Optional<std::string> Line = LE.readLine()) {
- if (*Line == "quit")
- break;
- if (auto Err = Interp->ParseAndExecute(*Line))
- llvm::logAllUnhandledErrors(std::move(Err), llvm::errs(), "error: ");
- }
- }
-
// Our error handler depends on the Diagnostics object, which we're
// potentially about to delete. Uninstall the handler now so that any
// later errors use the default handling behavior instead.
More information about the cfe-commits
mailing list