error[E0277]: `Cell<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:8:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<Cell<i32>>();
   |            ^^^^^^^^^ `Cell<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `Cell<i32>`

error[E0277]: `RefCell<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:10:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<RefCell<i32>>();
   |            ^^^^^^^^^^^^ `RefCell<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `RefCell<i32>`

error[E0277]: `Rc<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:13:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<Rc<i32>>();
   |            ^^^^^^^ `Rc<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `Rc<i32>`

error[E0277]: `std::rc::Weak<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:15:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<Weak<i32>>();
   |            ^^^^^^^^^ `std::rc::Weak<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `std::rc::Weak<i32>`

error[E0277]: `std::sync::mpsc::Receiver<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:18:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<Receiver<i32>>();
   |            ^^^^^^^^^^^^^ `std::sync::mpsc::Receiver<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `std::sync::mpsc::Receiver<i32>`

error[E0277]: `Sender<i32>` cannot be shared between threads safely
  --> $DIR/not-sync.rs:20:12
   |
LL | fn test<T: Sync>() {}
   |            ---- required by this bound in `test`
...
LL |     test::<Sender<i32>>();
   |            ^^^^^^^^^^^ `Sender<i32>` cannot be shared between threads safely
   |
   = help: the trait `Sync` is not implemented for `Sender<i32>`

error: aborting due to 6 previous errors

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