Allow let bindings everywhere

This commit is contained in:
Oliver Scherer 2018-11-24 14:38:31 +01:00
parent 7ec3c10d7e
commit d62bcad38d
76 changed files with 454 additions and 700 deletions

View file

@ -14,5 +14,6 @@
#![allow(warnings)]
const CON : Box<i32> = box 0; //~ ERROR E0010
//~^ ERROR contains unimplemented expression type
fn main() {}

View file

@ -6,6 +6,16 @@ LL | const CON : Box<i32> = box 0; //~ ERROR E0010
|
= note: The value of statics and constants must be known at compile time, and they live for the entire lifetime of a program. Creating a boxed value allocates memory on the heap at runtime, and therefore cannot be done at compile time.
error: aborting due to previous error
error[E0019]: constant contains unimplemented expression type
--> $DIR/E0010-teach.rs:16:28
|
LL | const CON : Box<i32> = box 0; //~ ERROR E0010
| ^
|
= note: A function call isn't allowed in the const's initialization expression because the expression's value must be known at compile-time.
= note: Remember: you can't use a function call inside a const's initialization expression! However, you can use it anywhere else.
For more information about this error, try `rustc --explain E0010`.
error: aborting due to 2 previous errors
Some errors occurred: E0010, E0019.
For more information about an error, try `rustc --explain E0010`.

View file

@ -12,5 +12,6 @@
#![allow(warnings)]
const CON : Box<i32> = box 0; //~ ERROR E0010
//~^ ERROR contains unimplemented expression type
fn main() {}

View file

@ -4,6 +4,13 @@ error[E0010]: allocations are not allowed in constants
LL | const CON : Box<i32> = box 0; //~ ERROR E0010
| ^^^^^ allocation not allowed in constants
error: aborting due to previous error
error[E0019]: constant contains unimplemented expression type
--> $DIR/E0010.rs:14:28
|
LL | const CON : Box<i32> = box 0; //~ ERROR E0010
| ^
For more information about this error, try `rustc --explain E0010`.
error: aborting due to 2 previous errors
Some errors occurred: E0010, E0019.
For more information about an error, try `rustc --explain E0010`.