summaryrefslogtreecommitdiff
path: root/tests/ui/mir
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-06-17 16:10:57 +0000
committerbors <bors@rust-lang.org>2023-06-17 16:10:57 +0000
commita8a29070f07e47a244c8199ad582f93172019743 (patch)
tree763b2ef51eb7ab864c4f3bb635e1c8060d19361d /tests/ui/mir
parente1c29d137dd779dcfce447d8d149ee6b8e9bdf78 (diff)
parenta5c6cb888eac7ad8905a3902b985e412aaceb002 (diff)
Auto merge of #100036 - DrMeepster:box_free_free_box, r=oli-obk
Remove `box_free` lang item This PR removes the `box_free` lang item, replacing it with `Box`'s `Drop` impl. Box dropping is still slightly magic because the contained value is still dropped by the compiler.
Diffstat (limited to 'tests/ui/mir')
-rw-r--r--tests/ui/mir/ssa-analysis-regression-50041.rs11
1 files changed, 4 insertions, 7 deletions
diff --git a/tests/ui/mir/ssa-analysis-regression-50041.rs b/tests/ui/mir/ssa-analysis-regression-50041.rs
index ebc3e2f8c0e..534f1c465bb 100644
--- a/tests/ui/mir/ssa-analysis-regression-50041.rs
+++ b/tests/ui/mir/ssa-analysis-regression-50041.rs
@@ -13,13 +13,10 @@ struct Unique<T: ?Sized>(NonNull<T>);
pub struct Box<T: ?Sized>(Unique<T>);
impl<T: ?Sized> Drop for Box<T> {
- fn drop(&mut self) {}
-}
-
-#[lang = "box_free"]
-#[inline(always)]
-unsafe fn box_free<T: ?Sized>(ptr: Unique<T>) {
- dealloc(ptr.0.0)
+ #[inline(always)]
+ fn drop(&mut self) {
+ dealloc(self.0.0.0)
+ }
}
#[inline(never)]