diff options
| author | Oli Scherer <github35764891676564198441@oli-obk.de> | 2021-03-19 13:30:27 +0000 |
|---|---|---|
| committer | Oli Scherer <github35764891676564198441@oli-obk.de> | 2021-03-19 13:44:50 +0000 |
| commit | 957705802ee2f255ec57e42fe60a59a60e56a425 (patch) | |
| tree | 08e699b9bde01abf07f30866e7ceb23f6d732034 | |
| parent | 430c0d1d95475f5edb066da53c3b2174d6223d80 (diff) | |
| download | rust-957705802ee2f255ec57e42fe60a59a60e56a425.tar.gz rust-957705802ee2f255ec57e42fe60a59a60e56a425.zip | |
Add a second regression test
| -rw-r--r-- | src/test/ui/const-generics/type_mismatch.rs | 9 | ||||
| -rw-r--r-- | src/test/ui/const-generics/type_mismatch.stderr | 23 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/type_mismatch.rs b/src/test/ui/const-generics/type_mismatch.rs new file mode 100644 index 00000000000..4a7534e3713 --- /dev/null +++ b/src/test/ui/const-generics/type_mismatch.rs @@ -0,0 +1,9 @@ +fn foo<const N: usize>() -> [u8; N] { + bar::<N>() //~ ERROR mismatched types +} + +fn bar<const N: u8>() -> [u8; N] {} +//~^ ERROR mismatched types +//~| ERROR mismatched types + +fn main() {} diff --git a/src/test/ui/const-generics/type_mismatch.stderr b/src/test/ui/const-generics/type_mismatch.stderr new file mode 100644 index 00000000000..f5053e4c8c8 --- /dev/null +++ b/src/test/ui/const-generics/type_mismatch.stderr @@ -0,0 +1,23 @@ +error[E0308]: mismatched types + --> $DIR/type_mismatch.rs:2:11 + | +LL | bar::<N>() + | ^ expected `u8`, found `usize` + +error[E0308]: mismatched types + --> $DIR/type_mismatch.rs:5:31 + | +LL | fn bar<const N: u8>() -> [u8; N] {} + | ^ expected `usize`, found `u8` + +error[E0308]: mismatched types + --> $DIR/type_mismatch.rs:5:26 + | +LL | fn bar<const N: u8>() -> [u8; N] {} + | --- ^^^^^^^ expected array `[u8; N]`, found `()` + | | + | implicitly returns `()` as its body has no tail or `return` expression + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0308`. |
