Skip to content

Commit d1a65da

Browse files
committed
Time lint in the driver like every other pass, instead of in lint.
1 parent af22871 commit d1a65da

File tree

2 files changed

+9
-21
lines changed

2 files changed

+9
-21
lines changed

src/rustc/driver/driver.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,8 @@ fn compile_upto(sess: session, cfg: ast::crate_cfg,
205205
time(time_passes, "kind checking",
206206
bind kind::check_crate(ty_cx, method_map, last_use_map, crate));
207207

208-
lint::check_crate(ty_cx, crate, sess.opts.lint_opts, time_passes);
208+
time(time_passes, "lint checking",
209+
bind lint::check_crate(ty_cx, crate, sess.opts.lint_opts));
209210

210211
if upto == cu_no_trans { ret {crate: crate, tcx: some(ty_cx)}; }
211212
let outputs = option::get(outputs);

src/rustc/middle/lint.rs

Lines changed: 7 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -199,17 +199,6 @@ fn lookup_lint(dict: lint_dict, s: str)
199199
}
200200
}
201201

202-
203-
// FIXME: Copied from driver.rs, to work around a bug(#1566)
204-
fn time(do_it: bool, what: str, thunk: fn()) {
205-
if !do_it{ ret thunk(); }
206-
let start = std::time::precise_time_s();
207-
thunk();
208-
let end = std::time::precise_time_s();
209-
io::stdout().write_str(#fmt("time: %3.3f s\t%s\n",
210-
end - start, what));
211-
}
212-
213202
fn check_item(i: @ast::item, &&cx: ctxt, v: visit::vt<ctxt>) {
214203
cx.with_warn_attrs(i.attrs) {|cx|
215204
for cx.curr.each {|lint, level|
@@ -368,7 +357,7 @@ fn check_item_old_vecs(cx: ctxt, level: level, it: @ast::item) {
368357

369358

370359
fn check_crate(tcx: ty::ctxt, crate: @ast::crate,
371-
lint_opts: [(lint, level)], time_pass: bool) {
360+
lint_opts: [(lint, level)]) {
372361

373362
fn hash_lint(&&lint: lint) -> uint { lint as uint }
374363
fn eq_lint(&&a: lint, &&b: lint) -> bool { a == b }
@@ -386,14 +375,12 @@ fn check_crate(tcx: ty::ctxt, crate: @ast::crate,
386375
cx.set_level(lint, level);
387376
}
388377

389-
time(time_pass, "lint checking") {||
390-
cx.with_warn_attrs(crate.node.attrs) {|cx|
391-
let visit = visit::mk_vt(@{
392-
visit_item: check_item
393-
with *visit::default_visitor()
394-
});
395-
visit::visit_crate(*crate, cx, visit);
396-
}
378+
cx.with_warn_attrs(crate.node.attrs) {|cx|
379+
let visit = visit::mk_vt(@{
380+
visit_item: check_item
381+
with *visit::default_visitor()
382+
});
383+
visit::visit_crate(*crate, cx, visit);
397384
}
398385

399386
tcx.sess.abort_if_errors();

0 commit comments

Comments
 (0)