Skip to content

Commit

Permalink
Auto merge of #1440 - RalfJung:wtf8, r=RalfJung
Browse files Browse the repository at this point in the history
test WTF8 encoding corner cases

This adds a Miri-side test for rust-lang/rust#72760.

Blocked on rust-lang/rust#72683.
  • Loading branch information
bors committed May 31, 2020
2 parents 4fd0aa3 + 7cd68eb commit a8df047
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
2 changes: 1 addition & 1 deletion rust-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
b6fa392238a459c29a47e2cf824d79a49a8ba039
5fd2f06e99a985dd896684cb2c9f8c7090eca1ab
23 changes: 23 additions & 0 deletions tests/run-pass/wtf8.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// ignore-linux: tests Windows-only APIs
// ignore-macos: tests Windows-only APIs

use std::os::windows::ffi::{OsStrExt, OsStringExt};
use std::ffi::{OsStr, OsString};

fn test1() {
let base = "a\té \u{7f}💩\r";
let mut base: Vec<u16> = OsStr::new(base).encode_wide().collect();
base.push(0xD800);
let _res = OsString::from_wide(&base);
}

fn test2() {
let mut base: Vec<u16> = OsStr::new("aé ").encode_wide().collect();
base.push(0xD83D);
let mut _res: Vec<u16> = OsString::from_wide(&base).encode_wide().collect();
}

fn main() {
test1();
test2();
}

0 comments on commit a8df047

Please sign in to comment.