Skip to content

Commit 03ae629

Browse files
committed
Remove the #[merge] hack from the parser
1 parent ec8fb88 commit 03ae629

File tree

4 files changed

+1
-85
lines changed

4 files changed

+1
-85
lines changed

src/libsyntax/parse/parser.rs

+1-34
Original file line numberDiff line numberDiff line change
@@ -3550,8 +3550,7 @@ pub impl Parser {
35503550
fn parse_item_mod(&self, outer_attrs: ~[ast::attribute]) -> item_info {
35513551
let id_span = *self.span;
35523552
let id = self.parse_ident();
3553-
let merge = ::attr::first_attr_value_str_by_name(outer_attrs, "merge");
3554-
let info_ = if *self.token == token::SEMI {
3553+
if *self.token == token::SEMI {
35553554
self.bump();
35563555
// This mod is in an external file. Let's go get it!
35573556
let (m, attrs) = self.eval_src_mod(id, outer_attrs, id_span);
@@ -3564,38 +3563,6 @@ pub impl Parser {
35643563
self.expect(&token::RBRACE);
35653564
self.pop_mod_path();
35663565
(id, item_mod(m), Some(inner))
3567-
};
3568-
3569-
// XXX: Transitionary hack to do the template work inside core
3570-
// (int-template, iter-trait). If there's a 'merge' attribute
3571-
// on the mod, then we'll go and suck in another file and merge
3572-
// its contents
3573-
match merge {
3574-
Some(path) => {
3575-
let prefix = Path(
3576-
self.sess.cm.span_to_filename(*self.span));
3577-
let prefix = prefix.dir_path();
3578-
let path = Path(copy *path);
3579-
let (new_mod_item, new_attrs) = self.eval_src_mod_from_path(
3580-
prefix, path, ~[], id_span);
3581-
3582-
let (main_id, main_mod_item, main_attrs) = info_;
3583-
let main_attrs = main_attrs.get();
3584-
3585-
let (main_mod, new_mod) =
3586-
match (main_mod_item, new_mod_item) {
3587-
(item_mod(m), item_mod(n)) => (m, n),
3588-
_ => self.bug("parsed mod item should be mod")
3589-
};
3590-
let merged_mod = ast::_mod {
3591-
view_items: main_mod.view_items + new_mod.view_items,
3592-
items: main_mod.items + new_mod.items
3593-
};
3594-
3595-
let merged_attrs = main_attrs + new_attrs;
3596-
(main_id, item_mod(merged_mod), Some(merged_attrs))
3597-
}
3598-
None => info_
35993566
}
36003567
}
36013568

src/test/run-pass/mod-merge-hack-inst.rs

-16
This file was deleted.

src/test/run-pass/mod-merge-hack-template.rs

-16
This file was deleted.

src/test/run-pass/mod-merge-hack.rs

-19
This file was deleted.

0 commit comments

Comments
 (0)