test: Update Emscripten failures/passing
All tests should now have annotation for *why* they're ignored on emscripten. A few tests no longer need such an annotation as well! Closes #41299
This commit is contained in:
parent
0be6863a15
commit
d9ecdfe3a7
|
@ -16,6 +16,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||
COPY scripts/emscripten.sh /scripts/
|
||||
RUN bash /scripts/emscripten.sh
|
||||
|
||||
COPY scripts/sccache.sh /scripts/
|
||||
RUN sh /scripts/sccache.sh
|
||||
|
||||
ENV PATH=$PATH:/emsdk-portable
|
||||
ENV PATH=$PATH:/emsdk-portable/clang/e1.37.13_64bit/
|
||||
ENV PATH=$PATH:/emsdk-portable/emscripten/1.37.13/
|
||||
|
@ -28,7 +31,4 @@ ENV TARGETS=asmjs-unknown-emscripten
|
|||
|
||||
ENV RUST_CONFIGURE_ARGS --target=$TARGETS
|
||||
|
||||
ENV SCRIPT python2.7 ../x.py test --target $TARGETS
|
||||
|
||||
COPY scripts/sccache.sh /scripts/
|
||||
RUN sh /scripts/sccache.sh
|
||||
ENV SCRIPT python2.7 ../x.py test --target $TARGETS src/test/run-pass
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no asm! support
|
||||
|
||||
#![feature(asm, rustc_attrs)]
|
||||
#![allow(unused)]
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// pretty-expanded FIXME #23616
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no asm
|
||||
|
||||
#![feature(asm)]
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// ignore-windows - this is a unix-specific test
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(process_exec, libc)]
|
||||
|
||||
|
|
|
@ -10,7 +10,8 @@
|
|||
|
||||
// ignore-windows - this is a unix-specific test
|
||||
// ignore-pretty issue #37199
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(process_exec)]
|
||||
|
||||
use std::env;
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// compile-flags:--test
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
// NB: These tests kill child processes. Valgrind sees these children as leaking
|
||||
// memory, which makes for some *confusing* logs. That's why these are here
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env::args;
|
||||
use std::process::Command;
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
// ignore-android
|
||||
// ignore-windows
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no execve
|
||||
// no-prefer-dynamic
|
||||
|
||||
#![feature(libc)]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten env vars don't work?
|
||||
|
||||
#![feature(path)]
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
// pretty-expanded FIXME #23616
|
||||
// ignore-msvc
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten emcc asserts on an empty struct as an argument
|
||||
|
||||
#[repr(C)]
|
||||
struct TwoU8s {
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// ignore-windows
|
||||
// ignore-android
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
// ignore-haiku
|
||||
|
||||
#![feature(libc)]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten missing rust_begin_unwind
|
||||
// ignore-emscripten no no_std executables
|
||||
|
||||
#![feature(lang_items, start, alloc)]
|
||||
#![no_std]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no threads support
|
||||
// compile-flags: --test
|
||||
|
||||
#![feature(generators, generator_trait)]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten i128 doesn't work
|
||||
|
||||
#![feature(i128_type, test)]
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
// Make sure that if a process doesn't have its stdio/stderr descriptors set up
|
||||
// that we don't die in a large ball of fire
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(io, process_capture)]
|
||||
|
||||
use std::env;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(io, process_capture)]
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::process::Command;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(std_misc, os)]
|
||||
|
||||
#[cfg(unix)]
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// pretty-expanded FIXME #23616
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no threads
|
||||
|
||||
use std::thread::Builder;
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no threads
|
||||
|
||||
use std::thread;
|
||||
use std::env;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no threads
|
||||
// compile-flags: -O
|
||||
|
||||
// Tests that the `vec!` macro does not overflow the stack when it is
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// aux-build:issue-29485.rs
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no threads
|
||||
|
||||
#[feature(recover)]
|
||||
|
||||
|
|
|
@ -10,8 +10,6 @@
|
|||
|
||||
// write_volatile causes an LLVM assert with composite types
|
||||
|
||||
// ignore-emscripten See #41299: probably a bad optimization
|
||||
|
||||
#![feature(volatile)]
|
||||
use std::ptr::{read_volatile, write_volatile};
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
// Previously libstd would set stdio descriptors of a child process
|
||||
// by `dup`ing the requested descriptors to inherit directly into the
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::{Command, Stdio};
|
||||
use std::env;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// ignore-windows
|
||||
// ignore-macos
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten doesn't support this linkage
|
||||
// aux-build:linkage1.rs
|
||||
|
||||
#![feature(linkage)]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
fn check_for_no_backtrace(test: std::process::Output) {
|
||||
assert!(!test.status.success());
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
// ignore-android
|
||||
|
||||
#![feature(libc)]
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// ignore-android: FIXME (#20004)
|
||||
// ignore-musl
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(asm)]
|
||||
#![feature(libc)]
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
// ignore-emscripten Not sure what's happening here.
|
||||
|
||||
|
||||
use std::mem;
|
||||
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
// ignore-emscripten
|
||||
|
||||
|
||||
use std::mem;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
// compile-flags:-C panic=abort
|
||||
// aux-build:exit-success-if-unwind.rs
|
||||
// no-prefer-dynamic
|
||||
// ignore-emscripten Function not implemented
|
||||
// ignore-emscripten no processes
|
||||
|
||||
extern crate exit_success_if_unwind;
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// compile-flags:-C panic=abort
|
||||
// no-prefer-dynamic
|
||||
// ignore-emscripten Function not implemented.
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// compile-flags:-C lto -C panic=abort
|
||||
// no-prefer-dynamic
|
||||
// ignore-emscripten Function not implemented.
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// compile-flags:-C lto -C panic=unwind
|
||||
// no-prefer-dynamic
|
||||
// ignore-emscripten Function not implemented.
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::process::{self, Command, Stdio};
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::process::Command;
|
||||
use std::env;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
// non-ASCII characters. The child process ensures all the strings are
|
||||
// intact.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::io::prelude::*;
|
||||
use std::io;
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
// ignore-emscripten Function not implemented.
|
||||
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::io;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten spawning processes is not supported
|
||||
|
||||
#![feature(start)]
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
// ignore-windows
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::process::Command;
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
// Be sure that when a SIGPIPE would have been received that the entire process
|
||||
// doesn't die in a ball of fire, but rather it's gracefully handled.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::io::prelude::*;
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
// ignore-emscripten linking with emcc failed
|
||||
|
||||
// ignore-emscripten FIXME(#45351) hits an LLVM assert
|
||||
|
||||
#![feature(repr_simd, platform_intrinsics, concat_idents, test)]
|
||||
#![allow(non_camel_case_types)]
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
// ignore-arm
|
||||
// ignore-aarch64
|
||||
// ignore-wasm
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
// ignore-musl FIXME #31506
|
||||
// ignore-pretty
|
||||
// no-system-llvm
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
// ignore-arm
|
||||
// ignore-aarch64
|
||||
// ignore-wasm
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
// ignore-musl FIXME #31506
|
||||
// no-system-llvm
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
use std::env;
|
||||
use std::io::prelude::*;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// compile-flags: -Z thinlto -C codegen-units=8 -O
|
||||
// min-llvm-version 4.0
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten can't inspect instructions on emscripten
|
||||
|
||||
// We want to assert here that ThinLTO will inline across codegen units. There's
|
||||
// not really a great way to do that in general so we sort of hack around it by
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
// aux-build:thin-lto-inlines-aux.rs
|
||||
// min-llvm-version 4.0
|
||||
// no-prefer-dynamic
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten can't inspect instructions on emscripten
|
||||
|
||||
// We want to assert here that ThinLTO will inline across codegen units. There's
|
||||
// not really a great way to do that in general so we sort of hack around it by
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(process_try_wait)]
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten u128 not supported
|
||||
|
||||
#![feature(i128_type, test)]
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten missing rust_begin_unwind
|
||||
// ignore-emscripten no no_std executables
|
||||
|
||||
#![feature(lang_items, start, libc, alloc)]
|
||||
#![no_std]
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// ignore-emscripten
|
||||
// ignore-emscripten no processes
|
||||
|
||||
#![feature(libc)]
|
||||
|
||||
|
|
Loading…
Reference in New Issue