use codemap::{self, CodeMap, ExpnInfo, NameAndSpan, MacroAttribute, dummy_spanned};
use errors;
-use errors::snippet::{SnippetData};
use config;
use entry::{self, EntryPointType};
use ext::base::{ExtCtxt, Resolver};
EntryPointType::MainNamed |
EntryPointType::MainAttr |
EntryPointType::Start =>
- folded.map(|ast::Item {id, ident, attrs, node, vis, span}| {
+ folded.map(|ast::Item {id, ident, attrs, node, vis, span, tokens}| {
let allow_str = Symbol::intern("allow");
let dead_code_str = Symbol::intern("dead_code");
let word_vec = vec![attr::mk_list_word_item(dead_code_str)];
allow_dead_code_item);
ast::Item {
- id: id,
- ident: ident,
+ id,
+ ident,
attrs: attrs.into_iter()
.filter(|attr| {
!attr.check_name("main") && !attr.check_name("start")
})
.chain(iter::once(allow_dead_code))
.collect(),
- node: node,
- vis: vis,
- span: span
+ node,
+ vis,
+ span,
+ tokens,
}
}),
EntryPointType::None |
let reexport_mod = ast::Mod {
inner: DUMMY_SP,
- items: items,
+ items,
};
let sym = Ident::with_empty_ctxt(Symbol::gensym("__test_reexports"));
node: ast::ItemKind::Mod(reexport_mod),
vis: ast::Visibility::Public,
span: DUMMY_SP,
+ tokens: None,
})).pop().unwrap();
(it, sym)
let mark = Mark::fresh(Mark::root());
let mut cx: TestCtxt = TestCtxt {
- sess: sess,
+ sess,
span_diagnostic: sd,
ext_cx: ExtCtxt::new(sess, ExpansionConfig::default("test".to_string()), resolver),
path: Vec::new(),
testfns: Vec::new(),
- reexport_test_harness_main: reexport_test_harness_main,
+ reexport_test_harness_main,
is_test_crate: is_test_crate(&krate),
toplevel_reexport: None,
ctxt: SyntaxContext::empty().apply_mark(mark),
format: MacroAttribute(Symbol::intern("test")),
span: None,
allow_internal_unstable: true,
+ allow_internal_unsafe: false,
}
});
TestHarnessGenerator {
- cx: cx,
+ cx,
tests: Vec::new(),
tested_submods: Vec::new(),
}.fold_crate(krate)
};
P(ast::Item {
id: ast::DUMMY_NODE_ID,
- ident: ident,
+ ident,
node: vi,
attrs: vec![],
- vis: vis,
- span: sp
+ vis,
+ span: sp,
+ tokens: None,
})
}
id: ast::DUMMY_NODE_ID,
node: main,
vis: ast::Visibility::Public,
- span: sp
+ span: sp,
+ tokens: None,
})
}
node: item_,
vis: ast::Visibility::Public,
span: DUMMY_SP,
+ tokens: None,
})).pop().unwrap();
let reexport = cx.reexport_test_harness_main.map(|s| {
// building `use <ident> = __test::main`
attrs: vec![],
node: ast::ItemKind::Use(P(use_path)),
vis: ast::Visibility::Inherited,
- span: DUMMY_SP
+ span: DUMMY_SP,
+ tokens: None,
})).pop().unwrap()
});