Skip to content

Commit

Permalink
Stabilize @file command line arguments
Browse files Browse the repository at this point in the history
Issue #63576
  • Loading branch information
jsgf committed Nov 7, 2019
1 parent 3a1b3b3 commit 446a43d
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 17 deletions.
12 changes: 1 addition & 11 deletions src/librustc_driver/args.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,12 @@ use std::fmt;
use std::fs;
use std::io;
use std::str;
use std::sync::atomic::{AtomicBool, Ordering};

static USED_ARGSFILE_FEATURE: AtomicBool = AtomicBool::new(false);

pub fn used_unstable_argsfile() -> bool {
USED_ARGSFILE_FEATURE.load(Ordering::Relaxed)
}

pub fn arg_expand(arg: String) -> Result<Vec<String>, Error> {
if arg.starts_with("@") {
let path = &arg[1..];
let file = match fs::read_to_string(path) {
Ok(file) => {
USED_ARGSFILE_FEATURE.store(true, Ordering::Relaxed);
file
}
Ok(file) => file,
Err(ref err) if err.kind() == io::ErrorKind::InvalidData => {
return Err(Error::Utf8Error(Some(path.to_string())));
}
Expand Down
6 changes: 0 additions & 6 deletions src/librustc_driver/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1043,12 +1043,6 @@ pub fn handle_options(args: &[String]) -> Option<getopts::Matches> {
// (unstable option being used on stable)
nightly_options::check_nightly_options(&matches, &config::rustc_optgroups());

// Late check to see if @file was used without unstable options enabled
if crate::args::used_unstable_argsfile() && !nightly_options::is_unstable_enabled(&matches) {
early_error(ErrorOutputType::default(),
"@path is unstable - use -Z unstable-options to enable its use");
}

if matches.opt_present("h") || matches.opt_present("help") {
// Only show unstable options in --help if we accept unstable options.
usage(matches.opt_present("verbose"), nightly_options::is_unstable_enabled(&matches));
Expand Down

0 comments on commit 446a43d

Please sign in to comment.