add regression test for #91489
This commit is contained in:
parent
5166f68754
commit
c5f8788d8d
40
src/test/ui/issues/issue-91489.rs
Normal file
40
src/test/ui/issues/issue-91489.rs
Normal file
@ -0,0 +1,40 @@
|
||||
// check-pass
|
||||
|
||||
// regression test for #91489
|
||||
|
||||
use std::borrow::Borrow;
|
||||
use std::borrow::Cow;
|
||||
|
||||
pub struct VariantType {}
|
||||
pub struct VariantTy {}
|
||||
|
||||
impl Borrow<VariantTy> for VariantType {
|
||||
fn borrow(&self) -> &VariantTy {
|
||||
unimplemented!()
|
||||
}
|
||||
}
|
||||
|
||||
impl ToOwned for VariantTy {
|
||||
type Owned = VariantType;
|
||||
fn to_owned(&self) -> VariantType {
|
||||
unimplemented!()
|
||||
}
|
||||
}
|
||||
|
||||
impl VariantTy {
|
||||
pub fn as_str(&self) -> () {}
|
||||
}
|
||||
|
||||
// the presence of this was causing all attempts to call `as_str` on
|
||||
// `Cow<'_, VariantTy>, including in itself, to not find the method
|
||||
static _TYP: () = {
|
||||
let _ = || {
|
||||
// should be found
|
||||
Cow::Borrowed(&VariantTy {}).as_str();
|
||||
};
|
||||
};
|
||||
|
||||
fn main() {
|
||||
// should be found
|
||||
Cow::Borrowed(&VariantTy {}).as_str()
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user