@@ -838,12 +838,12 @@ pub fn new_span(cx: &ExtCtxt, sp: Span) -> Span {
838838 }
839839}
840840
841- pub struct MacroExpander < ' a > {
841+ pub struct MacroExpander < ' a , ' b > {
842842 extsbox : SyntaxEnv ,
843- cx : & ' a mut ExtCtxt < ' a > ,
843+ cx : & ' a mut ExtCtxt < ' b > ,
844844}
845845
846- impl < ' a > Folder for MacroExpander < ' a > {
846+ impl < ' a , ' b > Folder for MacroExpander < ' a , ' b > {
847847 fn fold_expr ( & mut self , expr : @ast:: Expr ) -> @ast:: Expr {
848848 expand_expr ( expr, self )
849849 }
@@ -875,7 +875,7 @@ pub struct ExpansionConfig<'a> {
875875 crate_id : CrateId ,
876876}
877877
878- pub fn expand_crate ( parse_sess : @ parse:: ParseSess ,
878+ pub fn expand_crate ( parse_sess : & parse:: ParseSess ,
879879 cfg : ExpansionConfig ,
880880 c : Crate ) -> Crate {
881881 let mut cx = ExtCtxt :: new ( parse_sess, c. config . clone ( ) , cfg) ;
@@ -974,7 +974,7 @@ mod test {
974974 use ext:: mtwt;
975975 use parse;
976976 use parse:: token;
977- use util:: parser_testing:: { string_to_crate_and_sess } ;
977+ use util:: parser_testing:: { string_to_parser } ;
978978 use util:: parser_testing:: { string_to_pat, strs_to_idents} ;
979979 use visit;
980980 use visit:: Visitor ;
@@ -1126,15 +1126,16 @@ mod test {
11261126 //}
11271127
11281128 fn expand_crate_str ( crate_str : ~str ) -> ast:: Crate {
1129- let ( crate_ast, ps) = string_to_crate_and_sess ( crate_str) ;
1129+ let ps = parse:: new_parse_sess ( ) ;
1130+ let crate_ast = string_to_parser ( & ps, source_str) . parse_crate_mod ( ) ;
11301131 // the cfg argument actually does matter, here...
11311132 let mut loader = ErrLoader ;
11321133 let cfg = :: syntax:: ext:: expand:: ExpansionConfig {
11331134 loader : & mut loader,
11341135 deriving_hash_type_parameter : false ,
11351136 crate_id : from_str ( "test" ) . unwrap ( ) ,
11361137 } ;
1137- expand_crate ( ps, cfg, crate_ast)
1138+ expand_crate ( & ps, cfg, crate_ast)
11381139 }
11391140
11401141 //fn expand_and_resolve(crate_str: @str) -> ast::crate {
0 commit comments