rust/compiler/rustc_const_eval/src
León Orell Valerian Liehr 332cac2c6d
Rollup merge of #122598 - Nadrieril:full-derefpats, r=matthewjasper
deref patterns: lower deref patterns to MIR

This lowers deref patterns to MIR. This is a bit tricky because this is the first kind of pattern that requires storing a value in a temporary. Thanks to https://github.com/rust-lang/rust/pull/123324 false edges are no longer a problem.

The thing I'm not confident about is the handling of fake borrows. This PR ignores any fake borrows inside a deref pattern. We are guaranteed to at least fake borrow the place of the first pointer value, which could be enough, but I'm not certain.
2024-04-23 17:25:15 +02:00
..
const_eval Use less fragile error handling 2024-04-17 09:50:44 +00:00
interpret Rollup merge of #124220 - RalfJung:interpret-wrong-vtable, r=oli-obk 2024-04-23 06:24:57 +02:00
transform Rollup merge of #122598 - Nadrieril:full-derefpats, r=matthewjasper 2024-04-23 17:25:15 +02:00
util Actually create ranged int types in the type system. 2024-04-08 12:02:19 +00:00
errors.rs Miri: detect wrong vtables in wide pointers 2024-04-21 13:04:51 +02:00
lib.rs Stabilize generic NonZero. 2024-04-22 18:48:47 +02:00