diff options
| author | Santiago Pastorino <spastorino@gmail.com> | 2021-08-19 18:18:34 -0300 |
|---|---|---|
| committer | Santiago Pastorino <spastorino@gmail.com> | 2021-08-19 18:44:53 -0300 |
| commit | 2644a159c7d43bc22ed868819a01cb9646e51b14 (patch) | |
| tree | 0fedd5c1e70f6f44367cd6f4911a00ed611a516e | |
| parent | a9ab2e55395013de116340e4cbfa0bb0263bb658 (diff) | |
Test that type alias impl trait happens in a submodule
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/defining-use-submodule.rs | 23 | ||||
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/type-alias-impl-trait.rs | 10 |
2 files changed, 23 insertions, 10 deletions
diff --git a/src/test/ui/type-alias-impl-trait/defining-use-submodule.rs b/src/test/ui/type-alias-impl-trait/defining-use-submodule.rs new file mode 100644 index 00000000000..8b51f55715e --- /dev/null +++ b/src/test/ui/type-alias-impl-trait/defining-use-submodule.rs @@ -0,0 +1,23 @@ +// check-pass + +#![feature(type_alias_impl_trait)] +#![allow(dead_code)] + +// test that the type alias impl trait defining use is in a submodule + +fn main() {} + +type Foo = impl std::fmt::Display; +type Bar = impl std::fmt::Display; + +mod foo { + pub fn foo() -> super::Foo { + "foo" + } + + pub mod bar { + pub fn bar() -> crate::Bar { + 1 + } + } +} diff --git a/src/test/ui/type-alias-impl-trait/type-alias-impl-trait.rs b/src/test/ui/type-alias-impl-trait/type-alias-impl-trait.rs index 80192d19af9..d2c8c1f63df 100644 --- a/src/test/ui/type-alias-impl-trait/type-alias-impl-trait.rs +++ b/src/test/ui/type-alias-impl-trait/type-alias-impl-trait.rs @@ -11,7 +11,6 @@ fn main() { assert_eq!(bar2().to_string(), "bar2"); let mut x = bar1(); x = bar2(); - assert_eq!(boo::boo().to_string(), "boo"); assert_eq!(my_iter(42u8).collect::<Vec<u8>>(), vec![42u8]); } @@ -33,15 +32,6 @@ fn bar2() -> Bar { "bar2" } -// definition in submodule -type Boo = impl std::fmt::Display; - -mod boo { - pub fn boo() -> super::Boo { - "boo" - } -} - type MyIter<T> = impl Iterator<Item = T>; fn my_iter<T>(t: T) -> MyIter<T> { |
