bors
097261f241
Auto merge of #118054 - max-niederman:pinned-must-use, r=Nilstrieb
...
Lint pinned `#[must_use]` pointers (in particular, `Box<T>` where `T` is `#[must_use]`) in `unused_must_use`.
Fixes : #111458
This is motivated by a common async/await pattern:
```rs
fn foo() -> Pin<Box<dyn Future<Output = i32>>> {
Box::pin(async { 42 })
}
// call `foo`, but forget to await the result
foo();
```
Unlike with `async fn` or return position `impl Future`, this does not currently warn the user that the `Future` is unused.
To fix this, I've extended the `unused_must_use` lint to catch `Pin<P>`, where `P` must be used. In particular, this applies to `Pin<Box<T>>`, where `T` must be used. I'm not sure if there are other pointers where this applies, but I can't think of any situation the user wouldn't want to be warned.
2023-11-19 12:23:59 +00:00
..
2023-11-17 23:04:21 +01:00
2023-10-30 22:19:17 +00:00
2023-10-30 22:19:17 +00:00
2023-11-19 04:14:41 +09:00
2023-10-26 18:35:09 +00:00
2023-11-13 08:36:12 +08:00
2023-10-28 23:11:03 -07:00
2023-11-13 16:25:16 -08:00
2023-11-02 10:25:57 +00:00
2023-10-30 10:29:11 -04:00
2023-10-25 23:15:18 +02:00
2023-10-28 23:11:03 -07:00
2023-10-27 12:02:54 +02:00
2023-11-08 20:42:32 +00:00
2023-10-26 10:57:21 +00:00
2023-10-29 23:55:46 +00:00
2023-10-25 22:35:12 +00:00
2023-11-19 07:44:43 +00:00
2023-11-17 23:04:21 +01:00
2023-11-16 17:00:23 +00:00
2023-11-03 07:32:10 +05:30
2023-11-09 10:40:55 -05:00
2023-11-17 07:28:43 +01:00
2023-11-18 00:40:11 +00:00
2023-11-02 18:16:37 +01:00
2023-11-16 17:00:23 +00:00
2023-11-02 20:57:05 +00:00
2023-11-17 23:04:21 +01:00
2023-11-05 13:44:59 +00:00
2023-11-02 20:57:05 +00:00
2023-11-08 02:35:25 +00:00
2023-11-12 00:00:12 +01:00
2023-11-16 19:12:35 +00:00
2023-11-02 00:52:06 +00:00
2023-11-17 10:16:41 +00:00
2023-11-16 14:25:35 +00:00
2023-10-26 18:35:09 +00:00
2023-11-13 19:57:15 +00:00
2023-11-16 17:00:23 +00:00
2023-11-02 20:57:05 +00:00
2023-11-04 08:50:46 +11:00
2023-11-19 04:14:41 +09:00
2023-11-06 15:50:35 +00:00
2023-10-27 18:07:53 +02:00
2023-11-02 20:57:05 +00:00
2023-11-18 21:01:02 -08:00
2023-10-28 23:11:03 -07:00
2023-11-16 16:19:04 +00:00
2023-11-04 08:50:46 +11:00
2023-11-17 00:55:55 +00:00
2023-11-12 19:59:13 +00:00
2023-11-15 01:31:46 +00:00
2023-11-16 17:00:23 +00:00
2023-11-14 13:41:28 +00:00
2023-11-07 17:29:29 +01:00
2023-10-30 22:47:48 +00:00
2023-11-16 17:00:23 +00:00
2023-10-30 15:31:00 +01:00
2023-11-19 04:14:41 +09:00
2023-11-17 00:55:55 +00:00
2023-10-27 17:40:52 +00:00
2023-11-07 00:54:10 +00:00
2023-11-12 04:40:44 +00:00
2023-11-18 00:40:11 +00:00
2023-11-16 16:58:41 +00:00
2023-10-28 23:11:03 -07:00
2023-11-07 05:23:09 +00:00
2023-10-30 15:48:46 -07:00
2023-11-19 04:14:41 +09:00
2023-11-19 04:14:41 +09:00
2023-11-02 18:20:42 +11:00
2023-11-06 09:44:00 +01:00
2023-11-06 16:23:08 +00:00
2023-11-03 12:44:50 +01:00
2023-11-17 10:16:41 +00:00
2023-11-16 17:00:23 +00:00
2023-10-29 23:55:46 +00:00
2023-11-17 10:16:41 +00:00
2023-11-19 04:14:41 +09:00
2023-11-17 23:04:21 +01:00
2023-11-18 00:40:11 +00:00
2023-11-16 17:00:23 +00:00
2023-11-01 20:16:11 +00:00
2023-10-29 23:55:46 +00:00
2023-11-13 14:13:54 +00:00
2023-11-07 00:54:10 +00:00
2023-10-31 08:01:02 +11:00
2023-10-31 08:01:02 +11:00