From a188850dedeab85df9b11222f25afc59aeb3bb94 Mon Sep 17 00:00:00 2001 From: varkor Date: Tue, 23 Apr 2019 13:20:04 +0100 Subject: [PATCH] Add a test for incorrect numbers of const args --- .../incorrect-number-of-const-args.rs | 11 ++++++++++ .../incorrect-number-of-const-args.stderr | 21 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 src/test/ui/const-generics/incorrect-number-of-const-args.rs create mode 100644 src/test/ui/const-generics/incorrect-number-of-const-args.stderr diff --git a/src/test/ui/const-generics/incorrect-number-of-const-args.rs b/src/test/ui/const-generics/incorrect-number-of-const-args.rs new file mode 100644 index 000000000000..7059e9d8348e --- /dev/null +++ b/src/test/ui/const-generics/incorrect-number-of-const-args.rs @@ -0,0 +1,11 @@ +#![feature(const_generics)] +//~^ WARN the feature `const_generics` is incomplete and may cause the compiler to crash + +fn foo() -> usize { + 0 +} + +fn main() { + foo::<0>(); //~ ERROR wrong number of const arguments: expected 2, found 1 + foo::<0, 0, 0>(); //~ ERROR wrong number of const arguments: expected 2, found 3 +} diff --git a/src/test/ui/const-generics/incorrect-number-of-const-args.stderr b/src/test/ui/const-generics/incorrect-number-of-const-args.stderr new file mode 100644 index 000000000000..11727733eb53 --- /dev/null +++ b/src/test/ui/const-generics/incorrect-number-of-const-args.stderr @@ -0,0 +1,21 @@ +warning: the feature `const_generics` is incomplete and may cause the compiler to crash + --> $DIR/incorrect-number-of-const-args.rs:1:12 + | +LL | #![feature(const_generics)] + | ^^^^^^^^^^^^^^ + +error[E0107]: wrong number of const arguments: expected 2, found 1 + --> $DIR/incorrect-number-of-const-args.rs:9:5 + | +LL | foo::<0>(); + | ^^^^^^^^ expected 2 const arguments + +error[E0107]: wrong number of const arguments: expected 2, found 3 + --> $DIR/incorrect-number-of-const-args.rs:10:17 + | +LL | foo::<0, 0, 0>(); + | ^ unexpected const argument + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0107`.