Reinstate "[clang-repl] Re-implement clang-interpreter as a test case."
authorVassil Vassilev <v.g.vassilev@gmail.com>
Mon, 25 Oct 2021 17:52:20 +0000 (17:52 +0000)
committerVassil Vassilev <v.g.vassilev@gmail.com>
Tue, 26 Oct 2021 19:29:56 +0000 (19:29 +0000)
commitc24a58081b527fa8c61222b67af5f17f4c2cc63b
tree90dc92004ddad409b24b4b77b2283e7a835d2ba8
parentd7fbad0dcfc950d76df6b52fc10cdfe945d07eb7
Reinstate "[clang-repl] Re-implement clang-interpreter as a test case."

Original commit message: "
  Original commit message: "
    Original commit message: "
       Original commit message:"
         The current infrastructure in lib/Interpreter has a tool, clang-repl, very
         similar to clang-interpreter which also allows incremental compilation.

         This patch moves clang-interpreter as a test case and drops it as conditionally
         built example as we already have clang-repl in place.
       "

       This patch also ignores ppc due to missing weak symbol for __gxx_personality_v0
       which may be a feature request for the jit infrastructure. Also, adds a missing
       build system dependency to the orc jit.
    "

    Additionally, this patch defines a custom exception type and thus avoids the
    requirement to include header <exception>, making it easier to deploy across
    systems without standard location of the c++ headers.
  "

  This patch also works around PR49692 and finds a way to use llvm::consumeError
  in rtti mode.
"

This patch also checks if stl is built with rtti.

Differential revision: https://reviews.llvm.org/D107049
16 files changed:
clang/docs/ClangFormattedStatus.rst
clang/examples/CMakeLists.txt
clang/examples/clang-interpreter/CMakeLists.txt [deleted file]
clang/examples/clang-interpreter/README.txt [deleted file]
clang/examples/clang-interpreter/Test.cxx [deleted file]
clang/include/clang/Interpreter/Interpreter.h
clang/lib/Interpreter/IncrementalExecutor.cpp
clang/lib/Interpreter/IncrementalExecutor.h
clang/lib/Interpreter/Interpreter.cpp
clang/test/CMakeLists.txt
clang/test/Misc/interpreter.c [deleted file]
clang/test/lit.cfg.py
clang/unittests/Interpreter/CMakeLists.txt
clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt [new file with mode: 0644]
clang/unittests/Interpreter/ExceptionTests/InterpreterExceptionTest.cpp [new file with mode: 0644]
clang/unittests/Interpreter/InterpreterTest.cpp