From 9173508aa461cf7789d3620947ff0ecd3a174a11 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Wed, 19 Sep 2012 18:14:30 -0700 Subject: [PATCH] std: Demode arena --- src/libstd/arena.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/libstd/arena.rs b/src/libstd/arena.rs index 37fdf4189c9..10fdec44094 100644 --- a/src/libstd/arena.rs +++ b/src/libstd/arena.rs @@ -22,6 +22,9 @@ // overhead when initializing plain-old-data and means we don't need // to waste time running the destructors of POD. +#[forbid(deprecated_mode)]; +#[forbid(deprecated_pattern)]; + export Arena, arena_with_size; use list::{List, Cons, Nil}; @@ -56,9 +59,9 @@ struct Arena { priv mut chunks: @List, drop { unsafe { - destroy_chunk(self.head); + destroy_chunk(&self.head); for list::each(self.chunks) |chunk| { - if !chunk.is_pod { destroy_chunk(chunk); } + if !chunk.is_pod { destroy_chunk(&chunk); } } } } @@ -87,7 +90,7 @@ fn round_up_to(base: uint, align: uint) -> uint { // Walk down a chunk, running the destructors for any objects stored // in it. -unsafe fn destroy_chunk(chunk: Chunk) { +unsafe fn destroy_chunk(chunk: &Chunk) { let mut idx = 0; let buf = vec::raw::to_ptr(chunk.data); let fill = chunk.fill;