diff options
| author | Dylan DPC <dylan.dpc@gmail.com> | 2020-04-17 03:05:16 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-17 03:05:16 +0200 |
| commit | b347097e4d729345bd7b1b1afdef2bccf904896e (patch) | |
| tree | 8e2ce69376b185693ef30b82461fdfdf8ac122f7 /src/test | |
| parent | 5280d15d62356fc9d5d7aa23180e5ccad468e521 (diff) | |
| parent | a6855b918b249751436d737d3f8bd2af23613101 (diff) | |
| download | rust-b347097e4d729345bd7b1b1afdef2bccf904896e.tar.gz rust-b347097e4d729345bd7b1b1afdef2bccf904896e.zip | |
Rollup merge of #71182 - JohnTitor:regression-tests, r=Mark-Simulacrum
Add some regression tests Closes #24843 Closes #28575 Closes #54067 Closes #66868 Closes #67893 Closes #68813
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/asm/issue-54067.rs | 12 | ||||
| -rw-r--r-- | src/test/ui/async-await/issues/auxiliary/issue_67893.rs | 10 | ||||
| -rw-r--r-- | src/test/ui/async-await/issues/issue-67893.rs | 13 | ||||
| -rw-r--r-- | src/test/ui/intrinsics/issue-28575.rs | 9 | ||||
| -rw-r--r-- | src/test/ui/intrinsics/issue-28575.stderr | 11 | ||||
| -rw-r--r-- | src/test/ui/static/auxiliary/issue_24843.rs | 1 | ||||
| -rw-r--r-- | src/test/ui/static/issue-24843.rs | 8 |
7 files changed, 64 insertions, 0 deletions
diff --git a/src/test/ui/asm/issue-54067.rs b/src/test/ui/asm/issue-54067.rs new file mode 100644 index 00000000000..f2e097222bd --- /dev/null +++ b/src/test/ui/asm/issue-54067.rs @@ -0,0 +1,12 @@ +// check-pass +// ignore-emscripten no llvm_asm! support + +#![feature(llvm_asm)] + +pub fn boot(addr: Option<u32>) { + unsafe { + llvm_asm!("mov sp, $0"::"r" (addr)); + } +} + +fn main() {} diff --git a/src/test/ui/async-await/issues/auxiliary/issue_67893.rs b/src/test/ui/async-await/issues/auxiliary/issue_67893.rs new file mode 100644 index 00000000000..387966a5064 --- /dev/null +++ b/src/test/ui/async-await/issues/auxiliary/issue_67893.rs @@ -0,0 +1,10 @@ +// edition:2018 + +use std::sync::{Arc, Mutex}; + +pub async fn f(_: ()) {} + +pub async fn run() { + let x: Arc<Mutex<()>> = unimplemented!(); + f(*x.lock().unwrap()).await; +} diff --git a/src/test/ui/async-await/issues/issue-67893.rs b/src/test/ui/async-await/issues/issue-67893.rs new file mode 100644 index 00000000000..d52303ac1ce --- /dev/null +++ b/src/test/ui/async-await/issues/issue-67893.rs @@ -0,0 +1,13 @@ +// aux-build: issue_67893.rs +// edition:2018 +// dont-check-compiler-stderr +// FIXME(#71222): Add above flag because of the difference of stderrs on some env. + +extern crate issue_67893; + +fn g(_: impl Send) {} + +fn main() { + g(issue_67893::run()) + //~^ ERROR: `std::sync::MutexGuard<'_, ()>` cannot be sent between threads safely +} diff --git a/src/test/ui/intrinsics/issue-28575.rs b/src/test/ui/intrinsics/issue-28575.rs new file mode 100644 index 00000000000..141136d25b2 --- /dev/null +++ b/src/test/ui/intrinsics/issue-28575.rs @@ -0,0 +1,9 @@ +#![feature(intrinsics)] + +extern "C" { + pub static FOO: extern "rust-intrinsic" fn(); +} + +fn main() { + FOO() //~ ERROR: use of extern static is unsafe +} diff --git a/src/test/ui/intrinsics/issue-28575.stderr b/src/test/ui/intrinsics/issue-28575.stderr new file mode 100644 index 00000000000..66369decf42 --- /dev/null +++ b/src/test/ui/intrinsics/issue-28575.stderr @@ -0,0 +1,11 @@ +error[E0133]: use of extern static is unsafe and requires unsafe function or block + --> $DIR/issue-28575.rs:8:5 + | +LL | FOO() + | ^^^ use of extern static + | + = note: extern statics are not controlled by the Rust type system: invalid data, aliasing violations or data races will cause undefined behavior + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0133`. diff --git a/src/test/ui/static/auxiliary/issue_24843.rs b/src/test/ui/static/auxiliary/issue_24843.rs new file mode 100644 index 00000000000..6ca04f86060 --- /dev/null +++ b/src/test/ui/static/auxiliary/issue_24843.rs @@ -0,0 +1 @@ +pub static TEST_STR: &'static str = "Hello world"; diff --git a/src/test/ui/static/issue-24843.rs b/src/test/ui/static/issue-24843.rs new file mode 100644 index 00000000000..0b3397e210d --- /dev/null +++ b/src/test/ui/static/issue-24843.rs @@ -0,0 +1,8 @@ +// aux-build: issue_24843.rs +// check-pass + +extern crate issue_24843; + +static _TEST_STR_2: &'static str = &issue_24843::TEST_STR; + +fn main() {} |
