[libcxx-commits] [libcxx] [libc++][AIX] Use input redirection instead of piping for cin tests (PR #83184)
Jake Egan via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Feb 27 13:02:16 PST 2024
https://github.com/jakeegan created https://github.com/llvm/llvm-project/pull/83184
When echo is used for piping, lit uses the system echo rather than the builtin echo. The system echo on AIX doesn't support the `-n` option, which causes these tests to fail. Use input redirection, so the builtin echo can be used.
>From 3c128eedc9d5494c04f9675f5e434e656596f5cd Mon Sep 17 00:00:00 2001
From: Jake Egan <5326451+jakeegan at users.noreply.github.com>
Date: Tue, 27 Feb 2024 15:55:59 -0500
Subject: [PATCH] [libc++][AIX] Use input redirection instead of piping for cin
tests
---
.../iostream.objects/narrow.stream.objects/cin.sh.cpp | 6 ++----
.../iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp | 6 ++----
.../iostream.objects/wide.stream.objects/wcin.sh.cpp | 6 ++----
3 files changed, 6 insertions(+), 12 deletions(-)
diff --git a/libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp b/libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
index ce6a7f37801e10..4f23b6b9a5d877 100644
--- a/libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
+++ b/libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
@@ -6,9 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// TODO: Investigate
-// UNSUPPORTED: LIBCXX-AIX-FIXME
-
// QEMU does not detect EOF, when reading from stdin
// "echo -n" suppresses any characters after the output and so the test hangs.
// https://gitlab.com/qemu-project/qemu/-/issues/1963
@@ -23,7 +20,8 @@
// istream cin;
// RUN: %{build}
-// RUN: echo -n 1234 | %{exec} %t.exe
+// RUN: echo -n 1234 > %t.input
+// RUN: %{exec} %t.exe < %t.input
#include <iostream>
#include <cassert>
diff --git a/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp b/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
index 027e4fa936f11d..6ae1972234b2bf 100644
--- a/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
+++ b/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
@@ -6,9 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// TODO: Investigate
-// UNSUPPORTED: LIBCXX-AIX-FIXME
-
// This test hangs on Android devices that lack shell_v2, which was added in
// Android N (API 24).
// UNSUPPORTED: LIBCXX-ANDROID-FIXME && android-device-api={{2[1-3]}}
@@ -20,7 +17,8 @@
// UNSUPPORTED: no-wide-characters
// RUN: %{build}
-// RUN: echo -n 1234 | %{exec} %t.exe
+// RUN: echo -n 1234 > %t.input
+// RUN: %{exec} %t.exe < %t.input
#include <iostream>
#include <cassert>
diff --git a/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp b/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp
index 30972da2f09348..08b74b999bbf4f 100644
--- a/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp
+++ b/libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp
@@ -6,9 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// TODO: Investigate
-// UNSUPPORTED: LIBCXX-AIX-FIXME
-
// This test hangs on Android devices that lack shell_v2, which was added in
// Android N (API 24).
// UNSUPPORTED: LIBCXX-ANDROID-FIXME && android-device-api={{2[1-3]}}
@@ -20,7 +17,8 @@
// UNSUPPORTED: no-wide-characters
// RUN: %{build}
-// RUN: echo -n 1234 | %{exec} %t.exe
+// RUN: echo -n 1234 > %t.input
+// RUN: %{exec} %t.exe < %t.input
#include <iostream>
#include <cassert>
More information about the libcxx-commits
mailing list