Skip to content

Commit

Permalink
rollup merge of rust-lang#21441: alexcrichton/rustc-opts
Browse files Browse the repository at this point in the history
This is a bit of cleanup work to clean out some old deprecated flags and deprecated lint names from the compiler (they've been deprecated for quite awhile now).

This also notably puts `--pretty` behind the `-Z unstable-options` flag (where it was supposed to be previously).
  • Loading branch information
alexcrichton committed Jan 21, 2015
2 parents 2783807 + 64914d9 commit b5de833
Show file tree
Hide file tree
Showing 28 changed files with 49 additions and 238 deletions.
3 changes: 2 additions & 1 deletion src/compiletest/runtest.rs
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,7 @@ fn run_pretty_test(config: &Config, props: &TestProps, testfile: &Path) {
let aux_dir = aux_output_dir_name(config, testfile);
// FIXME (#9639): This needs to handle non-utf8 paths
let mut args = vec!("-".to_string(),
"-Zunstable-options".to_string(),
"--pretty".to_string(),
pretty_type,
format!("--target={}", config.target),
Expand Down Expand Up @@ -340,7 +341,7 @@ actual:\n\
};
// FIXME (#9639): This needs to handle non-utf8 paths
let mut args = vec!("-".to_string(),
"--no-trans".to_string(),
"-Zno-trans".to_string(),
"--crate-type=lib".to_string(),
format!("--target={}", target),
"-L".to_string(),
Expand Down
25 changes: 1 addition & 24 deletions src/librustc/lint/context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -231,30 +231,7 @@ impl LintStore {
// We have one lint pass defined in this module.
self.register_pass(sess, false, box GatherNodeLevels as LintPassObject);

// Insert temporary renamings for a one-time deprecation (#16545)
self.register_renamed("unnecessary_typecast", "unused_typecasts");
self.register_renamed("unsigned_negate", "unsigned_negation");
self.register_renamed("type_limits", "unused_comparisons");
self.register_renamed("type_overflow", "overflowing_literals");
self.register_renamed("ctypes", "improper_ctypes");
self.register_renamed("owned_heap_memory", "box_pointers");
self.register_renamed("unused_attribute", "unused_attributes");
self.register_renamed("path_statement", "path_statements");
self.register_renamed("unused_result", "unused_results");
self.register_renamed("non_uppercase_statics", "non_upper_case_globals");
self.register_renamed("unnecessary_parens", "unused_parens");
self.register_renamed("unnecessary_import_braces", "unused_import_braces");
self.register_renamed("unsafe_block", "unsafe_blocks");
self.register_renamed("unnecessary_allocation", "unused_allocation");
self.register_renamed("missing_doc", "missing_docs");
self.register_renamed("unused_extern_crate", "unused_extern_crates");
self.register_renamed("unnecessary_qualification", "unused_qualifications");
self.register_renamed("unrecognized_lint", "unknown_lints");
self.register_renamed("unused_variable", "unused_variables");
self.register_renamed("dead_assignment", "unused_assignments");
self.register_renamed("unknown_crate_type", "unknown_crate_types");
self.register_renamed("variant_size_difference", "variant_size_differences");
self.register_renamed("transmute_fat_ptr", "fat_ptr_transmutes");
// Insert temporary renamings for a one-time deprecation
self.register_renamed("raw_pointer_deriving", "raw_pointer_derive");

}
Expand Down
102 changes: 6 additions & 96 deletions src/librustc/session/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -786,30 +786,14 @@ pub fn rustc_optgroups() -> Vec<RustcOptGroup> {
opt::multi("", "extern", "Specify where an external rust library is \
located",
"NAME=PATH"),
opt::opt("", "opt-level", "Optimize with possible levels 0-3", "LEVEL"),
opt::opt("", "sysroot", "Override the system root", "PATH"),
opt::multi("Z", "", "Set internal debugging options", "FLAG"),
opt::opt("", "color", "Configure coloring of output:
auto = colorize, if output goes to a tty (default);
always = always colorize output;
never = never colorize output", "auto|always|never"),

// DEPRECATED
opt::flag("", "print-crate-name", "Output the crate name and exit"),
opt::flag("", "print-file-name", "Output the file(s) that would be \
written if compilation \
continued and exit"),
opt::opt("", "debuginfo", "Emit DWARF debug info to the objects created:
0 = no debug info,
1 = line-tables only (for stacktraces and breakpoints),
2 = full debug info with variable and type information \
(same as -g)", "LEVEL"),
opt::flag("", "no-trans", "Run all passes except translation; no output"),
opt::flag("", "no-analysis", "Parse and expand the source, but run no \
analysis and produce no output"),
opt::flag("", "parse-only", "Parse only; do not compile, assemble, \
or link"),
opt::flagopt("", "pretty",
opt::flagopt_u("", "pretty",
"Pretty-print the input instead of compiling;
valid types are: `normal` (un-annotated source),
`expanded` (crates expanded),
Expand All @@ -823,9 +807,6 @@ pub fn rustc_optgroups() -> Vec<RustcOptGroup> {
`everybody_loops` (all function bodies replaced with `loop {}`).",
"TYPE"),
opt::opt_u("", "show-span", "Show spans for compiler debugging", "expr|pat|ty"),
opt::flagopt("", "dep-info",
"Output dependency info to <filename> after compiling, \
in a format suitable for use by Makefiles", "FILENAME"),
]);
opts
}
Expand Down Expand Up @@ -861,27 +842,9 @@ pub fn build_session_options(matches: &getopts::Matches) -> Options {

let debugging_opts = build_debugging_options(matches);

let parse_only = if matches.opt_present("parse-only") {
// FIXME(acrichto) remove this eventually
early_warn("--parse-only is deprecated in favor of -Z parse-only");
true
} else {
debugging_opts.parse_only
};
let no_trans = if matches.opt_present("no-trans") {
// FIXME(acrichto) remove this eventually
early_warn("--no-trans is deprecated in favor of -Z no-trans");
true
} else {
debugging_opts.no_trans
};
let no_analysis = if matches.opt_present("no-analysis") {
// FIXME(acrichto) remove this eventually
early_warn("--no-analysis is deprecated in favor of -Z no-analysis");
true
} else {
debugging_opts.no_analysis
};
let parse_only = debugging_opts.parse_only;
let no_trans = debugging_opts.no_trans;
let no_analysis = debugging_opts.no_analysis;

if debugging_opts.debug_llvm {
unsafe { llvm::LLVMSetDebug(1); }
Expand Down Expand Up @@ -921,28 +884,10 @@ pub fn build_session_options(matches: &getopts::Matches) -> Options {
host_triple().to_string());
let opt_level = {
if matches.opt_present("O") {
if matches.opt_present("opt-level") {
early_error("-O and --opt-level both provided");
}
if cg.opt_level.is_some() {
early_error("-O and -C opt-level both provided");
}
Default
} else if matches.opt_present("opt-level") {
// FIXME(acrichto) remove this eventually
early_warn("--opt-level=N is deprecated in favor of -C opt-level=N");
match matches.opt_str("opt-level").as_ref().map(|s| s.as_slice()) {
None |
Some("0") => No,
Some("1") => Less,
Some("2") => Default,
Some("3") => Aggressive,
Some(arg) => {
early_error(&format!("optimization level needs to be \
between 0-3 (instead was `{}`)",
arg)[]);
}
}
} else {
match cg.opt_level {
None => No,
Expand All @@ -960,27 +905,10 @@ pub fn build_session_options(matches: &getopts::Matches) -> Options {
};
let gc = debugging_opts.gc;
let debuginfo = if matches.opt_present("g") {
if matches.opt_present("debuginfo") {
early_error("-g and --debuginfo both provided");
}
if cg.debuginfo.is_some() {
early_error("-g and -C debuginfo both provided");
}
FullDebugInfo
} else if matches.opt_present("debuginfo") {
// FIXME(acrichto) remove this eventually
early_warn("--debuginfo=N is deprecated in favor of -C debuginfo=N");
match matches.opt_str("debuginfo").as_ref().map(|s| s.as_slice()) {
Some("0") => NoDebugInfo,
Some("1") => LimitedDebugInfo,
None |
Some("2") => FullDebugInfo,
Some(arg) => {
early_error(&format!("debug info level needs to be between \
0-2 (instead was `{}`)",
arg)[]);
}
}
} else {
match cg.debuginfo {
None | Some(0) => NoDebugInfo,
Expand Down Expand Up @@ -1036,15 +964,9 @@ pub fn build_session_options(matches: &getopts::Matches) -> Options {

let cfg = parse_cfgspecs(matches.opt_strs("cfg"));
let test = matches.opt_present("test");
let write_dependency_info = if matches.opt_present("dep-info") {
// FIXME(acrichto) remove this eventually
early_warn("--dep-info has been deprecated in favor of --emit");
(true, matches.opt_str("dep-info").map(|p| Path::new(p)))
} else {
(output_types.contains(&OutputTypeDepInfo), None)
};
let write_dependency_info = (output_types.contains(&OutputTypeDepInfo), None);

let mut prints = matches.opt_strs("print").into_iter().map(|s| {
let prints = matches.opt_strs("print").into_iter().map(|s| {
match s.as_slice() {
"crate-name" => PrintRequest::CrateName,
"file-names" => PrintRequest::FileNames,
Expand All @@ -1054,18 +976,6 @@ pub fn build_session_options(matches: &getopts::Matches) -> Options {
}
}
}).collect::<Vec<_>>();
if matches.opt_present("print-crate-name") {
// FIXME(acrichto) remove this eventually
early_warn("--print-crate-name has been deprecated in favor of \
--print crate-name");
prints.push(PrintRequest::CrateName);
}
if matches.opt_present("print-file-name") {
// FIXME(acrichto) remove this eventually
early_warn("--print-file-name has been deprecated in favor of \
--print file-names");
prints.push(PrintRequest::FileNames);
}

if !cg.remark.is_empty() && debuginfo == NoDebugInfo {
early_warn("-C remark will not show source locations without \
Expand Down
12 changes: 8 additions & 4 deletions src/librustc_driver/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -153,10 +153,14 @@ fn run_compiler(args: &[String]) {
return
}

let pretty = matches.opt_default("pretty", "normal").map(|a| {
// stable pretty-print variants only
pretty::parse_pretty(&sess, a.as_slice(), false)
});
let pretty = if sess.opts.debugging_opts.unstable_options {
matches.opt_default("pretty", "normal").map(|a| {
// stable pretty-print variants only
pretty::parse_pretty(&sess, a.as_slice(), false)
})
} else {
None
};
let pretty = if pretty.is_none() &&
sess.unstable_options() {
matches.opt_str("xpretty").map(|a| {
Expand Down
16 changes: 0 additions & 16 deletions src/test/compile-fail/lint-renaming.rs

This file was deleted.

2 changes: 1 addition & 1 deletion src/test/compile-fail/lint-type-limits.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

#![allow(dead_code)]

// compile-flags: -D type-limits
// compile-flags: -D unused-comparisons
fn main() { }

fn foo() {
Expand Down
2 changes: 1 addition & 1 deletion src/test/compile-fail/warn-path-statement.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// compile-flags: -D path-statement
// compile-flags: -D path-statements
fn main() {

let x = 10is;
Expand Down
2 changes: 1 addition & 1 deletion src/test/debuginfo/issue7712.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// compile-flags:--debuginfo=1
// compile-flags:-C debuginfo=1
// min-lldb-version: 310

pub trait TraitWithDefaultMethod : Sized {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// ignore-android: FIXME(#10381)
// min-lldb-version: 310

// compile-flags:--debuginfo=1
// compile-flags:-C debuginfo=1

// gdb-command:run
// lldb-command:run
Expand Down
2 changes: 1 addition & 1 deletion src/test/debuginfo/limited-debuginfo.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

// ignore-lldb

// compile-flags:--debuginfo=1
// compile-flags:-C debuginfo=1

// Make sure functions have proper names
// gdb-command:info functions
Expand Down
12 changes: 6 additions & 6 deletions src/test/run-make/crate-data-smoke/Makefile
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
-include ../tools.mk

all:
[ `$(RUSTC) --print-crate-name crate.rs` = "foo" ]
[ `$(RUSTC) --print-file-name crate.rs` = "$(call BIN,foo)" ]
[ `$(RUSTC) --print-file-name --crate-type=lib \
[ `$(RUSTC) --print crate-name crate.rs` = "foo" ]
[ `$(RUSTC) --print file-names crate.rs` = "$(call BIN,foo)" ]
[ `$(RUSTC) --print file-names --crate-type=lib \
--test crate.rs` = "$(call BIN,foo)" ]
[ `$(RUSTC) --print-file-name --test lib.rs` = "$(call BIN,mylib)" ]
$(RUSTC) --print-file-name lib.rs
$(RUSTC) --print-file-name rlib.rs
[ `$(RUSTC) --print file-names --test lib.rs` = "$(call BIN,mylib)" ]
$(RUSTC) --print file-names lib.rs
$(RUSTC) --print file-names rlib.rs
25 changes: 0 additions & 25 deletions src/test/run-make/dep-info-custom/Makefile

This file was deleted.

7 changes: 0 additions & 7 deletions src/test/run-make/dep-info-custom/Makefile.foo

This file was deleted.

11 changes: 0 additions & 11 deletions src/test/run-make/dep-info-custom/bar.rs

This file was deleted.

11 changes: 0 additions & 11 deletions src/test/run-make/dep-info-custom/foo.rs

This file was deleted.

14 changes: 0 additions & 14 deletions src/test/run-make/dep-info-custom/lib.rs

This file was deleted.

2 changes: 1 addition & 1 deletion src/test/run-make/dep-info-spaces/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
ifneq ($(shell uname),FreeBSD)
ifndef IS_WINDOWS
all:
$(RUSTC) --dep-info $(TMPDIR)/custom-deps-file.d --crate-type=lib lib.rs
$(RUSTC) --emit link,dep-info --crate-type=lib lib.rs
sleep 1
touch 'foo foo.rs'
-rm -f $(TMPDIR)/done
Expand Down
Loading

0 comments on commit b5de833

Please sign in to comment.