about summary refs log tree commit diff
diff options
context:
space:
mode:
authorYuki Okushi <yuki.okushi@huawei.com>2021-07-04 14:39:27 +0900
committerYuki Okushi <yuki.okushi@huawei.com>2021-07-05 01:45:46 +0900
commit2512e9606b2f8883873cf6a1894a2099e9c679b7 (patch)
tree489d0c758905260f1100d25ad511b32cb34484e8
parent308fc2322bf00b5dc12454489679de1420320f56 (diff)
downloadrust-2512e9606b2f8883873cf6a1894a2099e9c679b7.tar.gz
rust-2512e9606b2f8883873cf6a1894a2099e9c679b7.zip
Add a regression test for issue-69323
-rw-r--r--src/test/ui/type-alias-impl-trait/issue-69323.full.stderr11
-rw-r--r--src/test/ui/type-alias-impl-trait/issue-69323.rs19
2 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/type-alias-impl-trait/issue-69323.full.stderr b/src/test/ui/type-alias-impl-trait/issue-69323.full.stderr
new file mode 100644
index 00000000000..71cc6f61c37
--- /dev/null
+++ b/src/test/ui/type-alias-impl-trait/issue-69323.full.stderr
@@ -0,0 +1,11 @@
+warning: the feature `type_alias_impl_trait` is incomplete and may not be safe to use and/or cause compiler crashes
+  --> $DIR/issue-69323.rs:5:27
+   |
+LL | #![cfg_attr(full, feature(type_alias_impl_trait))]
+   |                           ^^^^^^^^^^^^^^^^^^^^^
+   |
+   = note: `#[warn(incomplete_features)]` on by default
+   = note: see issue #63063 <https://github.com/rust-lang/rust/issues/63063> for more information
+
+warning: 1 warning emitted
+
diff --git a/src/test/ui/type-alias-impl-trait/issue-69323.rs b/src/test/ui/type-alias-impl-trait/issue-69323.rs
new file mode 100644
index 00000000000..824558c1b34
--- /dev/null
+++ b/src/test/ui/type-alias-impl-trait/issue-69323.rs
@@ -0,0 +1,19 @@
+// check-pass
+
+// revisions: min full
+#![feature(min_type_alias_impl_trait)]
+#![cfg_attr(full, feature(type_alias_impl_trait))]
+//[full]~^ WARN incomplete
+
+use std::iter::{once, Chain};
+
+fn test1<A: Iterator<Item = &'static str>>(x: A) -> Chain<A, impl Iterator<Item = &'static str>> {
+    x.chain(once(","))
+}
+
+type I<A> = Chain<A, impl Iterator<Item = &'static str>>;
+fn test2<A: Iterator<Item = &'static str>>(x: A) -> I<A> {
+    x.chain(once(","))
+}
+
+fn main() {}