Skip to content

Commit

Permalink
Auto merge of #75166 - JulianKnodt:i64494, r=lcnr
Browse files Browse the repository at this point in the history
Add regression test for #64494

Add regression test to indicate if this compilation ever succeeds.
Fixes #64494

r? @lcnr
  • Loading branch information
bors committed Aug 5, 2020
2 parents 52b179b + 7dd1b6a commit 22ee68d
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 0 deletions.
19 changes: 19 additions & 0 deletions src/test/ui/const-generics/issues/issue-64494.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#![feature(const_generics)]
#![allow(incomplete_features)]

trait Foo {
const VAL: usize;
}

trait MyTrait {}

trait True {}
struct Is<const T: bool>;
impl True for Is<{true}> {}

impl<T: Foo> MyTrait for T where Is<{T::VAL == 5}>: True {}
//~^ ERROR constant expression depends on a generic parameter
impl<T: Foo> MyTrait for T where Is<{T::VAL == 6}>: True {}
//~^ ERROR constant expression depends on a generic parameter

fn main() {}
18 changes: 18 additions & 0 deletions src/test/ui/const-generics/issues/issue-64494.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
error: constant expression depends on a generic parameter
--> $DIR/issue-64494.rs:14:53
|
LL | impl<T: Foo> MyTrait for T where Is<{T::VAL == 5}>: True {}
| ^^^^
|
= note: this may fail depending on what value the parameter takes

error: constant expression depends on a generic parameter
--> $DIR/issue-64494.rs:16:53
|
LL | impl<T: Foo> MyTrait for T where Is<{T::VAL == 6}>: True {}
| ^^^^
|
= note: this may fail depending on what value the parameter takes

error: aborting due to 2 previous errors

0 comments on commit 22ee68d

Please sign in to comment.