bors
4e5b31c2b0
Auto merge of #115166 - Urgau:invalid_ref_casting-invalid-unsafecell-usage, r=est31
...
Lint on invalid usage of `UnsafeCell::raw_get` in reference casting
This PR proposes to take into account `UnsafeCell::raw_get` method call for non-Freeze types for the `invalid_reference_casting` lint.
The goal of this is to catch those kind of invalid reference casting:
```rust
fn as_mut<T>(x: &T) -> &mut T {
unsafe { &mut *std::cell::UnsafeCell::raw_get(x as *const _ as *const _) }
//~^ ERROR casting `&T` to `&mut T` is undefined behavior
}
```
r? `@est31`
2023-09-07 00:24:45 +00:00
..
2023-06-06 11:50:24 +02:00
2023-08-10 22:57:48 +02:00
2023-09-04 14:21:38 +02:00
2023-05-06 14:42:35 +01:00
2023-04-27 17:18:11 +00:00
2023-05-18 08:52:54 +00:00
2023-08-04 16:46:08 +00:00
2023-01-21 14:38:25 -06:00
2023-08-14 12:05:53 -07:00
2023-09-03 08:21:18 +05:30
2023-04-01 11:11:21 -07:00
2023-03-22 16:05:20 +01:00
2023-03-22 16:05:20 +01:00
2023-03-20 00:50:03 +01:00
2023-08-04 16:09:13 +00:00
2023-09-04 14:21:38 +02:00
2023-09-04 14:21:38 +02:00
2023-09-04 14:21:38 +02:00
2023-07-01 16:05:55 +02:00
2023-05-21 14:16:41 +02:00
2023-07-01 16:05:55 +02:00
2023-05-21 14:16:41 +02:00
2023-03-15 23:30:12 +13:00
2023-05-21 14:09:03 +02:00
2023-05-21 14:28:09 +02:00
2023-05-21 14:28:09 +02:00
2023-05-21 14:28:09 +02:00
2023-09-04 14:21:38 +02:00
2023-04-12 16:17:31 +00:00
2023-05-27 00:18:28 +02:00
2023-05-27 00:18:28 +02:00
2023-05-06 23:22:32 -04:00
2023-07-21 22:35:57 -07:00
2023-06-10 11:12:55 +02:00
2023-06-10 11:12:55 +02:00
2023-06-10 11:12:55 +02:00
2023-06-10 11:12:55 +02:00
2023-08-05 23:54:59 +02:00
2023-08-04 16:09:13 +00:00
2023-01-20 02:26:12 -05:00
2023-01-20 02:26:12 -05:00
2023-04-20 15:06:17 -03:00
2023-08-02 13:40:28 +03:00
2023-07-07 13:17:00 +00:00
2023-02-28 07:55:19 +00:00
2023-02-28 07:57:17 +00:00
2023-02-23 13:57:13 +03:00
2023-02-23 13:57:13 +03:00
2023-02-17 14:44:58 +00:00
2023-03-15 14:07:39 +08:00
2023-03-15 14:07:39 +08:00
2023-03-29 09:56:28 +08:00
2023-03-29 09:56:28 +08:00
2023-03-29 09:56:28 +08:00
2023-04-20 16:28:49 +12:00
2023-05-11 14:51:01 +03:00
2023-08-04 16:09:14 +00:00
2023-06-11 06:08:44 +00:00
2023-02-23 13:57:13 +03:00
2023-02-23 13:57:13 +03:00
2023-06-12 20:24:48 +08:00
2023-05-19 19:04:10 +09:00
2023-06-12 20:24:48 +08:00
2023-08-04 16:09:14 +00:00
2023-07-28 11:11:29 +02:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-07-03 13:40:20 +01:00
2023-07-03 13:40:20 +01:00
2023-07-19 09:59:04 +01:00
2023-07-19 09:59:04 +01:00
2023-07-19 09:59:04 +01:00
2023-07-21 15:42:25 +01:00
2023-08-02 13:40:28 +03:00
2023-08-02 13:40:28 +03:00
2023-05-19 19:04:15 +09:00
2023-05-19 19:04:15 +09:00
2023-06-06 11:50:24 +02:00
2023-08-04 16:09:14 +00:00
2023-04-19 12:47:35 +12:00
2023-04-19 12:47:35 +12:00
2023-09-04 14:21:38 +02:00
2023-07-18 09:52:08 +08:00
2023-07-18 09:52:08 +08:00
2023-07-18 09:52:08 +08:00
2023-02-22 08:40:47 -07:00
2023-02-22 08:40:47 -07:00
2023-08-14 18:05:13 +08:00
2023-08-14 18:05:13 +08:00
2023-04-04 18:55:02 +00:00
2023-04-04 18:55:02 +00:00
2023-07-22 14:04:45 +02:00
2023-07-22 14:04:45 +02:00
2023-08-04 13:17:39 +02:00
2023-06-05 14:25:00 +00:00
2023-06-05 14:25:00 +00:00
2023-06-05 14:25:00 +00:00
2023-01-20 02:26:12 -05:00
2023-04-21 22:32:38 +00:00
2023-08-03 01:37:42 +02:00
2023-08-04 16:09:14 +00:00
2023-04-12 16:17:31 +00:00
2023-07-23 09:58:31 +00:00
2023-07-23 09:58:31 +00:00
2023-07-23 09:58:31 +00:00
2023-06-16 19:39:48 +00:00
2023-06-16 19:39:48 +00:00
2023-08-03 10:52:15 +02:00
2023-08-03 10:57:11 +02:00
2023-01-18 20:46:36 +01:00
2023-08-24 15:00:21 +02:00
2023-08-24 15:00:21 +02:00
2023-07-23 09:58:31 +00:00
2023-07-23 09:58:31 +00:00
2023-06-03 09:22:47 +08:00
2023-06-11 18:27:26 +08:00
2023-01-31 20:28:11 +01:00
2023-04-28 20:28:56 -05:00
2023-02-16 19:44:03 +00:00
2023-07-10 20:09:26 +00:00
2023-03-06 13:41:07 +00:00
2023-03-06 13:41:07 +00:00
2023-06-08 11:41:34 +02:00
2023-06-08 11:41:34 +02:00
2023-01-15 05:08:30 +00:00
2023-01-15 05:08:30 +00:00
2023-01-15 05:08:30 +00:00
2023-06-12 20:24:48 +08:00
2023-02-28 07:55:19 +00:00
2023-02-28 07:57:17 +00:00