diff options
Diffstat (limited to 'tests/ui/fmt/send-sync.rs')
-rw-r--r-- | tests/ui/fmt/send-sync.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/ui/fmt/send-sync.rs b/tests/ui/fmt/send-sync.rs new file mode 100644 index 000000000..95ec68d1d --- /dev/null +++ b/tests/ui/fmt/send-sync.rs @@ -0,0 +1,10 @@ +fn send<T: Send>(_: T) {} +fn sync<T: Sync>(_: T) {} + +fn main() { + // `Cell` is not `Sync`, so `&Cell` is neither `Sync` nor `Send`, + // `std::fmt::Arguments` used to forget this... + let c = std::cell::Cell::new(42); + send(format_args!("{:?}", c)); //~ ERROR E0277 + sync(format_args!("{:?}", c)); //~ ERROR E0277 +} |