Issue 63317
Summary libc with LLVM_LIBC_INCLUDE_SCUDO=ON fails to build due to missing format constants
Labels new issue
Assignees
Reporter alfredfo
    Hi! When building LLVM libc in fullbuild mode with scudo it compiles `compiler-rt/lib/scudo/standalone/timing.cpp` using `inttypes.h` from LLVM libc, which currently does not have the format constant `PRId64`.

```
[64/1409] Building CXX object projects/compiler-rt...akeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.
FAILED: projects/compiler-rt/lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o 
/usr/lib/llvm/16/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D_LIBCPP_ENABLE_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/cat/c/llvm-project/build-nossp/projects/compiler-rt/lib/scudo/standalone -I/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone -I/home/cat/c/llvm-project/build-nossp/include -I/home/cat/c/llvm-project/llvm/include -I/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/../.. -I/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/include -I/home/cat/c/llvm-project/build-nossp/projects/compiler-rt/../libc/include -fno-stack-protector -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -Wall -Wno-unused-parameter -g -std=c++17 -m64 -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -fno-lto -O3 -Werror=thread-safety -ffreestanding -MD -MT projects/compiler-rt/lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o -MF projects/compiler-rt/lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o.d -o projects/compiler-rt/lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o -c /home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.cpp
In file included from /home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.cpp:9:
/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.h:182:22: error: expected ')'
    Str.append("%14" PRId64 ".%" PRId64 "(ns) %-11s", Integral, Fraction, " ");
 ^
/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.h:182:15: note: to match this '('
    Str.append("%14" PRId64 ".%" PRId64 "(ns) %-11s", Integral, Fraction, " ");
 ^
/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.h:186:24: error: expected ')'
    Str.append("%s (%" PRId64 ")\n", Timers[HandleId].Name, Occurrence);
 ^
/home/cat/c/llvm-project/compiler-rt/lib/scudo/standalone/timing.h:186:15: note: to match this '('
    Str.append("%s (%" PRId64 ")\n", Timers[HandleId].Name, Occurrence);
              ^
2 errors generated.
ninja: build stopped: subcommand failed.

```
This commit introduced the issue: https://github.com/llvm/llvm-project/commit/1e36156ab1dc70f9f9b94a8d9820c819da4187be#diff-7156dbc48a2b7dddb36c3427227ab749d38ddcf10f13f7813db521c2b271734d
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to