about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorSeo Sanghyeon <sanxiyn@gmail.com>2013-02-14 22:36:56 +0900
committerSeo Sanghyeon <sanxiyn@gmail.com>2013-02-14 22:36:56 +0900
commitae38935ff3d295dbf2fca5a5cef5103e868678bb (patch)
treef25055c5d3710d15e9df7acff78029eba17a707d /src
parent7a6db3f982cea9c5c1ed9921358988c1180851dc (diff)
downloadrust-ae38935ff3d295dbf2fca5a5cef5103e868678bb.tar.gz
rust-ae38935ff3d295dbf2fca5a5cef5103e868678bb.zip
Remove DVec from check_const
Diffstat (limited to 'src')
-rw-r--r--src/librustc/middle/check_const.rs17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/librustc/middle/check_const.rs b/src/librustc/middle/check_const.rs
index 6d4de6aeb93..c86f7ea5a92 100644
--- a/src/librustc/middle/check_const.rs
+++ b/src/librustc/middle/check_const.rs
@@ -16,7 +16,6 @@ use middle::ty;
 use middle::typeck;
 use util::ppaux;
 
-use core::dvec::DVec;
 use core::option;
 use std::oldmap::HashMap;
 use syntax::ast::*;
@@ -212,20 +211,20 @@ pub fn check_item_recursion(sess: Session,
                             ast_map: ast_map::map,
                             def_map: resolve::DefMap,
                             it: @item) {
-    type env = {
+    struct env {
         root_it: @item,
         sess: Session,
         ast_map: ast_map::map,
         def_map: resolve::DefMap,
-        idstack: @DVec<node_id>,
-    };
+        idstack: @mut ~[node_id]
+    }
 
-    let env = {
+    let env = env {
         root_it: it,
         sess: sess,
         ast_map: ast_map,
         def_map: def_map,
-        idstack: @DVec()
+        idstack: @mut ~[]
     };
 
     let visitor = visit::mk_vt(@visit::Visitor {
@@ -236,12 +235,12 @@ pub fn check_item_recursion(sess: Session,
     (visitor.visit_item)(it, env, visitor);
 
     fn visit_item(it: @item, &&env: env, v: visit::vt<env>) {
-        if (*env.idstack).contains(&(it.id)) {
+        if env.idstack.contains(&(it.id)) {
             env.sess.span_fatal(env.root_it.span, ~"recursive constant");
         }
-        (*env.idstack).push(it.id);
+        env.idstack.push(it.id);
         visit::visit_item(it, env, v);
-        (*env.idstack).pop();
+        env.idstack.pop();
     }
 
     fn visit_expr(e: @expr, &&env: env, v: visit::vt<env>) {