Skip to content

Commit fed0486

Browse files
committed
Annotate erroring functions in session and parser
1 parent 90dd6e7 commit fed0486

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

src/comp/driver/session.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,13 +79,13 @@ state obj session(ast::crate_num cnum,
7979
ret cnum;
8080
}
8181

82-
fn span_err(span sp, str msg) {
82+
fn span_err(span sp, str msg) -> ! {
8383
// FIXME: Use constants, but rustboot doesn't know how to export them.
8484
emit_diagnostic(sp, msg, "error", 9u8, cm);
8585
fail;
8686
}
8787

88-
fn err(str msg) {
88+
fn err(str msg) -> ! {
8989
log_err #fmt("error: %s", msg);
9090
fail;
9191
}
@@ -107,19 +107,19 @@ state obj session(ast::crate_num cnum,
107107
emit_diagnostic(sp, msg, "note", 10u8, cm);
108108
}
109109

110-
fn bug(str msg) {
110+
fn bug(str msg) -> ! {
111111
log_err #fmt("error: internal compiler error %s", msg);
112112
fail;
113113
}
114114

115-
fn span_unimpl(span sp, str msg) {
115+
fn span_unimpl(span sp, str msg) -> ! {
116116
// FIXME: Use constants, but rustboot doesn't know how to export them.
117117
emit_diagnostic(sp, "internal compiler error: unimplemented " + msg,
118118
"error", 9u8, cm);
119119
fail;
120120
}
121-
122-
fn unimpl(str msg) {
121+
122+
fn unimpl(str msg) -> ! {
123123
log_err #fmt("error: unimplemented %s", msg);
124124
fail;
125125
}

src/comp/front/parser.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ state type parser =
3131
state obj {
3232
fn peek() -> token::token;
3333
fn bump();
34-
fn err(str s);
34+
fn err(str s) -> !;
3535
fn restrict(restriction r);
3636
fn get_restriction() -> restriction;
3737
fn get_file_type() -> file_type;
@@ -85,7 +85,7 @@ fn new_parser(session::session sess,
8585
hi = rdr.get_chpos();
8686
}
8787

88-
fn err(str m) {
88+
fn err(str m) -> ! {
8989
sess.span_err(rec(lo=lo, hi=hi), m);
9090
}
9191

@@ -217,7 +217,7 @@ fn bad_expr_word_table() -> std::map::hashmap[str, ()] {
217217
ret words;
218218
}
219219

220-
fn unexpected(&parser p, token::token t) {
220+
fn unexpected(&parser p, token::token t) -> ! {
221221
let str s = "unexpected token: ";
222222
s += token::to_str(p.get_reader(), t);
223223
p.err(s);

0 commit comments

Comments
 (0)