diff options
| author | Haitao Li <lihaitao@gmail.com> | 2011-11-17 12:23:43 +0800 |
|---|---|---|
| committer | Marijn Haverbeke <marijnh@gmail.com> | 2011-11-17 09:28:30 +0100 |
| commit | 388eed383f05dbc322d5808faf7d52091d0c0fca (patch) | |
| tree | 44236821d2641d1f713b551275f676d5f1c1c926 /src/comp | |
| parent | fe6484d3e6edbcc84805bae053180cb2cdf27805 (diff) | |
| download | rust-388eed383f05dbc322d5808faf7d52091d0c0fca.tar.gz rust-388eed383f05dbc322d5808faf7d52091d0c0fca.zip | |
rustc: Add a flag '--warn-unused-imports'
Followup of issue #889
Diffstat (limited to 'src/comp')
| -rw-r--r-- | src/comp/driver/rustc.rs | 9 | ||||
| -rw-r--r-- | src/comp/driver/session.rs | 3 | ||||
| -rw-r--r-- | src/comp/middle/resolve.rs | 4 |
3 files changed, 12 insertions, 4 deletions
diff --git a/src/comp/driver/rustc.rs b/src/comp/driver/rustc.rs index d42cd85ea08..1a684c1bf6c 100644 --- a/src/comp/driver/rustc.rs +++ b/src/comp/driver/rustc.rs @@ -274,6 +274,8 @@ options: --test build test harness --gc garbage collect shared data (experimental/temporary) --stack-growth perform stack checks (experimental) + --warn-unused-imports + warn about unnecessary imports "); } @@ -397,6 +399,7 @@ fn build_session_options(match: getopts::match) let test = opt_present(match, "test"); let do_gc = opt_present(match, "gc"); let stack_growth = opt_present(match, "stack-growth"); + let warn_unused_imports = opt_present(match, "warn-unused-imports"); let sopts: @session::options = @{library: library, static: static, @@ -417,7 +420,8 @@ fn build_session_options(match: getopts::match) no_trans: no_trans, do_gc: do_gc, stack_growth: stack_growth, - no_asm_comments: no_asm_comments}; + no_asm_comments: no_asm_comments, + warn_unused_imports: warn_unused_imports}; ret sopts; } @@ -457,7 +461,8 @@ fn opts() -> [getopts::opt] { optmulti("cfg"), optflag("test"), optflag("lib"), optflag("static"), optflag("gc"), optflag("stack-growth"), - optflag("no-asm-comments")]; + optflag("no-asm-comments"), + optflag("warn-unused-imports")]; } fn build_output_filenames(ifile: str, ofile: option::t<str>, diff --git a/src/comp/driver/session.rs b/src/comp/driver/session.rs index c5708551ad9..4d7c53790ea 100644 --- a/src/comp/driver/session.rs +++ b/src/comp/driver/session.rs @@ -43,7 +43,8 @@ type options = no_trans: bool, do_gc: bool, stack_growth: bool, - no_asm_comments: bool}; + no_asm_comments: bool, + warn_unused_imports: bool}; type crate_metadata = {name: str, data: [u8]}; diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs index 7ee6471660d..21b10280b0d 100644 --- a/src/comp/middle/resolve.rs +++ b/src/comp/middle/resolve.rs @@ -139,7 +139,9 @@ fn resolve_crate(sess: session, amap: ast_map::map, crate: @ast::crate) -> check_for_collisions(e, *crate); check_bad_exports(e); resolve_names(e, crate); - check_unused_imports(e); + if sess.get_opts().warn_unused_imports { + check_unused_imports(e); + } ret {def_map: e.def_map, ext_map: e.ext_map}; } |
