860c8cdeaf
Accurately refer to assoc fn without receiver as assoc fn instead of methods. Add `AssocItem::descr` method to centralize where we call methods and associated functions.
122 lines
4.0 KiB
Plaintext
122 lines
4.0 KiB
Plaintext
error[E0049]: associated function `foo` has 1 const parameter but its trait declaration has 0 const parameters
|
|
--> $DIR/const_trait_impl.rs:6:1
|
|
|
|
|
LL | #[const_trait]
|
|
| ^^^^^^^^^^^^^^ found 1 const parameter
|
|
LL | pub unsafe trait Sup {
|
|
LL | fn foo() -> u32;
|
|
| - expected 0 const parameters
|
|
|
|
error[E0049]: associated function `foo` has 1 const parameter but its trait declaration has 0 const parameters
|
|
--> $DIR/const_trait_impl.rs:6:1
|
|
|
|
|
LL | #[const_trait]
|
|
| ^^^^^^^^^^^^^^ found 1 const parameter
|
|
LL | pub unsafe trait Sup {
|
|
LL | fn foo() -> u32;
|
|
| - expected 0 const parameters
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
|
|
error: `~const` can only be applied to `#[const_trait]` traits
|
|
--> $DIR/const_trait_impl.rs:34:16
|
|
|
|
|
LL | impl<T: ~const Default> const A for T {
|
|
| ^^^^^^^
|
|
|
|
error: `~const` can only be applied to `#[const_trait]` traits
|
|
--> $DIR/const_trait_impl.rs:40:16
|
|
|
|
|
LL | impl<T: ~const Default + ~const Sup> const A for T {
|
|
| ^^^^^^^
|
|
|
|
error: `~const` can only be applied to `#[const_trait]` traits
|
|
--> $DIR/const_trait_impl.rs:46:16
|
|
|
|
|
LL | impl<T: ~const Default + ~const Sub> const A for T {
|
|
| ^^^^^^^
|
|
|
|
error[E0049]: associated function `a` has 1 const parameter but its trait declaration has 0 const parameters
|
|
--> $DIR/const_trait_impl.rs:29:1
|
|
|
|
|
LL | #[const_trait]
|
|
| ^^^^^^^^^^^^^^ found 1 const parameter
|
|
LL | pub trait A {
|
|
LL | fn a() -> u32;
|
|
| - expected 0 const parameters
|
|
|
|
error[E0049]: associated function `a` has 1 const parameter but its trait declaration has 0 const parameters
|
|
--> $DIR/const_trait_impl.rs:29:1
|
|
|
|
|
LL | #[const_trait]
|
|
| ^^^^^^^^^^^^^^ found 1 const parameter
|
|
LL | pub trait A {
|
|
LL | fn a() -> u32;
|
|
| - expected 0 const parameters
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
|
|
error[E0049]: associated function `a` has 1 const parameter but its trait declaration has 0 const parameters
|
|
--> $DIR/const_trait_impl.rs:29:1
|
|
|
|
|
LL | #[const_trait]
|
|
| ^^^^^^^^^^^^^^ found 1 const parameter
|
|
LL | pub trait A {
|
|
LL | fn a() -> u32;
|
|
| - expected 0 const parameters
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
|
|
error[E0015]: cannot call non-const fn `<() as A>::a` in constants
|
|
--> $DIR/const_trait_impl.rs:52:23
|
|
|
|
|
LL | const _: () = assert!(<()>::a() == 42);
|
|
| ^^^^^^^^^
|
|
|
|
|
= note: calls in constants are limited to constant functions, tuple structs and tuple variants
|
|
help: add `#![feature(effects)]` to the crate attributes to enable
|
|
|
|
|
LL + #![feature(effects)]
|
|
|
|
|
|
|
error[E0015]: cannot call non-const fn `<u8 as A>::a` in constants
|
|
--> $DIR/const_trait_impl.rs:53:23
|
|
|
|
|
LL | const _: () = assert!(<u8>::a() == 3);
|
|
| ^^^^^^^^^
|
|
|
|
|
= note: calls in constants are limited to constant functions, tuple structs and tuple variants
|
|
help: add `#![feature(effects)]` to the crate attributes to enable
|
|
|
|
|
LL + #![feature(effects)]
|
|
|
|
|
|
|
error[E0015]: cannot call non-const fn `<u16 as A>::a` in constants
|
|
--> $DIR/const_trait_impl.rs:54:23
|
|
|
|
|
LL | const _: () = assert!(<u16>::a() == 2);
|
|
| ^^^^^^^^^^
|
|
|
|
|
= note: calls in constants are limited to constant functions, tuple structs and tuple variants
|
|
help: add `#![feature(effects)]` to the crate attributes to enable
|
|
|
|
|
LL + #![feature(effects)]
|
|
|
|
|
|
|
error[E0015]: cannot call non-const fn `<T as Sup>::foo` in constant functions
|
|
--> $DIR/const_trait_impl.rs:48:9
|
|
|
|
|
LL | T::foo()
|
|
| ^^^^^^^^
|
|
|
|
|
= note: calls in constant functions are limited to constant functions, tuple structs and tuple variants
|
|
help: add `#![feature(effects)]` to the crate attributes to enable
|
|
|
|
|
LL + #![feature(effects)]
|
|
|
|
|
|
|
error: aborting due to 12 previous errors
|
|
|
|
Some errors have detailed explanations: E0015, E0049.
|
|
For more information about an error, try `rustc --explain E0015`.
|