brintos

brintos / llvm-project-archived public Read only

0
0
Text · 921 B · e13d796 Raw
35 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9// <iostream>10 11// wistream wcin;12 13// UNSUPPORTED: no-wide-characters14// REQUIRES: target={{.+}}-windows-{{.+}}15 16// FILE_DEPENDENCIES: test.dat17// RUN: %{build}18// RUN: cat test.dat | %{exec} %t.exe19 20// Check that wcin works, preserving the unicode characters, after switching21// stdin to wide mode.22 23#include <iostream>24#include <cassert>25#include <io.h>26#include <fcntl.h>27 28int main(int, char**) {29    _setmode(_fileno(stdin), _O_WTEXT);30    std::wstring str;31    std::wcin >> str;32    assert(str == L"1234\u20ac\u00e5\u00e4\u00f6");33    return 0;34}35