[clang] [clang-repl] Simplify the logic around out of process execution. NFC (PR #175322)

Rainer Orth via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 15 07:54:53 PST 2026


rorth wrote:

Still no dice:

```
Note: This is test shard 28 of 29.
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from OutOfProcessInterpreterTest
[ RUN      ] OutOfProcessInterpreterTest.SanityWithRemoteExecution
Failure value returned from cantFail wrapped call
OrcRuntime library not found. Checked:
  tools/clang/unittests/lib/clang/23/lib/amd64-pc-solaris2.11/libclang_rt.orc_rt.a
  tools/clang/unittests/lib/clang/23/lib/amd64-pc-solaris2.11/liborc_rt.a
  tools/clang/unittests/lib/clang/23/lib/amd64-pc-solaris2.11/libclang_rt.orc_rt.a
  tools/clang/unittests/lib/clang/23/lib/amd64-pc-solaris2.11/liborc_rt.a
  tools/clang/lib/clang/23/lib/amd64-pc-solaris2.11/libclang_rt.orc_rt.a
  tools/clang/lib/clang/23/lib/amd64-pc-solaris2.11/liborc_rt.a
  tools/lib/clang/23/lib/amd64-pc-solaris2.11/libclang_rt.orc_rt.a
  tools/lib/clang/23/lib/amd64-pc-solaris2.11/liborc_rt.a
  lib/clang/23/lib/amd64-pc-solaris2.11/libclang_rt.orc_rt.a
  lib/clang/23/lib/amd64-pc-solaris2.11/liborc_rt.a
```

while the library is in `lib/clang/23/lib/sunos/liborc_rt-x86_64.a`.  In the `projects` layout, the library name is suffixed with `-<arch>` to allow for multilib configurations (i.e. for `liborc_rt-i386.a` to reside in the same directory).

I've stripped path names here to avoid confusion since this is from a local 2-stage build with a different prefix.

And as I said: this isn't proper error handling:


```
UNREACHABLE executed at /vol/llvm/src/llvm-project/local/llvm/include/llvm/Support/Error.h:810!
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  ClangReplInterpreterTests 0x00000000085b0d1b llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 43
1  ClangReplInterpreterTests 0x00000000085af2a7 llvm::sys::RunSignalHandlers() + 183
2  ClangReplInterpreterTests 0x00000000085b138e SignalHandler(int, siginfo*, void*) + 286
3  libc.so.1                 0x00007fffbf25aa86 __sighndlr + 6
4  libc.so.1                 0x00007fffbf24b90f call_user_handler + 815
5  libc.so.1                 0x00007fffbf2618aa __lwp_sigqueue + 10
6  libc.so.1                 0x00007fffbf1978bc raise + 28
7  libc.so.1                 0x00007fffbf15eb86 abort + 182
8  ClangReplInterpreterTests 0x00000000085286f2 llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) + 450
9  ClangReplInterpreterTests 0x0000000006753456 std::unique_ptr<clang::CompilerInstance, std::default_delete<clang::CompilerInstance>> llvm::cantFail<std::unique_ptr<clang::CompilerInstance, std::default_delete<clang::CompilerInstance>>>(llvm::Expected<std::unique_ptr<clang::CompilerInstance, std::default_delete<clang::CompilerInstance>>>, char const*) + 230
10 ClangReplInterpreterTests 0x00000000067739a2 (anonymous namespace)::createInterpreterWithRemoteExecution(std::shared_ptr<(anonymous namespace)::IOContext>, std::vector<char const*, std::allocator<char const*>> const&) + 1234
11 ClangReplInterpreterTests 0x0000000006772875 (anonymous namespace)::OutOfProcessInterpreterTest_SanityWithRemoteExecution_Test::TestBody() + 677
12 ClangReplInterpreterTests 0x0000000008611560 testing::Test::Run() + 400
13 ClangReplInterpreterTests 0x0000000008612a90 testing::TestInfo::Run() + 480
14 ClangReplInterpreterTests 0x00000000086137ef testing::TestSuite::Run() + 879
15 ClangReplInterpreterTests 0x00000000086255f4 testing::internal::UnitTestImpl::RunAllTests() + 2724
17 ClangReplInterpreterTests 0x00000000085f256e main + 142
18 ClangReplInterpreterTests 0x0000000006752cc3 _start + 67
```

That's why I said this is a total mess: it makes no sense for every user to figure out those differences on their own.

Please let's stop here and just `SKIP` the test on `{{*-*-solaris2*}}` to finally get the bot green again reliably.


https://github.com/llvm/llvm-project/pull/175322


More information about the cfe-commits mailing list