Update stderr files
And also fix some comments as suggested by lcnr
This commit is contained in:
parent
9bf40f10bc
commit
5c0b416dde
65 changed files with 85 additions and 960 deletions
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/apit-with-const-param.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Tests that array sizes that depend on const-params does not yet work.
|
// Tests that array sizes that depend on const-params are checked using `ConstEvaluatable`.
|
||||||
// revisions: full min
|
// revisions: full min
|
||||||
|
|
||||||
#![cfg_attr(full, feature(const_generics))]
|
#![cfg_attr(full, feature(const_generics))]
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/array-size-in-generic-struct-param.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/array-size-in-generic-struct-param.rs:5:38
|
|
||||||
|
|
|
||||||
LL | struct ArithArrayLen<const N: usize>([u32; 0 + N]);
|
|
||||||
| ^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/array-size-in-generic-struct-param.rs:14:10
|
|
||||||
|
|
|
||||||
LL | arr: [u8; CFG.arr_size],
|
|
||||||
| ^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/broken-mir-1.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/broken-mir-2.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,20 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/cannot-infer-const-args.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0282]: type annotations needed
|
|
||||||
--> $DIR/cannot-infer-const-args.rs:9:5
|
|
||||||
|
|
|
||||||
LL | foo();
|
|
||||||
| ^^^
|
|
||||||
|
|
|
||||||
= note: unable to infer the value of a const parameter
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0282`.
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/concrete-const-as-fn-arg.rs:4:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/concrete-const-impl-method.rs:5:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Checks whether conditions in traits can be evaluated.
|
// Checks that `impl Trait<{anon_const}> for Type` evaluates successfully.
|
||||||
// run-pass
|
// run-pass
|
||||||
// revisions: full min
|
// revisions: full min
|
||||||
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/condition-in-trait-const-arg.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
// Check that const args in functions can be used.
|
|
||||||
// run-pass
|
// run-pass
|
||||||
// revisions: full min
|
// revisions: full min
|
||||||
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-arg-in-fn.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// run-pass
|
// run-pass
|
||||||
// revisions: full
|
// revisions: full
|
||||||
// FIXME Omitted min revision for now due to ICE.
|
// FIXME(#75323) Omitted min revision for now due to ICE.
|
||||||
|
|
||||||
#![cfg_attr(full, feature(const_generics))]
|
#![cfg_attr(full, feature(const_generics))]
|
||||||
#![cfg_attr(full, allow(incomplete_features))]
|
#![cfg_attr(full, allow(incomplete_features))]
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-argument-non-static-lifetime.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
error: expected one of `,` or `>`, found `+`
|
|
||||||
--> $DIR/const-expression-parameter.rs:13:22
|
|
||||||
|
|
|
||||||
LL | i32_identity::<1 + 2>();
|
|
||||||
| ^ expected one of `,` or `>`
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-expression-parameter.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Check `const fn` with const param is alright
|
// Checks that `const fn` with const params can be used.
|
||||||
// run-pass
|
// run-pass
|
||||||
// revisions: full min
|
// revisions: full min
|
||||||
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-fn-with-const-param.rs:2:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-generic-array-wrapper.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-generic-type_name.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
error[E0637]: `&` without an explicit lifetime name cannot be used here
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:9:19
|
|
||||||
|
|
|
||||||
LL | struct A<const N: &u8>;
|
|
||||||
| ^ explicit lifetime name needed here
|
|
||||||
|
|
||||||
error[E0637]: `&` without an explicit lifetime name cannot be used here
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:13:15
|
|
||||||
|
|
|
||||||
LL | impl<const N: &u8> A<N> {
|
|
||||||
| ^ explicit lifetime name needed here
|
|
||||||
|
|
||||||
error[E0637]: `&` without an explicit lifetime name cannot be used here
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:14:21
|
|
||||||
|
|
|
||||||
LL | fn foo<const M: &u8>(&self) {}
|
|
||||||
| ^ explicit lifetime name needed here
|
|
||||||
|
|
||||||
error[E0637]: `&` without an explicit lifetime name cannot be used here
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:18:15
|
|
||||||
|
|
|
||||||
LL | impl<const N: &u8> B for A<N> {}
|
|
||||||
| ^ explicit lifetime name needed here
|
|
||||||
|
|
||||||
error[E0637]: `&` without an explicit lifetime name cannot be used here
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:21:17
|
|
||||||
|
|
|
||||||
LL | fn bar<const N: &u8>() {}
|
|
||||||
| ^ explicit lifetime name needed here
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-param-elided-lifetime.rs:6:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: aborting due to 5 previous errors; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0637`.
|
|
|
@ -1,22 +0,0 @@
|
||||||
error[E0401]: can't use generic parameters from outer function
|
|
||||||
--> $DIR/const-param-from-outer-fn.rs:6:9
|
|
||||||
|
|
|
||||||
LL | fn foo<const X: u32>() {
|
|
||||||
| - const parameter from outer function
|
|
||||||
LL | fn bar() -> u32 {
|
|
||||||
| --- try adding a local generic parameter in this method instead
|
|
||||||
LL | X
|
|
||||||
| ^ use of generic parameter from outer function
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-param-from-outer-fn.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0401`.
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-param-in-trait.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
error[E0770]: the type of const parameters must not depend on other generic parameters
|
|
||||||
--> $DIR/const-param-type-depends-on-const-param.rs:9:52
|
|
||||||
|
|
|
||||||
LL | pub struct Dependent<const N: usize, const X: [u8; N]>([(); N]);
|
|
||||||
| ^ the type must not depend on the parameter `N`
|
|
||||||
|
|
||||||
error[E0770]: the type of const parameters must not depend on other generic parameters
|
|
||||||
--> $DIR/const-param-type-depends-on-const-param.rs:12:40
|
|
||||||
|
|
|
||||||
LL | pub struct SelfDependent<const N: [u8; N]>;
|
|
||||||
| ^ the type must not depend on the parameter `N`
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-param-type-depends-on-const-param.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0770`.
|
|
|
@ -1,27 +0,0 @@
|
||||||
error[E0770]: the type of const parameters must not depend on other generic parameters
|
|
||||||
--> $DIR/const-param-type-depends-on-type-param.rs:9:34
|
|
||||||
|
|
|
||||||
LL | pub struct Dependent<T, const X: T>([(); X]);
|
|
||||||
| ^ the type must not depend on the parameter `T`
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-param-type-depends-on-type-param.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0392]: parameter `T` is never used
|
|
||||||
--> $DIR/const-param-type-depends-on-type-param.rs:9:22
|
|
||||||
|
|
|
||||||
LL | pub struct Dependent<T, const X: T>([(); X]);
|
|
||||||
| ^ unused parameter
|
|
||||||
|
|
|
||||||
= help: consider removing `T`, referring to it in a field, or using a marker such as `std::marker::PhantomData`
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
||||||
Some errors have detailed explanations: E0392, E0770.
|
|
||||||
For more information about an error, try `rustc --explain E0392`.
|
|
|
@ -1,23 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-parameter-uppercase-lint.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: const parameter `x` should have an upper case name
|
|
||||||
--> $DIR/const-parameter-uppercase-lint.rs:6:15
|
|
||||||
|
|
|
||||||
LL | fn noop<const x: u32>() {
|
|
||||||
| ^ help: convert the identifier to upper case (notice the capitalization): `X`
|
|
||||||
|
|
|
||||||
note: the lint level is defined here
|
|
||||||
--> $DIR/const-parameter-uppercase-lint.rs:4:9
|
|
||||||
|
|
|
||||||
LL | #![deny(non_upper_case_globals)]
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/const-types.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/derive-debug-array-wrapper.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/different_byref.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0308]: mismatched types
|
|
||||||
--> $DIR/different_byref.rs:8:9
|
|
||||||
|
|
|
||||||
LL | x = Const::<{ [4] }> {};
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^ expected `3_usize`, found `4_usize`
|
|
||||||
|
|
|
||||||
= note: expected type `[3_usize]`
|
|
||||||
found type `[4_usize]`
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0308`.
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
error[E0308]: mismatched types
|
||||||
|
--> $DIR/different_byref_simple.rs:12:9
|
||||||
|
|
|
||||||
|
LL | u = ConstUsize::<4> {};
|
||||||
|
| ^^^^^^^^^^^^^^^^^^ expected `3_usize`, found `4_usize`
|
||||||
|
|
|
||||||
|
= note: expected struct `ConstUsize<3_usize>`
|
||||||
|
found struct `ConstUsize<4_usize>`
|
||||||
|
|
||||||
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0308`.
|
12
src/test/ui/const-generics/different_byref_simple.min.stderr
Normal file
12
src/test/ui/const-generics/different_byref_simple.min.stderr
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
error[E0308]: mismatched types
|
||||||
|
--> $DIR/different_byref_simple.rs:12:9
|
||||||
|
|
|
||||||
|
LL | u = ConstUsize::<4> {};
|
||||||
|
| ^^^^^^^^^^^^^^^^^^ expected `3_usize`, found `4_usize`
|
||||||
|
|
|
||||||
|
= note: expected struct `ConstUsize<3_usize>`
|
||||||
|
found struct `ConstUsize<4_usize>`
|
||||||
|
|
||||||
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
For more information about this error, try `rustc --explain E0308`.
|
14
src/test/ui/const-generics/different_byref_simple.rs
Normal file
14
src/test/ui/const-generics/different_byref_simple.rs
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
// Check that different const types are different.
|
||||||
|
// revisions: full min
|
||||||
|
|
||||||
|
#![cfg_attr(full, feature(const_generics))]
|
||||||
|
#![cfg_attr(full, allow(incomplete_features))]
|
||||||
|
#![cfg_attr(min, feature(min_const_generics))]
|
||||||
|
|
||||||
|
struct ConstUsize<const V: usize> {}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let mut u = ConstUsize::<3> {};
|
||||||
|
u = ConstUsize::<4> {};
|
||||||
|
//~^ ERROR mismatched types
|
||||||
|
}
|
|
@ -1,23 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/fn-const-param-call.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: using function pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/fn-const-param-call.rs:8:25
|
|
||||||
|
|
|
||||||
LL | struct Wrapper<const F: fn() -> u32>;
|
|
||||||
| ^^^^^^^^^^^
|
|
||||||
|
|
||||||
error: using function pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/fn-const-param-call.rs:10:15
|
|
||||||
|
|
|
||||||
LL | impl<const F: fn() -> u32> Wrapper<F> {
|
|
||||||
| ^^^^^^^^^^^
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/fn-const-param-infer.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: using function pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/fn-const-param-infer.rs:4:25
|
|
||||||
|
|
|
||||||
LL | struct Checked<const F: fn(usize) -> bool>;
|
|
||||||
| ^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/fn-taking-const-generic-array.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/forbid-non-structural_match-types.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0741]: `C` must be annotated with `#[derive(PartialEq, Eq)]` to be used as the type of a const parameter
|
|
||||||
--> $DIR/forbid-non-structural_match-types.rs:11:19
|
|
||||||
|
|
|
||||||
LL | struct D<const X: C>;
|
|
||||||
| ^ `C` doesn't derive both `PartialEq` and `Eq`
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0741`.
|
|
|
@ -1,28 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/foreign-item-const-parameter.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0044]: foreign items may not have const parameters
|
|
||||||
--> $DIR/foreign-item-const-parameter.rs:5:5
|
|
||||||
|
|
|
||||||
LL | fn foo<const X: usize>();
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^ can't have const parameters
|
|
||||||
|
|
|
||||||
= help: replace the const parameters with concrete consts
|
|
||||||
|
|
||||||
error[E0044]: foreign items may not have type or const parameters
|
|
||||||
--> $DIR/foreign-item-const-parameter.rs:7:5
|
|
||||||
|
|
|
||||||
LL | fn bar<T, const X: usize>(_: T);
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't have type or const parameters
|
|
||||||
|
|
|
||||||
= help: replace the type or const parameters with concrete types or consts
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0044`.
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/impl-const-generic-struct.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/incorrect-number-of-const-args.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
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; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0107`.
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/infer_arg_from_pat.rs:4:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/infer_arr_len_from_pat.rs:4:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -17,4 +17,7 @@ fn returns_closure_of_array_3() -> impl Fn([i32; 3]) {
|
||||||
|_| {}
|
|_| {}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() {}
|
fn main() {
|
||||||
|
takes_closure_of_array_3(returns_closure_of_array_3());
|
||||||
|
takes_closure_of_array_3_apit(returns_closure_of_array_3());
|
||||||
|
}
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/integer-literal-generic-arg-in-where-clause.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/issue-61522-array-len-succ.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/issue-61522-array-len-succ.rs:4:40
|
|
||||||
|
|
|
||||||
LL | pub struct MyArray<const COUNT: usize>([u8; COUNT + 1]);
|
|
||||||
| ^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/issue-61522-array-len-succ.rs:8:24
|
|
||||||
|
|
|
||||||
LL | fn inner(&self) -> &[u8; COUNT + 1] {
|
|
||||||
| ^^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/issue-66596-impl-trait-for-str-const-arg.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/mut-ref-const-param-array.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,159 +0,0 @@
|
||||||
error[E0391]: cycle detected when computing type of `Foo`
|
|
||||||
--> $DIR/nested-type.rs:4:1
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
note: ...which requires computing type of `Foo::N`...
|
|
||||||
--> $DIR/nested-type.rs:4:18
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| ^
|
|
||||||
note: ...which requires const-evaluating + checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires const-evaluating + checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires const-evaluating `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires type-checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires computing the variances of `Foo::{{constant}}#0::Foo`...
|
|
||||||
--> $DIR/nested-type.rs:7:5
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: usize>;
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
= note: ...which requires computing the variances for items in this crate...
|
|
||||||
= note: ...which again requires computing type of `Foo`, completing the cycle
|
|
||||||
note: cycle used when collecting item types in top-level module
|
|
||||||
--> $DIR/nested-type.rs:1:1
|
|
||||||
|
|
|
||||||
LL | / #![feature(const_generics)]
|
|
||||||
LL | | #![allow(incomplete_features)]
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: [u8; {
|
|
||||||
... |
|
|
||||||
LL | |
|
|
||||||
LL | | fn main() {}
|
|
||||||
| |____________^
|
|
||||||
|
|
||||||
error[E0391]: cycle detected when computing type of `Foo`
|
|
||||||
--> $DIR/nested-type.rs:4:1
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
note: ...which requires computing type of `Foo::N`...
|
|
||||||
--> $DIR/nested-type.rs:4:18
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| ^
|
|
||||||
note: ...which requires const-evaluating + checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires const-evaluating + checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires const-evaluating `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires type-checking `Foo::{{constant}}#0`...
|
|
||||||
--> $DIR/nested-type.rs:4:26
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: [u8; {
|
|
||||||
| __________________________^
|
|
||||||
LL | |
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: usize>;
|
|
||||||
... |
|
|
||||||
LL | | Foo::<17>::value()
|
|
||||||
LL | | }]>;
|
|
||||||
| |_^
|
|
||||||
note: ...which requires computing the variances of `Foo::{{constant}}#0::Foo`...
|
|
||||||
--> $DIR/nested-type.rs:7:5
|
|
||||||
|
|
|
||||||
LL | struct Foo<const N: usize>;
|
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
= note: ...which requires computing the variances for items in this crate...
|
|
||||||
= note: ...which again requires computing type of `Foo`, completing the cycle
|
|
||||||
note: cycle used when collecting item types in top-level module
|
|
||||||
--> $DIR/nested-type.rs:1:1
|
|
||||||
|
|
|
||||||
LL | / #![feature(const_generics)]
|
|
||||||
LL | | #![allow(incomplete_features)]
|
|
||||||
LL | |
|
|
||||||
LL | | struct Foo<const N: [u8; {
|
|
||||||
... |
|
|
||||||
LL | |
|
|
||||||
LL | | fn main() {}
|
|
||||||
| |____________^
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0391`.
|
|
|
@ -1,31 +0,0 @@
|
||||||
error: type parameters with a default must be trailing
|
|
||||||
--> $DIR/params-in-ct-in-ty-param-lazy-norm.rs:7:12
|
|
||||||
|
|
|
||||||
LL | struct Bar<T = [u8; N], const N: usize>(T);
|
|
||||||
| ^
|
|
||||||
|
|
|
||||||
= note: using type defaults and const parameters in the same parameter list is currently not permitted
|
|
||||||
|
|
||||||
error: constant values inside of type parameter defaults must not depend on generic parameters
|
|
||||||
--> $DIR/params-in-ct-in-ty-param-lazy-norm.rs:3:44
|
|
||||||
|
|
|
||||||
LL | struct Foo<T, U = [u8; std::mem::size_of::<T>()]>(T, U);
|
|
||||||
| ^ the anonymous constant must not depend on the parameter `T`
|
|
||||||
|
|
||||||
error: constant values inside of type parameter defaults must not depend on generic parameters
|
|
||||||
--> $DIR/params-in-ct-in-ty-param-lazy-norm.rs:7:21
|
|
||||||
|
|
|
||||||
LL | struct Bar<T = [u8; N], const N: usize>(T);
|
|
||||||
| ^ the anonymous constant must not depend on the parameter `N`
|
|
||||||
|
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/params-in-ct-in-ty-param-lazy-norm.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: aborting due to 3 previous errors; 1 warning emitted
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Assert that cannot use const generics as ptrs and cannot deref them.
|
// Checks that pointers must not be used as the type of const params.
|
||||||
// revisions: full min
|
// revisions: full min
|
||||||
|
|
||||||
#![cfg_attr(full, feature(const_generics))]
|
#![cfg_attr(full, feature(const_generics))]
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/raw-ptr-const-param-deref.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: using raw pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/raw-ptr-const-param-deref.rs:6:23
|
|
||||||
|
|
|
||||||
LL | struct Const<const P: *const u32>;
|
|
||||||
| ^^^^^^^^^^
|
|
||||||
|
|
||||||
error: using raw pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/raw-ptr-const-param-deref.rs:8:15
|
|
||||||
|
|
|
||||||
LL | impl<const P: *const u32> Const<P> {
|
|
||||||
| ^^^^^^^^^^
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/raw-ptr-const-param.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: using raw pointers as const generic parameters is forbidden
|
|
||||||
--> $DIR/raw-ptr-const-param.rs:4:23
|
|
||||||
|
|
|
||||||
LL | struct Const<const P: *const u32>;
|
|
||||||
| ^^^^^^^^^^
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
error[E0308]: mismatched types
|
error[E0308]: mismatched types
|
||||||
--> $DIR/slice-const-param-mismatch.rs:9:35
|
--> $DIR/slice-const-param-mismatch.rs:15:35
|
||||||
|
|
|
|
||||||
LL | let _: ConstString<"Hello"> = ConstString::<"World">;
|
LL | let _: ConstString<"Hello"> = ConstString::<"World">;
|
||||||
| -------------------- ^^^^^^^^^^^^^^^^^^^^^^ expected `"Hello"`, found `"World"`
|
| -------------------- ^^^^^^^^^^^^^^^^^^^^^^ expected `"Hello"`, found `"World"`
|
||||||
|
@ -10,7 +10,7 @@ LL | let _: ConstString<"Hello"> = ConstString::<"World">;
|
||||||
found struct `ConstString<"World">`
|
found struct `ConstString<"World">`
|
||||||
|
|
||||||
error[E0308]: mismatched types
|
error[E0308]: mismatched types
|
||||||
--> $DIR/slice-const-param-mismatch.rs:11:33
|
--> $DIR/slice-const-param-mismatch.rs:17:33
|
||||||
|
|
|
|
||||||
LL | let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↥">;
|
LL | let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↥">;
|
||||||
| ------------------- ^^^^^^^^^^^^^^^^^^^^^ expected `"ℇ㇈↦"`, found `"ℇ㇈↥"`
|
| ------------------- ^^^^^^^^^^^^^^^^^^^^^ expected `"ℇ㇈↦"`, found `"ℇ㇈↥"`
|
||||||
|
@ -21,7 +21,7 @@ LL | let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↥">;
|
||||||
found struct `ConstString<"ℇ㇈↥">`
|
found struct `ConstString<"ℇ㇈↥">`
|
||||||
|
|
||||||
error[E0308]: mismatched types
|
error[E0308]: mismatched types
|
||||||
--> $DIR/slice-const-param-mismatch.rs:13:33
|
--> $DIR/slice-const-param-mismatch.rs:19:33
|
||||||
|
|
|
|
||||||
LL | let _: ConstBytes<b"AAA"> = ConstBytes::<b"BBB">;
|
LL | let _: ConstBytes<b"AAA"> = ConstBytes::<b"BBB">;
|
||||||
| ------------------ ^^^^^^^^^^^^^^^^^^^^ expected `b"AAA"`, found `b"BBB"`
|
| ------------------ ^^^^^^^^^^^^^^^^^^^^ expected `b"AAA"`, found `b"BBB"`
|
|
@ -0,0 +1,20 @@
|
||||||
|
error: using `&'static str` as const generic parameters is forbidden
|
||||||
|
--> $DIR/slice-const-param-mismatch.rs:8:29
|
||||||
|
|
|
||||||
|
LL | struct ConstString<const T: &'static str>;
|
||||||
|
| ^^^^^^^^^^^^
|
||||||
|
|
|
||||||
|
= note: the only supported types are integers, `bool` and `char`
|
||||||
|
= note: more complex types are supported with `#[feature(const_generics)]`
|
||||||
|
|
||||||
|
error: using `&'static [u8]` as const generic parameters is forbidden
|
||||||
|
--> $DIR/slice-const-param-mismatch.rs:10:28
|
||||||
|
|
|
||||||
|
LL | struct ConstBytes<const T: &'static [u8]>;
|
||||||
|
| ^^^^^^^^^^^^^
|
||||||
|
|
|
||||||
|
= note: the only supported types are integers, `bool` and `char`
|
||||||
|
= note: more complex types are supported with `#[feature(const_generics)]`
|
||||||
|
|
||||||
|
error: aborting due to 2 previous errors
|
||||||
|
|
|
@ -1,14 +1,20 @@
|
||||||
#![feature(const_generics)]
|
// revisions: full min
|
||||||
#![allow(incomplete_features)]
|
|
||||||
|
#![cfg_attr(full, feature(const_generics))]
|
||||||
|
#![cfg_attr(full, allow(incomplete_features))]
|
||||||
|
#![cfg_attr(min, feature(min_const_generics))]
|
||||||
|
|
||||||
|
|
||||||
struct ConstString<const T: &'static str>;
|
struct ConstString<const T: &'static str>;
|
||||||
|
//[min]~^ ERROR
|
||||||
struct ConstBytes<const T: &'static [u8]>;
|
struct ConstBytes<const T: &'static [u8]>;
|
||||||
|
//[min]~^ ERROR
|
||||||
|
|
||||||
pub fn main() {
|
pub fn main() {
|
||||||
let _: ConstString<"Hello"> = ConstString::<"Hello">;
|
let _: ConstString<"Hello"> = ConstString::<"Hello">;
|
||||||
let _: ConstString<"Hello"> = ConstString::<"World">; //~ ERROR mismatched types
|
let _: ConstString<"Hello"> = ConstString::<"World">; //[full]~ ERROR mismatched types
|
||||||
let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↦">;
|
let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↦">;
|
||||||
let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↥">; //~ ERROR mismatched types
|
let _: ConstString<"ℇ㇈↦"> = ConstString::<"ℇ㇈↥">; //[full]~ ERROR mismatched types
|
||||||
let _: ConstBytes<b"AAA"> = ConstBytes::<{&[0x41, 0x41, 0x41]}>;
|
let _: ConstBytes<b"AAA"> = ConstBytes::<{&[0x41, 0x41, 0x41]}>;
|
||||||
let _: ConstBytes<b"AAA"> = ConstBytes::<b"BBB">; //~ ERROR mismatched types
|
let _: ConstBytes<b"AAA"> = ConstBytes::<b"BBB">; //[full]~ ERROR mismatched types
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/slice-const-param.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -2,10 +2,7 @@ error[E0573]: expected type, found const parameter `C`
|
||||||
--> $DIR/struct-with-invalid-const-param.rs:8:23
|
--> $DIR/struct-with-invalid-const-param.rs:8:23
|
||||||
|
|
|
|
||||||
LL | struct S<const C: u8>(C);
|
LL | struct S<const C: u8>(C);
|
||||||
| ----------------------^--
|
| ^ not a type
|
||||||
| | |
|
|
||||||
| | help: a struct with a similar name exists: `S`
|
|
||||||
| similarly named struct `S` defined here
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -2,10 +2,7 @@ error[E0573]: expected type, found const parameter `C`
|
||||||
--> $DIR/struct-with-invalid-const-param.rs:8:23
|
--> $DIR/struct-with-invalid-const-param.rs:8:23
|
||||||
|
|
|
|
||||||
LL | struct S<const C: u8>(C);
|
LL | struct S<const C: u8>(C);
|
||||||
| ----------------------^--
|
| ^ not a type
|
||||||
| | |
|
|
||||||
| | help: a struct with a similar name exists: `S`
|
|
||||||
| similarly named struct `S` defined here
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/transparent-maybeunit-array-wrapper.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/type_of_anon_const.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,20 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/uninferred-consts.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error[E0282]: type annotations needed
|
|
||||||
--> $DIR/uninferred-consts.rs:10:5
|
|
||||||
|
|
|
||||||
LL | Foo.foo();
|
|
||||||
| ^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: unable to infer the value of a const parameter
|
|
||||||
|
|
||||||
error: aborting due to previous error; 1 warning emitted
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0282`.
|
|
|
@ -1,9 +0,0 @@
|
||||||
error[E0412]: cannot find type `UnknownStruct` in this scope
|
|
||||||
--> $DIR/unknown_adt.rs:5:12
|
|
||||||
|
|
|
||||||
LL | let _: UnknownStruct<7>;
|
|
||||||
| ^^^^^^^^^^^^^ not found in this scope
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
|
||||||
|
|
||||||
For more information about this error, try `rustc --explain E0412`.
|
|
|
@ -1,11 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/unused-const-param.rs:3:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
warning: unnecessary braces around const expression
|
|
||||||
--> $DIR/unused_braces.rs:13:14
|
|
||||||
|
|
|
||||||
LL | let _: A<{ 7 }>;
|
|
||||||
| ^^^^^ help: remove these braces
|
|
||||||
|
|
|
||||||
note: the lint level is defined here
|
|
||||||
--> $DIR/unused_braces.rs:5:9
|
|
||||||
|
|
|
||||||
LL | #![warn(unused_braces)]
|
|
||||||
| ^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
warning: 1 warning emitted
|
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
warning: the feature `const_generics` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
||||||
--> $DIR/wf-misc.rs:1:12
|
|
||||||
|
|
|
||||||
LL | #![feature(const_generics)]
|
|
||||||
| ^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: `#[warn(incomplete_features)]` on by default
|
|
||||||
= note: see issue #44580 <https://github.com/rust-lang/rust/issues/44580> for more information
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/wf-misc.rs:5:12
|
|
||||||
|
|
|
||||||
LL | let _: [u8; N + 1];
|
|
||||||
| ^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: constant expression depends on a generic parameter
|
|
||||||
--> $DIR/wf-misc.rs:12:12
|
|
||||||
|
|
|
||||||
LL | let _: Const::<{N + 1}>;
|
|
||||||
| ^^^^^^^^^^^^^^^^
|
|
||||||
|
|
|
||||||
= note: this may fail depending on what value the parameter takes
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors; 1 warning emitted
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue