884af362f2
Previously, any associated function could have `~const` trait bounds on generic parameters, which could lead to ICEs when these bounds were used on associated functions of non-`#[const_trait] trait` or non-`impl const` blocks. Includes changes as per @fee1-dead's comments in #116210.
27 lines
917 B
Plaintext
27 lines
917 B
Plaintext
error: `~const` is not allowed here
|
|
--> $DIR/const-bound-on-not-const-associated-fn.rs:9:40
|
|
|
|
|
LL | fn do_something_else() where Self: ~const MyTrait;
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: this function is not `const`, so it cannot have `~const` trait bounds
|
|
--> $DIR/const-bound-on-not-const-associated-fn.rs:9:8
|
|
|
|
|
LL | fn do_something_else() where Self: ~const MyTrait;
|
|
| ^^^^^^^^^^^^^^^^^
|
|
|
|
error: `~const` is not allowed here
|
|
--> $DIR/const-bound-on-not-const-associated-fn.rs:20:32
|
|
|
|
|
LL | pub fn foo(&self) where T: ~const MyTrait {
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: this function is not `const`, so it cannot have `~const` trait bounds
|
|
--> $DIR/const-bound-on-not-const-associated-fn.rs:20:12
|
|
|
|
|
LL | pub fn foo(&self) where T: ~const MyTrait {
|
|
| ^^^
|
|
|
|
error: aborting due to 2 previous errors
|
|
|