diff options
| author | Ralf Jung <post@ralfj.de> | 2024-08-31 11:29:02 +0200 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2024-08-31 11:29:02 +0200 |
| commit | d0aedfbb900309bb633b3ba04bf008183cfdd9a7 (patch) | |
| tree | bd27610dc20d985b99393191d4a0369390b625e8 /compiler/rustc_mir_transform/src | |
| parent | fa72f0763de6bc1596208fc1419883ce5aea0de4 (diff) | |
| download | rust-d0aedfbb900309bb633b3ba04bf008183cfdd9a7.tar.gz rust-d0aedfbb900309bb633b3ba04bf008183cfdd9a7.zip | |
interpret, codegen: tweak some comments and checks regarding Box with custom allocator
Diffstat (limited to 'compiler/rustc_mir_transform/src')
| -rw-r--r-- | compiler/rustc_mir_transform/src/add_retag.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_mir_transform/src/add_retag.rs b/compiler/rustc_mir_transform/src/add_retag.rs index 12a68790374..79bc21cab14 100644 --- a/compiler/rustc_mir_transform/src/add_retag.rs +++ b/compiler/rustc_mir_transform/src/add_retag.rs @@ -137,6 +137,8 @@ impl<'tcx> MirPass<'tcx> for AddRetag { // Using `is_box_global` here is a bit sketchy: if this code is // generic over the allocator, we'll not add a retag! This is a hack // to make Stacked Borrows compatible with custom allocator code. + // It means the raw pointer inherits the tag of the box, which mostly works + // but can sometimes lead to unexpected aliasing errors. // Long-term, we'll want to move to an aliasing model where "cast to // raw pointer" is a complete NOP, and then this will no longer be // an issue. |
