rustc: Revert the conversion to interior vectors due to heap corruption
This commit is contained in:
parent
ec890fff23
commit
bbdba21b1f
27 changed files with 629 additions and 774 deletions
|
@ -1,7 +1,6 @@
|
|||
import syntax::codemap::span;
|
||||
import ast::*;
|
||||
|
||||
import std::ivec;
|
||||
import std::vec;
|
||||
import std::option;
|
||||
import vec::map;
|
||||
|
@ -103,7 +102,7 @@ fn fold_meta_item_(&@meta_item mi, ast_fold fld) -> @meta_item {
|
|||
case (meta_word(?id)) { meta_word(fld.fold_ident(id)) }
|
||||
case (meta_list(?id, ?mis)) {
|
||||
auto fold_meta_item = bind fold_meta_item_(_,fld);
|
||||
meta_list(id, ivec::map(fold_meta_item, mis))
|
||||
meta_list(id, map(fold_meta_item, mis))
|
||||
}
|
||||
case (meta_name_value(?id,?s)) {
|
||||
meta_name_value(fld.fold_ident(id),s)
|
||||
|
@ -131,10 +130,10 @@ fn noop_fold_crate(&crate_ c, ast_fold fld) -> crate_ {
|
|||
auto fold_meta_item = bind fold_meta_item_(_,fld);
|
||||
auto fold_attribute = bind fold_attribute_(_,fold_meta_item);
|
||||
|
||||
ret rec(directives=ivec::map(fld.fold_crate_directive, c.directives),
|
||||
ret rec(directives=map(fld.fold_crate_directive, c.directives),
|
||||
module=fld.fold_mod(c.module),
|
||||
attrs=ivec::map(fold_attribute, c.attrs),
|
||||
config=ivec::map(fold_meta_item, c.config));
|
||||
attrs=map(fold_attribute, c.attrs),
|
||||
config=map(fold_meta_item, c.config));
|
||||
}
|
||||
|
||||
fn noop_fold_crate_directive(&crate_directive_ cd, ast_fold fld)
|
||||
|
@ -145,7 +144,7 @@ fn noop_fold_crate_directive(&crate_directive_ cd, ast_fold fld)
|
|||
}
|
||||
case(cdir_dir_mod(?id,?fname,?cds,?attrs)) {
|
||||
cdir_dir_mod(fld.fold_ident(id),fname,
|
||||
ivec::map(fld.fold_crate_directive, cds), attrs)
|
||||
map(fld.fold_crate_directive, cds), attrs)
|
||||
}
|
||||
case(cdir_view_item(?vi)) {
|
||||
cdir_view_item(fld.fold_view_item(vi))
|
||||
|
@ -166,7 +165,7 @@ fn noop_fold_native_item(&@native_item ni, ast_fold fld) -> @native_item {
|
|||
auto fold_attribute = bind fold_attribute_(_,fold_meta_item);
|
||||
|
||||
ret @rec(ident=fld.fold_ident(ni.ident),
|
||||
attrs=ivec::map(fold_attribute, ni.attrs),
|
||||
attrs=map(fold_attribute, ni.attrs),
|
||||
node=alt (ni.node) {
|
||||
case (native_item_ty) { native_item_ty }
|
||||
case (native_item_fn(?st, ?fdec, ?typms)) {
|
||||
|
@ -188,7 +187,7 @@ fn noop_fold_item(&@item i, ast_fold fld) -> @item {
|
|||
auto fold_attribute = bind fold_attribute_(_,fold_meta_item);
|
||||
|
||||
ret @rec(ident=fld.fold_ident(i.ident),
|
||||
attrs=ivec::map(fold_attribute,i.attrs),
|
||||
attrs=map(fold_attribute,i.attrs),
|
||||
id=i.id, node=fld.fold_item_underscore(i.node),
|
||||
span=i.span);
|
||||
}
|
||||
|
@ -486,8 +485,8 @@ fn noop_fold_ident(&ident i, ast_fold fld) -> ident {
|
|||
}
|
||||
|
||||
fn noop_fold_path(&path_ p, ast_fold fld) -> path_ {
|
||||
ret rec(idents=ivec::map(fld.fold_ident, p.idents),
|
||||
types=ivec::map(fld.fold_ty, p.types));
|
||||
ret rec(idents=map(fld.fold_ident, p.idents),
|
||||
types=map(fld.fold_ty, p.types));
|
||||
}
|
||||
|
||||
fn noop_fold_local(&local_ l, ast_fold fld) -> local_ {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue