[compiler-rt] [Sanitizer][test] Emit to stderr to fix android (PR #142207)

via llvm-commits llvm-commits at lists.llvm.org
Fri May 30 12:56:06 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-compiler-rt-sanitizer

Author: Ellis Hoag (ellishg)

<details>
<summary>Changes</summary>

This test is broken on android by https://github.com/llvm/llvm-project/pull/141820

https://lab.llvm.org/buildbot/#/builders/186/builds/9498

> FileCheck error: '' is empty.

I suspect that on android printf only works if its emitted to stderr because this use to work

https://github.com/llvm/llvm-project/blob/a2ce5647200ad40ae356affd44db7d054de444d2/compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp#L21-L22

Only emit to stderr and see if that fixes the test.

---
Full diff: https://github.com/llvm/llvm-project/pull/142207.diff


1 Files Affected:

- (modified) compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp (+8-9) 


``````````diff
diff --git a/compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp b/compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
index 9d7ed80b44ccb..8abd476708b4c 100644
--- a/compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
+++ b/compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
@@ -1,7 +1,6 @@
 // Test __sanitizer_set_report_path and __sanitizer_get_report_path:
 // RUN: %clangxx -O2 %s -o %t
-// RUN: %env HOME=%t.homedir TMPDIR=%t.tmpdir %run %t 2>%t.err | FileCheck %s
-// RUN: FileCheck %s --input-file=%t.err --check-prefix=ERROR
+// RUN: %env HOME=%t.homedir TMPDIR=%t.tmpdir %run %t 2>&1 | FileCheck %s
 
 #include <sanitizer/common_interface_defs.h>
 #include <stdio.h>
@@ -12,31 +11,31 @@ int main(int argc, char **argv) {
   sprintf(buff, "%s.report_path/report", argv[0]);
   __sanitizer_set_report_path(buff);
   // CHECK: {{.*}}.report_path/report.[[PID:[0-9]+]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 
   strcpy(buff, "%H/foo");
   __sanitizer_set_report_path(buff);
   // CHECK: [[T:.*]].homedir/foo.[[PID]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 
   strcpy(buff, "%t/foo");
   __sanitizer_set_report_path(buff);
   // CHECK: [[T]].tmpdir/foo.[[PID]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 
   strcpy(buff, "%H/%p/%%foo");
   __sanitizer_set_report_path(buff);
   // CHECK: [[T]].homedir/[[PID]]/%foo.[[PID]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 
   strcpy(buff, "%%foo%%bar");
   __sanitizer_set_report_path(buff);
   // CHECK: %foo%bar.[[PID]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 
   strcpy(buff, "%%foo%ba%%r");
   __sanitizer_set_report_path(buff);
-  // ERROR: Unexpected pattern: %%foo%ba%%r
+  // CHECK: Unexpected pattern: %%foo%ba%%r
   // CHECK: %%foo%ba%%r.[[PID]]
-  printf("%s\n", __sanitizer_get_report_path());
+  fprintf(stderr, "%s\n", __sanitizer_get_report_path());
 }

``````````

</details>


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


More information about the llvm-commits mailing list