<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Oct 19, 2020, at 04:27, Martin Storsjö <<a href="mailto:martin@martin.st" class="">martin@martin.st</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">On Tue, 13 Oct 2020, Louis Dionne via libcxx-commits wrote:</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br class="">Author: Louis Dionne<br class="">Date: 2020-10-13T20:25:33-04:00<br class="">New Revision: cc69d211d0d65d7bf0335fecbc323f784ac3afcc<br class=""><br class="">URL: <a href="https://github.com/llvm/llvm-project/commit/cc69d211d0d65d7bf0335fecbc323f784ac3afcc" class="">https://github.com/llvm/llvm-project/commit/cc69d211d0d65d7bf0335fecbc323f784ac3afcc</a><br class="">DIFF: <a href="https://github.com/llvm/llvm-project/commit/cc69d211d0d65d7bf0335fecbc323f784ac3afcc.diff" class="">https://github.com/llvm/llvm-project/commit/cc69d211d0d65d7bf0335fecbc323f784ac3afcc.diff</a><br class=""><br class="">LOG: [libc++/abi] Clean up uses of <iostream> in the test suite<br class=""><br class="">We used <iostream> in several places where we don't actually need the<br class="">full power of <iostream>, and where using basic `std::printf` is enough.<br class="">This is better, since `std::printf` can be supported on systems that don't<br class="">have a notion of locales, while <iostream> can't.<br class=""><br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">diff  --git a/libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp b/libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp<br class="">index bb0ad1da30c7..c8753b02f7f3 100644<br class="">--- a/libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp<br class="">+++ b/libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp<br class="">@@ -130,11 +127,11 @@ int main(int, char**) {<br class="">   const fs::path output = p.lexically_normal();<br class="">   if (!PathEq(output, TC.expect)) {<br class="">     Failed = true;<br class="">-      std::cerr << "TEST CASE #" << ID << " FAILED: \n";<br class="">-      std::cerr << "  Input: '" << TC.input << "'\n";<br class="">-      std::cerr << "  Expected: '" << TC.expect << "'\n";<br class="">-      std::cerr << "  Output: '" << output.native() << "'";<br class="">-      std::cerr << std::endl;<br class="">+      std::printf("TEST CASE #%d FAILED:\n"<br class="">+                  "  Input: '%s'\n"<br class="">+                  "  Expected: '%s'\n"<br class="">+                  "  Output: '%s'\n",<br class="">+        ID, TC.input.c_str(), TC.expect.c_str(), output.native().c_str());<br class="">   }<br class=""> }<br class=""> return Failed;<br class=""><br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">This change, and a few other of the hunks in this commit, changed the tests to print to stdout, where they previously printed to stderr. Would you be ok with a patch that changes them back to stderr?</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">For the cases where a test fails, llvm-lit currently prints the stdout output above the stderr output, making it more work to find the relevant output of the failing test.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""></div></blockquote><div><br class=""></div><div>As I alluded to in one of your reviews, I originally used `std::printf` instead of `std::fprintf(stderr` because of platforms who support `printf` without providing a proper stderr. But I agree it makes more sense to print to stderr, and at least for the filesystem tests, we should be good to assume that we have stderr.</div><div><br class=""></div><div>Louis</div></div></body></html>