1 error[E0493]: destructors cannot be evaluated at compile-time
2 --> $DIR/drop-elaboration-after-borrowck-error.rs:7:5
4 LL | a[0] = String::new();
7 | statics cannot evaluate destructors
8 | value is dropped here
10 error[E0493]: destructors cannot be evaluated at compile-time
11 --> $DIR/drop-elaboration-after-borrowck-error.rs:5:9
13 LL | let a: [String; 1];
14 | ^ statics cannot evaluate destructors
17 | - value is dropped here
19 error[E0381]: used binding `a` isn't initialized
20 --> $DIR/drop-elaboration-after-borrowck-error.rs:7:5
22 LL | let a: [String; 1];
23 | - binding declared here but left uninitialized
25 LL | a[0] = String::new();
26 | ^^^^ `a` used here but it isn't initialized
28 error[E0493]: destructors cannot be evaluated at compile-time
29 --> $DIR/drop-elaboration-after-borrowck-error.rs:18:9
31 LL | self.0[0] = other;
34 | constant functions cannot evaluate destructors
35 | value is dropped here
37 error[E0493]: destructors cannot be evaluated at compile-time
38 --> $DIR/drop-elaboration-after-borrowck-error.rs:16:13
40 LL | let _this = self;
41 | ^^^^^ constant functions cannot evaluate destructors
44 | - value is dropped here
46 error[E0382]: use of moved value: `self.0`
47 --> $DIR/drop-elaboration-after-borrowck-error.rs:18:9
49 LL | pub const fn f(mut self, other: T) -> Self {
50 | -------- move occurs because `self` has type `B<T>`, which does not implement the `Copy` trait
51 LL | let _this = self;
52 | ---- value moved here
54 LL | self.0[0] = other;
55 | ^^^^^^^^^ value used here after move
57 error: aborting due to 6 previous errors
59 Some errors have detailed explanations: E0381, E0382, E0493.
60 For more information about an error, try `rustc --explain E0381`.