Skip to content

Commit f6a7925

Browse files
committed
rustc: Give a better error message when references involving the caller region fail to unify
1 parent 3db8ae0 commit f6a7925

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

src/rustc/util/ppaux.rs

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,19 @@ import driver::session::session;
1313
fn region_to_str(cx: ctxt, region: region) -> str {
1414
alt region {
1515
re_named(_) { "<name>" } // TODO: include name
16-
re_caller(_) { "<caller>" }
16+
re_caller(def_id) {
17+
if def_id.crate == ast::local_crate {
18+
alt cx.items.get(def_id.node) {
19+
ast_map::node_item(item, path) {
20+
#fmt("<caller of %s::%s>", ast_map::path_to_str(*path),
21+
item.ident)
22+
}
23+
_ { "<caller>" }
24+
}
25+
} else {
26+
"<caller>"
27+
}
28+
}
1729
re_block(node_id) {
1830
alt cx.items.get(node_id) {
1931
ast_map::node_block(blk) {

0 commit comments

Comments
 (0)