yronglin wrote: > Did you check locally that this works with sanitizers enabled?
Yeah, the memory leak issue in https://github.com/llvm/llvm-project/pull/99895 seems to be caused by other floating point builtins in clang/test/CodeGen/builtins.c. The new examples added in this PR do not have any floating point operations. And I've verifyed in my local with address sanitizer enabled. Clang build with: ``` cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;compiler-rt;libunwind" -DLLVM_TARGETS_TO_BUILD="X86;AArch64" -DCMAKE_C_FLAGS="-fsanitize=address" -DCMAKE_CXX_FLAGS="-fsanitize=address" -DLLVM_USE_SANITIZER=Address ../llvm-project/llvm ``` ``` ➜ test cat os_format.cpp void test_builtin_os_log(void *buf, int i, const char *data) { constexpr int len = __builtin_os_log_format_buffer_size("%d %{public}s %{private}.16P", i, data, data); static_assert(len > 0, "Expect len > 0"); } ➜ test ../rel/bin/clang++ -c -fexperimental-new-constant-interpreter ./os_format.cpp ➜ test ``` https://github.com/llvm/llvm-project/pull/100566 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits