rust/tests/ui/privacy/auxiliary/issue-117997.rs

36 lines
695 B
Rust

//@ no-prefer-dynamic
//@ compile-flags: --crate-type=rlib
pub use impl_mod::TraitImplementer as Implementer;
pub use trait_mod::get_assoc;
mod impl_mod {
use crate::trait_mod::TraitWithAssocType;
pub struct TraitImplementer {}
pub struct AssociatedType {}
impl AssociatedType {
pub fn method_on_assoc(&self) -> i32 {
todo!()
}
}
impl TraitWithAssocType for TraitImplementer {
type AssocType = AssociatedType;
}
}
mod trait_mod {
use crate::Implementer;
pub fn get_assoc() -> <Implementer as TraitWithAssocType>::AssocType {
todo!()
}
pub trait TraitWithAssocType {
type AssocType;
}
}