mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-02 10:04:23 +00:00
Add test for #100414
This commit is contained in:
parent
4ff587263e
commit
d464d3a700
@ -0,0 +1,24 @@
|
|||||||
|
#![allow(incomplete_features)]
|
||||||
|
#![feature(generic_const_exprs)]
|
||||||
|
|
||||||
|
trait True {}
|
||||||
|
|
||||||
|
struct Is<const V: bool>;
|
||||||
|
|
||||||
|
impl True for Is<true> {}
|
||||||
|
|
||||||
|
fn g<T>()
|
||||||
|
//~^ NOTE required by a bound in this
|
||||||
|
where
|
||||||
|
Is<{ std::mem::size_of::<T>() == 0 }>: True,
|
||||||
|
//~^ NOTE required by a bound in `g`
|
||||||
|
//~| NOTE required by this bound in `g`
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
g::<usize>();
|
||||||
|
//~^ ERROR mismatched types
|
||||||
|
//~| NOTE expected `false`, found `true`
|
||||||
|
//~| NOTE expected constant `false`
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
error[E0308]: mismatched types
|
||||||
|
--> $DIR/obligation-cause.rs:20:5
|
||||||
|
|
|
||||||
|
LL | g::<usize>();
|
||||||
|
| ^^^^^^^^^^ expected `false`, found `true`
|
||||||
|
|
|
||||||
|
= note: expected constant `false`
|
||||||
|
found constant `true`
|
||||||
|
note: required by a bound in `g`
|
||||||
|
--> $DIR/obligation-cause.rs:13:44
|
||||||
|
|
|
||||||
|
LL | fn g<T>()
|
||||||
|
| - required by a bound in this
|
||||||
|
...
|
||||||
|
LL | Is<{ std::mem::size_of::<T>() == 0 }>: True,
|
||||||
|
| ^^^^ required by this bound in `g`
|
||||||
|
|
||||||
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0308`.
|
Loading…
Reference in New Issue
Block a user