Fix unreachable code in libsyntax

This commit is contained in:
Manish Goregaokar 2015-11-24 07:23:53 +05:30
parent 2eca64de71
commit 7fbcb51589
3 changed files with 4 additions and 9 deletions

View File

@ -678,9 +678,9 @@ impl<'a> ExtCtxt<'a> {
pub fn bt_push(&mut self, ei: ExpnInfo) {
self.recursion_count += 1;
if self.recursion_count > self.ecfg.recursion_limit {
panic!(self.span_fatal(ei.call_site,
self.span_fatal(ei.call_site,
&format!("recursion limit reached while expanding the macro `{}`",
ei.callee.name())));
ei.callee.name()));
}
let mut call_site = ei.call_site;

View File

@ -209,12 +209,12 @@ fn generic_extension<'cx>(cx: &'cx ExtCtxt,
best_fail_msg = (*msg).clone();
},
Error(err_sp, ref msg) => {
panic!(cx.span_fatal(err_sp.substitute_dummy(sp), &msg[..]))
cx.span_fatal(err_sp.substitute_dummy(sp), &msg[..])
}
}
}
panic!(cx.span_fatal(best_fail_spot.substitute_dummy(sp), &best_fail_msg[..]));
cx.span_fatal(best_fail_spot.substitute_dummy(sp), &best_fail_msg[..]);
}
// Note that macro-by-example's input is also matched against a token tree:

View File

@ -8,11 +8,6 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
// Test that the unboxed closure sugar can be used with an arbitrary
// struct type and that it is equivalent to the same syntax using
// angle brackets. This test covers only simple types and in
// particular doesn't test bound regions.
#![allow(dead_code)]
#![deny(unreachable_code)]