From 1009c21ad7b1db366a5c600946652cc490598ec1 Mon Sep 17 00:00:00 2001 From: Lenny222 Date: Fri, 24 May 2013 21:32:30 +0200 Subject: [PATCH] show options for -W help and -W --- src/librustc/driver/driver.rs | 2 +- src/librustc/rustc.rc | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/librustc/driver/driver.rs b/src/librustc/driver/driver.rs index a7cc90f473d4b..75731cf4dc62d 100644 --- a/src/librustc/driver/driver.rs +++ b/src/librustc/driver/driver.rs @@ -811,7 +811,7 @@ pub fn optgroups() -> ~[getopts::groups::OptGroup] { for detail)", "FEATURE"), optopt("", "android-cross-path", "The path to the Android NDK", "PATH"), - optmulti("W", "warn", + optflagopt("W", "warn", "Set lint warnings", "OPT"), optmulti("A", "allow", "Set lint allowed", "OPT"), diff --git a/src/librustc/rustc.rc b/src/librustc/rustc.rc index 2b392efaa859c..056b4a9a49ef9 100644 --- a/src/librustc/rustc.rc +++ b/src/librustc/rustc.rc @@ -228,9 +228,14 @@ pub fn run_compiler(args: &~[~str], demitter: diagnostic::Emitter) { return; } + // Display the available lint options if "-W help" or only "-W" is given. let lint_flags = vec::append(getopts::opt_strs(matches, "W"), getopts::opt_strs(matches, "warn")); - if lint_flags.contains(&~"help") { + + let show_lint_options = lint_flags.contains(&~"help") || + (opt_present(matches, "W") && lint_flags.is_empty()); + + if show_lint_options { describe_warnings(); return; }