error: your program uses the crate `std`, that is not compiled with `stack-protector=all` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `std` with `stack-protector=all` enabled, or use `-Z allow-partial-mitigations=stack-protector` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=stack-protector` via `-Z deny-partial-mitigations=stack-protector`

error: your program uses the crate `std`, that is not compiled with `control-flow-guard` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `std` with `control-flow-guard` enabled, or use `-Z allow-partial-mitigations=control-flow-guard` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=control-flow-guard` via `-Z deny-partial-mitigations=control-flow-guard`

error: your program uses the crate `core`, that is not compiled with `stack-protector=all` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `core` with `stack-protector=all` enabled, or use `-Z allow-partial-mitigations=stack-protector` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=stack-protector` via `-Z deny-partial-mitigations=stack-protector`

error: your program uses the crate `core`, that is not compiled with `control-flow-guard` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `core` with `control-flow-guard` enabled, or use `-Z allow-partial-mitigations=control-flow-guard` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=control-flow-guard` via `-Z deny-partial-mitigations=control-flow-guard`

error: your program uses the crate `alloc`, that is not compiled with `stack-protector=all` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `alloc` with `stack-protector=all` enabled, or use `-Z allow-partial-mitigations=stack-protector` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=stack-protector` via `-Z deny-partial-mitigations=stack-protector`

error: your program uses the crate `alloc`, that is not compiled with `control-flow-guard` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `alloc` with `control-flow-guard` enabled, or use `-Z allow-partial-mitigations=control-flow-guard` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=control-flow-guard` via `-Z deny-partial-mitigations=control-flow-guard`

error: your program uses the crate `compiler_builtins`, that is not compiled with `stack-protector=all` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `compiler_builtins` with `stack-protector=all` enabled, or use `-Z allow-partial-mitigations=stack-protector` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=stack-protector` via `-Z deny-partial-mitigations=stack-protector`

error: your program uses the crate `compiler_builtins`, that is not compiled with `control-flow-guard` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `compiler_builtins` with `control-flow-guard` enabled, or use `-Z allow-partial-mitigations=control-flow-guard` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=control-flow-guard` via `-Z deny-partial-mitigations=control-flow-guard`

error: your program uses the crate `unwind/libc`, that is not compiled with `stack-protector=all` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `unwind/libc` with `stack-protector=all` enabled, or use `-Z allow-partial-mitigations=stack-protector` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=stack-protector` via `-Z deny-partial-mitigations=stack-protector`

error: your program uses the crate `unwind/libc`, that is not compiled with `control-flow-guard` enabled
  --> $DIR/err-allow-partial-mitigations-2-errors.rs:21:1
   |
LL | fn main() {}
   | ^
   |
   = note: recompile `unwind/libc` with `control-flow-guard` enabled, or use `-Z allow-partial-mitigations=control-flow-guard` to allow creating an artifact that has the mitigation partially enabled
   = help: it is possible to disable `-Z allow-partial-mitigations=control-flow-guard` via `-Z deny-partial-mitigations=control-flow-guard`

error: aborting due to 10 previous errors

