[clang] [clang-repl] Lay the basic infrastructure for pretty printing of types (PR #148701)

Vassil Vassilev via cfe-commits cfe-commits at lists.llvm.org
Sat Jul 19 10:56:13 PDT 2025


vgvassilev wrote:

https://github.com/llvm/llvm-project/commit/0a463bd43e626695b7221b0cf20cdaa5970cfe98 should bring piece in the galaxy.

However, I am puzzled by the system-z (s390) -- it is a big endian -- it is a good test bed for the conformance for low-level primitives such as `clang::Value` which this patch touched. However, the issue seems to be only for enum types (int and other types are printed well which seems to show that the implementation is independent on the endianness).

For enums of an `int` type we go through this code:

https://github.com/llvm/llvm-project/blob/0a463bd43e626695b7221b0cf20cdaa5970cfe98/clang/lib/Interpreter/InterpreterValuePrinter.cpp#L696-L698

Perhaps there is some bug in handling variadic arguments on that platform. I do not have access to a big-endian platform to verify my guess. Last time I tried alpine + qemu to emulate a big-endian platform it was unusable for a large project such as llvm.

I still need a clarification on the `asan` failure and until then I've taken the liberty to disable the test so that we don't regress the codebase.

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


More information about the cfe-commits mailing list