add regression test for #50439
This commit is contained in:
parent
bf45371f26
commit
9facb6c7dd
2 changed files with 39 additions and 0 deletions
29
src/test/ui/consts/issue-50439.rs
Normal file
29
src/test/ui/consts/issue-50439.rs
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
#![feature(specialization)]
|
||||
#![allow(incomplete_features)]
|
||||
|
||||
pub trait ReflectDrop {
|
||||
const REFLECT_DROP: bool = false;
|
||||
}
|
||||
|
||||
impl<T> ReflectDrop for T where T: Clone {}
|
||||
|
||||
pub trait PinDropInternal {
|
||||
fn is_valid()
|
||||
where
|
||||
Self: ReflectDrop;
|
||||
}
|
||||
|
||||
struct Bears<T>(T);
|
||||
|
||||
default impl<T> ReflectDrop for Bears<T> {}
|
||||
|
||||
impl<T: Sized> PinDropInternal for Bears<T> {
|
||||
fn is_valid()
|
||||
where
|
||||
Self: ReflectDrop,
|
||||
{
|
||||
let _ = [(); 0 - !!(<Bears<T> as ReflectDrop>::REFLECT_DROP) as usize]; //~ ERROR constant expression depends on a generic parameter
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
10
src/test/ui/consts/issue-50439.stderr
Normal file
10
src/test/ui/consts/issue-50439.stderr
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
error: constant expression depends on a generic parameter
|
||||
--> $DIR/issue-50439.rs:25:22
|
||||
|
|
||||
LL | let _ = [(); 0 - !!(<Bears<T> as ReflectDrop>::REFLECT_DROP) as usize];
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: this may fail depending on what value the parameter takes
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue