error[E0277]: `Rc<Cell<i32>>` cannot be sent between threads safely
  --> $DIR/auto-trait-leak2.rs:20:10
   |
LL | fn before() -> impl Fn(i32) {
   |                ------------ within this `impl Fn(i32)`
...
LL |     send(before());
   |     ---- ^^^^^^^^ `Rc<Cell<i32>>` cannot be sent between threads safely
   |     |
   |     required by a bound introduced by this call
   |
   = help: within `impl Fn(i32)`, the trait `Send` is not implemented for `Rc<Cell<i32>>`, which is required by `impl Fn(i32): Send`
note: required because it's used within this closure
  --> $DIR/auto-trait-leak2.rs:10:5
   |
LL |     move |x| p.set(x)
   |     ^^^^^^^^
note: required because it appears within the type `impl Fn(i32)`
  --> $DIR/auto-trait-leak2.rs:5:16
   |
LL | fn before() -> impl Fn(i32) {
   |                ^^^^^^^^^^^^
note: required by a bound in `send`
  --> $DIR/auto-trait-leak2.rs:13:12
   |
LL | fn send<T: Send>(_: T) {}
   |            ^^^^ required by this bound in `send`

error[E0277]: `Rc<Cell<i32>>` cannot be sent between threads safely
  --> $DIR/auto-trait-leak2.rs:25:10
   |
LL |     send(after());
   |     ---- ^^^^^^^ `Rc<Cell<i32>>` cannot be sent between threads safely
   |     |
   |     required by a bound introduced by this call
...
LL | fn after() -> impl Fn(i32) {
   |               ------------ within this `impl Fn(i32)`
   |
   = help: within `impl Fn(i32)`, the trait `Send` is not implemented for `Rc<Cell<i32>>`, which is required by `impl Fn(i32): Send`
note: required because it's used within this closure
  --> $DIR/auto-trait-leak2.rs:38:5
   |
LL |     move |x| p.set(x)
   |     ^^^^^^^^
note: required because it appears within the type `impl Fn(i32)`
  --> $DIR/auto-trait-leak2.rs:33:15
   |
LL | fn after() -> impl Fn(i32) {
   |               ^^^^^^^^^^^^
note: required by a bound in `send`
  --> $DIR/auto-trait-leak2.rs:13:12
   |
LL | fn send<T: Send>(_: T) {}
   |            ^^^^ required by this bound in `send`

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.
