wcin.sh.cpp 854 Bytes
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// XFAIL: libcpp-has-no-stdin

// <iostream>

// istream wcin;

// RUN: %{build}
// RUN: %{exec} echo "123" \| %t.exe > %t.out
// RUN: grep -e 'The number is 123!' %t.out

#include <iostream>
#include <cassert>

#include "test_macros.h"

int main(int, char**)
{
    int i;
    std::wcin >> i;
    std::wcout << L"The number is " << i << L"!";

#ifdef _LIBCPP_HAS_NO_STDOUT
    assert(std::wcin.tie() == NULL);
#else
    assert(std::wcin.tie() == &std::wcout);
#endif

    return 0;
}