diff options
| author | bors <bors@rust-lang.org> | 2020-09-30 20:49:27 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2020-09-30 20:49:27 +0000 |
| commit | ef663a8a48ea6b98b43cbfaefd99316b36b16825 (patch) | |
| tree | 98502334aa6c2c0bd30ddf371d4cebe1e21d2a1e /src/test | |
| parent | 867bd42c38bac3870388765f65386b18cf1d9c5f (diff) | |
| parent | 3624a901345c9c384aa9d1e27e21d0c4cd2c85ae (diff) | |
Auto merge of #77372 - jonas-schievink:rollup-e5bdzga, r=jonas-schievink
Rollup of 12 pull requests Successful merges: - #77037 (more tiny clippy cleanups) - #77233 (BTreeMap: keep an eye out on the size of the main components) - #77280 (Ensure that all LLVM components requested by tests are available on CI) - #77284 (library: Forward compiler-builtins "mem" feature) - #77296 (liveness: Use Option::None to represent absent live nodes) - #77322 (Add unstable book docs for `-Zunsound-mir-opts`) - #77328 (Use `rtassert!` instead of `assert!` from the child process after fork() in std::sys::unix::process::Command::spawn()) - #77331 (Add test for async/await combined with const-generics.) - #77338 (Fix typo in alloc vec comment) - #77340 (Alloc vec use imported path) - #77345 (Add test for issue #74761) - #77348 (Update books) Failed merges: r? `@ghost`
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/const-generics/issue-74906.rs | 25 | ||||
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/issue-74761.rs | 16 | ||||
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/issue-74761.stderr | 15 |
3 files changed, 56 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/issue-74906.rs b/src/test/ui/const-generics/issue-74906.rs new file mode 100644 index 00000000000..9162d1142b6 --- /dev/null +++ b/src/test/ui/const-generics/issue-74906.rs @@ -0,0 +1,25 @@ +// edition:2018 +// check-pass +// revisions: full min +#![cfg_attr(full, feature(const_generics))] +#![cfg_attr(full, allow(incomplete_features))] +#![cfg_attr(min, feature(min_const_generics))] + +const SIZE: usize = 16; + +struct Bar<const H: usize> {} + +struct Foo<const H: usize> {} + +impl<const H: usize> Foo<H> { + async fn biz(_: &[[u8; SIZE]]) -> Vec<()> { + vec![] + } + + pub async fn baz(&self) -> Bar<H> { + Self::biz(&vec![]).await; + Bar {} + } +} + +fn main() { } diff --git a/src/test/ui/type-alias-impl-trait/issue-74761.rs b/src/test/ui/type-alias-impl-trait/issue-74761.rs new file mode 100644 index 00000000000..4345b5d886e --- /dev/null +++ b/src/test/ui/type-alias-impl-trait/issue-74761.rs @@ -0,0 +1,16 @@ +#![feature(member_constraints)] +#![feature(type_alias_impl_trait)] + +pub trait A { + type B; + fn f(&self) -> Self::B; +} +impl<'a, 'b> A for () { + //~^ ERROR the lifetime parameter `'a` is not constrained + //~| ERROR the lifetime parameter `'b` is not constrained + type B = impl core::fmt::Debug; + + fn f(&self) -> Self::B {} +} + +fn main() {} diff --git a/src/test/ui/type-alias-impl-trait/issue-74761.stderr b/src/test/ui/type-alias-impl-trait/issue-74761.stderr new file mode 100644 index 00000000000..3f38fa4de01 --- /dev/null +++ b/src/test/ui/type-alias-impl-trait/issue-74761.stderr @@ -0,0 +1,15 @@ +error[E0207]: the lifetime parameter `'a` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-74761.rs:8:6 + | +LL | impl<'a, 'b> A for () { + | ^^ unconstrained lifetime parameter + +error[E0207]: the lifetime parameter `'b` is not constrained by the impl trait, self type, or predicates + --> $DIR/issue-74761.rs:8:10 + | +LL | impl<'a, 'b> A for () { + | ^^ unconstrained lifetime parameter + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0207`. |
