Adapt the PR for HIR changes

This commit is contained in:
Simonas Kazlauskas 2015-09-03 11:54:17 +03:00
parent 1a6934840e
commit c493084ec1
3 changed files with 12 additions and 6 deletions

View file

@ -1124,8 +1124,14 @@ pub fn noop_fold_expr<T: Folder>(Expr {id, node, span}: Expr, folder: &mut T) ->
}); });
ExprPath(qself, folder.fold_path(path)) ExprPath(qself, folder.fold_path(path))
} }
ExprBreak(opt_ident) => ExprBreak(opt_ident.map(|x| folder.fold_ident(x))), ExprBreak(opt_ident) => ExprBreak(opt_ident.map(|label|
ExprAgain(opt_ident) => ExprAgain(opt_ident.map(|x| folder.fold_ident(x))), respan(folder.new_span(label.span),
folder.fold_ident(label.node)))
),
ExprAgain(opt_ident) => ExprAgain(opt_ident.map(|label|
respan(folder.new_span(label.span),
folder.fold_ident(label.node)))
),
ExprRet(e) => ExprRet(e.map(|x| folder.fold_expr(x))), ExprRet(e) => ExprRet(e.map(|x| folder.fold_expr(x))),
ExprInlineAsm(InlineAsm { ExprInlineAsm(InlineAsm {
inputs, inputs,

View file

@ -730,9 +730,9 @@ pub enum Expr_ {
/// A referencing operation (`&a` or `&mut a`) /// A referencing operation (`&a` or `&mut a`)
ExprAddrOf(Mutability, P<Expr>), ExprAddrOf(Mutability, P<Expr>),
/// A `break`, with an optional label to break /// A `break`, with an optional label to break
ExprBreak(Option<Ident>), ExprBreak(Option<SpannedIdent>),
/// A `continue`, with an optional label /// A `continue`, with an optional label
ExprAgain(Option<Ident>), ExprAgain(Option<SpannedIdent>),
/// A `return`, with an optional value to be returned /// A `return`, with an optional value to be returned
ExprRet(Option<P<Expr>>), ExprRet(Option<P<Expr>>),

View file

@ -1587,7 +1587,7 @@ impl<'a> State<'a> {
try!(word(&mut self.s, "break")); try!(word(&mut self.s, "break"));
try!(space(&mut self.s)); try!(space(&mut self.s));
if let Some(ident) = opt_ident { if let Some(ident) = opt_ident {
try!(self.print_ident(ident)); try!(self.print_ident(ident.node));
try!(space(&mut self.s)); try!(space(&mut self.s));
} }
} }
@ -1595,7 +1595,7 @@ impl<'a> State<'a> {
try!(word(&mut self.s, "continue")); try!(word(&mut self.s, "continue"));
try!(space(&mut self.s)); try!(space(&mut self.s));
if let Some(ident) = opt_ident { if let Some(ident) = opt_ident {
try!(self.print_ident(ident)); try!(self.print_ident(ident.node));
try!(space(&mut self.s)) try!(space(&mut self.s))
} }
} }