use -Z flag instead of env var
This commit is contained in:
parent
bec62c2f12
commit
7a5a1f9857
|
@ -1036,6 +1036,8 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
|
||||||
"run all passes except translation; no output"),
|
"run all passes except translation; no output"),
|
||||||
treat_err_as_bug: bool = (false, parse_bool, [TRACKED],
|
treat_err_as_bug: bool = (false, parse_bool, [TRACKED],
|
||||||
"treat all errors that occur as bugs"),
|
"treat all errors that occur as bugs"),
|
||||||
|
macro_backtrace: bool = (false, parse_bool, [UNTRACKED],
|
||||||
|
"show macro backtraces even for foreign macros"),
|
||||||
continue_parse_after_error: bool = (false, parse_bool, [TRACKED],
|
continue_parse_after_error: bool = (false, parse_bool, [TRACKED],
|
||||||
"attempt to recover from parse errors (experimental)"),
|
"attempt to recover from parse errors (experimental)"),
|
||||||
incremental: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
incremental: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
||||||
|
|
|
@ -731,6 +731,8 @@ pub fn build_session_with_codemap(sopts: config::Options,
|
||||||
|
|
||||||
let treat_err_as_bug = sopts.debugging_opts.treat_err_as_bug;
|
let treat_err_as_bug = sopts.debugging_opts.treat_err_as_bug;
|
||||||
|
|
||||||
|
let macro_backtrace = sopts.debugging_opts.macro_backtrace;
|
||||||
|
|
||||||
let emitter: Box<Emitter> = match (sopts.error_format, emitter_dest) {
|
let emitter: Box<Emitter> = match (sopts.error_format, emitter_dest) {
|
||||||
(config::ErrorOutputType::HumanReadable(color_config), None) => {
|
(config::ErrorOutputType::HumanReadable(color_config), None) => {
|
||||||
Box::new(EmitterWriter::stderr(color_config, Some(codemap.clone()), false))
|
Box::new(EmitterWriter::stderr(color_config, Some(codemap.clone()), false))
|
||||||
|
@ -755,6 +757,7 @@ pub fn build_session_with_codemap(sopts: config::Options,
|
||||||
let diagnostic_handler =
|
let diagnostic_handler =
|
||||||
errors::Handler::with_emitter(can_print_warnings,
|
errors::Handler::with_emitter(can_print_warnings,
|
||||||
treat_err_as_bug,
|
treat_err_as_bug,
|
||||||
|
macro_backtrace,
|
||||||
emitter);
|
emitter);
|
||||||
|
|
||||||
build_session_(sopts,
|
build_session_(sopts,
|
||||||
|
@ -925,7 +928,7 @@ pub fn early_error(output: config::ErrorOutputType, msg: &str) -> ! {
|
||||||
Box::new(EmitterWriter::stderr(color_config, None, true))
|
Box::new(EmitterWriter::stderr(color_config, None, true))
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
let handler = errors::Handler::with_emitter(true, false, emitter);
|
let handler = errors::Handler::with_emitter(true, false, false, emitter);
|
||||||
handler.emit(&MultiSpan::new(), msg, errors::Level::Fatal);
|
handler.emit(&MultiSpan::new(), msg, errors::Level::Fatal);
|
||||||
panic!(errors::FatalError);
|
panic!(errors::FatalError);
|
||||||
}
|
}
|
||||||
|
@ -940,7 +943,7 @@ pub fn early_warn(output: config::ErrorOutputType, msg: &str) {
|
||||||
Box::new(EmitterWriter::stderr(color_config, None, true))
|
Box::new(EmitterWriter::stderr(color_config, None, true))
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
let handler = errors::Handler::with_emitter(true, false, emitter);
|
let handler = errors::Handler::with_emitter(true, false, false, emitter);
|
||||||
handler.emit(&MultiSpan::new(), msg, errors::Level::Warning);
|
handler.emit(&MultiSpan::new(), msg, errors::Level::Warning);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -141,7 +141,7 @@ pub fn run<F>(run_compiler: F) -> isize
|
||||||
errors::emitter::EmitterWriter::stderr(errors::ColorConfig::Auto,
|
errors::emitter::EmitterWriter::stderr(errors::ColorConfig::Auto,
|
||||||
None,
|
None,
|
||||||
true);
|
true);
|
||||||
let handler = errors::Handler::with_emitter(true, false, Box::new(emitter));
|
let handler = errors::Handler::with_emitter(true, false, false, Box::new(emitter));
|
||||||
handler.emit(&MultiSpan::new(),
|
handler.emit(&MultiSpan::new(),
|
||||||
"aborting due to previous error(s)",
|
"aborting due to previous error(s)",
|
||||||
errors::Level::Fatal);
|
errors::Level::Fatal);
|
||||||
|
@ -1221,7 +1221,7 @@ pub fn monitor<F: FnOnce() + Send + 'static>(f: F) {
|
||||||
Box::new(errors::emitter::EmitterWriter::stderr(errors::ColorConfig::Auto,
|
Box::new(errors::emitter::EmitterWriter::stderr(errors::ColorConfig::Auto,
|
||||||
None,
|
None,
|
||||||
false));
|
false));
|
||||||
let handler = errors::Handler::with_emitter(true, false, emitter);
|
let handler = errors::Handler::with_emitter(true, false, false, emitter);
|
||||||
|
|
||||||
// a .span_bug or .bug call has already printed what
|
// a .span_bug or .bug call has already printed what
|
||||||
// it wants to print.
|
// it wants to print.
|
||||||
|
|
|
@ -104,7 +104,7 @@ fn test_env<F>(source_string: &str,
|
||||||
let mut options = config::basic_options();
|
let mut options = config::basic_options();
|
||||||
options.debugging_opts.verbose = true;
|
options.debugging_opts.verbose = true;
|
||||||
options.unstable_features = UnstableFeatures::Allow;
|
options.unstable_features = UnstableFeatures::Allow;
|
||||||
let diagnostic_handler = errors::Handler::with_emitter(true, false, emitter);
|
let diagnostic_handler = errors::Handler::with_emitter(true, false, false, emitter);
|
||||||
|
|
||||||
let cstore = Rc::new(CStore::new(::DefaultTransCrate::metadata_loader()));
|
let cstore = Rc::new(CStore::new(::DefaultTransCrate::metadata_loader()));
|
||||||
let sess = session::build_session_(options,
|
let sess = session::build_session_(options,
|
||||||
|
|
|
@ -23,7 +23,7 @@ use syntax_pos::{MultiSpan, Span};
|
||||||
#[must_use]
|
#[must_use]
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
pub struct DiagnosticBuilder<'a> {
|
pub struct DiagnosticBuilder<'a> {
|
||||||
handler: &'a Handler,
|
pub handler: &'a Handler,
|
||||||
diagnostic: Diagnostic,
|
diagnostic: Diagnostic,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,6 @@ use std::rc::Rc;
|
||||||
use term;
|
use term;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use std::cmp::min;
|
use std::cmp::min;
|
||||||
use std::env;
|
|
||||||
|
|
||||||
/// Emitter trait for emitting errors.
|
/// Emitter trait for emitting errors.
|
||||||
pub trait Emitter {
|
pub trait Emitter {
|
||||||
|
@ -65,8 +64,11 @@ impl Emitter for EmitterWriter {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !db.handler.macro_backtrace {
|
||||||
self.fix_multispans_in_std_macros(&mut primary_span, &mut children);
|
self.fix_multispans_in_std_macros(&mut primary_span, &mut children);
|
||||||
|
}
|
||||||
self.emit_messages_default(&db.level,
|
self.emit_messages_default(&db.level,
|
||||||
|
db.handler.macro_backtrace,
|
||||||
&db.styled_message(),
|
&db.styled_message(),
|
||||||
&db.code,
|
&db.code,
|
||||||
&primary_span,
|
&primary_span,
|
||||||
|
@ -787,7 +789,6 @@ impl EmitterWriter {
|
||||||
fn fix_multispans_in_std_macros(&mut self,
|
fn fix_multispans_in_std_macros(&mut self,
|
||||||
span: &mut MultiSpan,
|
span: &mut MultiSpan,
|
||||||
children: &mut Vec<SubDiagnostic>) {
|
children: &mut Vec<SubDiagnostic>) {
|
||||||
if env::var_os("RUST_MACRO_BACKTRACE").is_none() {
|
|
||||||
let mut spans_updated = self.fix_multispan_in_std_macros(span);
|
let mut spans_updated = self.fix_multispan_in_std_macros(span);
|
||||||
for child in children.iter_mut() {
|
for child in children.iter_mut() {
|
||||||
spans_updated |= self.fix_multispan_in_std_macros(&mut child.span);
|
spans_updated |= self.fix_multispan_in_std_macros(&mut child.span);
|
||||||
|
@ -797,7 +798,7 @@ impl EmitterWriter {
|
||||||
level: Level::Note,
|
level: Level::Note,
|
||||||
message: vec![
|
message: vec![
|
||||||
(["this error originates in a macro outside of the current crate",
|
(["this error originates in a macro outside of the current crate",
|
||||||
"(run with RUST_MACRO_BACKTRACE=1 for more info)"].join(" "),
|
"(run with -Z macro-backtrace for more info)"].join(" "),
|
||||||
Style::NoStyle),
|
Style::NoStyle),
|
||||||
],
|
],
|
||||||
span: MultiSpan::new(),
|
span: MultiSpan::new(),
|
||||||
|
@ -805,7 +806,6 @@ impl EmitterWriter {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/// Add a left margin to every line but the first, given a padding length and the label being
|
/// Add a left margin to every line but the first, given a padding length and the label being
|
||||||
/// displayed, keeping the provided highlighting.
|
/// displayed, keeping the provided highlighting.
|
||||||
|
@ -888,6 +888,7 @@ impl EmitterWriter {
|
||||||
msg: &Vec<(String, Style)>,
|
msg: &Vec<(String, Style)>,
|
||||||
code: &Option<DiagnosticId>,
|
code: &Option<DiagnosticId>,
|
||||||
level: &Level,
|
level: &Level,
|
||||||
|
macro_backtrace: bool,
|
||||||
max_line_num_len: usize,
|
max_line_num_len: usize,
|
||||||
is_secondary: bool)
|
is_secondary: bool)
|
||||||
-> io::Result<()> {
|
-> io::Result<()> {
|
||||||
|
@ -1085,7 +1086,7 @@ impl EmitterWriter {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if env::var_os("RUST_MACRO_BACKTRACE").is_some() {
|
if macro_backtrace {
|
||||||
if let Some(ref primary_span) = msp.primary_span().as_ref() {
|
if let Some(ref primary_span) = msp.primary_span().as_ref() {
|
||||||
self.render_macro_backtrace_old_school(primary_span, &mut buffer)?;
|
self.render_macro_backtrace_old_school(primary_span, &mut buffer)?;
|
||||||
}
|
}
|
||||||
|
@ -1182,6 +1183,7 @@ impl EmitterWriter {
|
||||||
}
|
}
|
||||||
fn emit_messages_default(&mut self,
|
fn emit_messages_default(&mut self,
|
||||||
level: &Level,
|
level: &Level,
|
||||||
|
macro_backtrace: bool,
|
||||||
message: &Vec<(String, Style)>,
|
message: &Vec<(String, Style)>,
|
||||||
code: &Option<DiagnosticId>,
|
code: &Option<DiagnosticId>,
|
||||||
span: &MultiSpan,
|
span: &MultiSpan,
|
||||||
|
@ -1190,7 +1192,13 @@ impl EmitterWriter {
|
||||||
let max_line_num = self.get_max_line_num(span, children);
|
let max_line_num = self.get_max_line_num(span, children);
|
||||||
let max_line_num_len = max_line_num.to_string().len();
|
let max_line_num_len = max_line_num.to_string().len();
|
||||||
|
|
||||||
match self.emit_message_default(span, message, code, level, max_line_num_len, false) {
|
match self.emit_message_default(span,
|
||||||
|
message,
|
||||||
|
code,
|
||||||
|
level,
|
||||||
|
macro_backtrace,
|
||||||
|
max_line_num_len,
|
||||||
|
false) {
|
||||||
Ok(()) => {
|
Ok(()) => {
|
||||||
if !children.is_empty() {
|
if !children.is_empty() {
|
||||||
let mut buffer = StyledBuffer::new();
|
let mut buffer = StyledBuffer::new();
|
||||||
|
@ -1210,6 +1218,7 @@ impl EmitterWriter {
|
||||||
&child.styled_message(),
|
&child.styled_message(),
|
||||||
&None,
|
&None,
|
||||||
&child.level,
|
&child.level,
|
||||||
|
macro_backtrace,
|
||||||
max_line_num_len,
|
max_line_num_len,
|
||||||
true) {
|
true) {
|
||||||
Err(e) => panic!("failed to emit error: {}", e),
|
Err(e) => panic!("failed to emit error: {}", e),
|
||||||
|
|
|
@ -237,6 +237,7 @@ pub struct Handler {
|
||||||
emitter: RefCell<Box<Emitter>>,
|
emitter: RefCell<Box<Emitter>>,
|
||||||
pub can_emit_warnings: bool,
|
pub can_emit_warnings: bool,
|
||||||
treat_err_as_bug: bool,
|
treat_err_as_bug: bool,
|
||||||
|
pub macro_backtrace: bool,
|
||||||
continue_after_error: Cell<bool>,
|
continue_after_error: Cell<bool>,
|
||||||
delayed_span_bug: RefCell<Option<Diagnostic>>,
|
delayed_span_bug: RefCell<Option<Diagnostic>>,
|
||||||
tracked_diagnostics: RefCell<Option<Vec<Diagnostic>>>,
|
tracked_diagnostics: RefCell<Option<Vec<Diagnostic>>>,
|
||||||
|
@ -251,14 +252,16 @@ impl Handler {
|
||||||
pub fn with_tty_emitter(color_config: ColorConfig,
|
pub fn with_tty_emitter(color_config: ColorConfig,
|
||||||
can_emit_warnings: bool,
|
can_emit_warnings: bool,
|
||||||
treat_err_as_bug: bool,
|
treat_err_as_bug: bool,
|
||||||
|
macro_backtrace: bool,
|
||||||
cm: Option<Rc<CodeMapper>>)
|
cm: Option<Rc<CodeMapper>>)
|
||||||
-> Handler {
|
-> Handler {
|
||||||
let emitter = Box::new(EmitterWriter::stderr(color_config, cm, false));
|
let emitter = Box::new(EmitterWriter::stderr(color_config, cm, false));
|
||||||
Handler::with_emitter(can_emit_warnings, treat_err_as_bug, emitter)
|
Handler::with_emitter(can_emit_warnings, treat_err_as_bug, macro_backtrace, emitter)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn with_emitter(can_emit_warnings: bool,
|
pub fn with_emitter(can_emit_warnings: bool,
|
||||||
treat_err_as_bug: bool,
|
treat_err_as_bug: bool,
|
||||||
|
macro_backtrace: bool,
|
||||||
e: Box<Emitter>)
|
e: Box<Emitter>)
|
||||||
-> Handler {
|
-> Handler {
|
||||||
Handler {
|
Handler {
|
||||||
|
@ -266,6 +269,7 @@ impl Handler {
|
||||||
emitter: RefCell::new(e),
|
emitter: RefCell::new(e),
|
||||||
can_emit_warnings,
|
can_emit_warnings,
|
||||||
treat_err_as_bug,
|
treat_err_as_bug,
|
||||||
|
macro_backtrace,
|
||||||
continue_after_error: Cell::new(true),
|
continue_after_error: Cell::new(true),
|
||||||
delayed_span_bug: RefCell::new(None),
|
delayed_span_bug: RefCell::new(None),
|
||||||
tracked_diagnostics: RefCell::new(None),
|
tracked_diagnostics: RefCell::new(None),
|
||||||
|
|
|
@ -353,7 +353,7 @@ pub struct CodegenContext {
|
||||||
|
|
||||||
impl CodegenContext {
|
impl CodegenContext {
|
||||||
pub fn create_diag_handler(&self) -> Handler {
|
pub fn create_diag_handler(&self) -> Handler {
|
||||||
Handler::with_emitter(true, false, Box::new(self.diag_emitter.clone()))
|
Handler::with_emitter(true, false, false, Box::new(self.diag_emitter.clone()))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn config(&self, kind: ModuleKind) -> &ModuleConfig {
|
pub fn config(&self, kind: ModuleKind) -> &ModuleConfig {
|
||||||
|
|
|
@ -141,6 +141,7 @@ pub fn run_core(search_paths: SearchPaths,
|
||||||
let diagnostic_handler = errors::Handler::with_tty_emitter(ColorConfig::Auto,
|
let diagnostic_handler = errors::Handler::with_tty_emitter(ColorConfig::Auto,
|
||||||
true,
|
true,
|
||||||
false,
|
false,
|
||||||
|
false,
|
||||||
Some(codemap.clone()));
|
Some(codemap.clone()));
|
||||||
|
|
||||||
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
||||||
|
|
|
@ -81,7 +81,7 @@ pub fn run(input: &str,
|
||||||
|
|
||||||
let codemap = Rc::new(CodeMap::new(sessopts.file_path_mapping()));
|
let codemap = Rc::new(CodeMap::new(sessopts.file_path_mapping()));
|
||||||
let handler =
|
let handler =
|
||||||
errors::Handler::with_tty_emitter(ColorConfig::Auto, true, false, Some(codemap.clone()));
|
errors::Handler::with_tty_emitter(ColorConfig::Auto, true, false, false, Some(codemap.clone()));
|
||||||
|
|
||||||
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
||||||
let mut sess = session::build_session_(
|
let mut sess = session::build_session_(
|
||||||
|
@ -244,7 +244,7 @@ fn run_test(test: &str, cratename: &str, filename: &str, cfgs: Vec<String>, libs
|
||||||
let _bomb = Bomb(data.clone(), old.unwrap_or(box io::stdout()));
|
let _bomb = Bomb(data.clone(), old.unwrap_or(box io::stdout()));
|
||||||
|
|
||||||
// Compile the code
|
// Compile the code
|
||||||
let diagnostic_handler = errors::Handler::with_emitter(true, false, box emitter);
|
let diagnostic_handler = errors::Handler::with_emitter(true, false, false, box emitter);
|
||||||
|
|
||||||
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
let cstore = Rc::new(CStore::new(box rustc_trans::LlvmMetadataLoader));
|
||||||
let mut sess = session::build_session_(
|
let mut sess = session::build_session_(
|
||||||
|
|
|
@ -1726,7 +1726,7 @@ mod tests {
|
||||||
Some(cm.clone()),
|
Some(cm.clone()),
|
||||||
false);
|
false);
|
||||||
ParseSess {
|
ParseSess {
|
||||||
span_diagnostic: errors::Handler::with_emitter(true, false, Box::new(emitter)),
|
span_diagnostic: errors::Handler::with_emitter(true, false, false, Box::new(emitter)),
|
||||||
unstable_features: UnstableFeatures::from_environment(),
|
unstable_features: UnstableFeatures::from_environment(),
|
||||||
config: CrateConfig::new(),
|
config: CrateConfig::new(),
|
||||||
included_mod_stack: RefCell::new(Vec::new()),
|
included_mod_stack: RefCell::new(Vec::new()),
|
||||||
|
|
|
@ -58,6 +58,7 @@ impl ParseSess {
|
||||||
let handler = Handler::with_tty_emitter(ColorConfig::Auto,
|
let handler = Handler::with_tty_emitter(ColorConfig::Auto,
|
||||||
true,
|
true,
|
||||||
false,
|
false,
|
||||||
|
false,
|
||||||
Some(cm.clone()));
|
Some(cm.clone()));
|
||||||
ParseSess::with_span_handler(handler, cm)
|
ParseSess::with_span_handler(handler, cm)
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ fn test_harness(file_text: &str, span_labels: Vec<SpanLabel>, expected_output: &
|
||||||
let emitter = EmitterWriter::new(Box::new(Shared { data: output.clone() }),
|
let emitter = EmitterWriter::new(Box::new(Shared { data: output.clone() }),
|
||||||
Some(code_map.clone()),
|
Some(code_map.clone()),
|
||||||
false);
|
false);
|
||||||
let handler = Handler::with_emitter(true, false, Box::new(emitter));
|
let handler = Handler::with_emitter(true, false, false, Box::new(emitter));
|
||||||
handler.span_err(msp, "foo");
|
handler.span_err(msp, "foo");
|
||||||
|
|
||||||
assert!(expected_output.chars().next() == Some('\n'),
|
assert!(expected_output.chars().next() == Some('\n'),
|
||||||
|
|
|
@ -4,7 +4,7 @@ error: requires at least a format string argument
|
||||||
12 | format!();
|
12 | format!();
|
||||||
| ^^^^^^^^^^
|
| ^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: expected token: `,`
|
error: expected token: `,`
|
||||||
--> $DIR/bad-format-args.rs:13:5
|
--> $DIR/bad-format-args.rs:13:5
|
||||||
|
@ -12,7 +12,7 @@ error: expected token: `,`
|
||||||
13 | format!("" 1);
|
13 | format!("" 1);
|
||||||
| ^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: expected token: `,`
|
error: expected token: `,`
|
||||||
--> $DIR/bad-format-args.rs:14:5
|
--> $DIR/bad-format-args.rs:14:5
|
||||||
|
@ -20,7 +20,7 @@ error: expected token: `,`
|
||||||
14 | format!("", 1 1);
|
14 | format!("", 1 1);
|
||||||
| ^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 3 previous errors
|
error: aborting due to 3 previous errors
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ error[E0600]: cannot apply unary operator `!` to type `&'static str`
|
||||||
12 | assert!("foo");
|
12 | assert!("foo");
|
||||||
| ^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ error: 1 positional argument in format string, but no arguments were given
|
||||||
16 | myprintln!("{}"); //~ ERROR in this macro
|
16 | myprintln!("{}"); //~ ERROR in this macro
|
||||||
| ^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ error: invalid format string: expected `'}'` but string was terminated
|
||||||
| ^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: if you intended to print `{`, you can escape it using `{{`
|
= note: if you intended to print `{`, you can escape it using `{{`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: invalid format string: unmatched `}` found
|
error: invalid format string: unmatched `}` found
|
||||||
--> $DIR/format-string-error.rs:14:5
|
--> $DIR/format-string-error.rs:14:5
|
||||||
|
@ -14,7 +14,7 @@ error: invalid format string: unmatched `}` found
|
||||||
| ^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: if you intended to print `}`, you can escape it using `}}`
|
= note: if you intended to print `}`, you can escape it using `}}`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
error: aborting due to 2 previous errors
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ error[E0597]: borrowed value does not live long enough
|
||||||
| - temporary value needs to live until here
|
| - temporary value needs to live until here
|
||||||
|
|
|
|
||||||
= note: consider using a `let` binding to increase its lifetime
|
= note: consider using a `let` binding to increase its lifetime
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
// Test that the macro backtrace facility works
|
// Test that the macro backtrace facility works
|
||||||
// aux-build:ping.rs
|
// aux-build:ping.rs
|
||||||
// rustc-env:RUST_MACRO_BACKTRACE
|
// compile-flags: -Z macro-backtrace
|
||||||
|
|
||||||
#[macro_use] extern crate ping;
|
#[macro_use] extern crate ping;
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ error: multiple unused formatting arguments
|
||||||
= help: `%.*3$s` should be written as `{:.2$}`
|
= help: `%.*3$s` should be written as `{:.2$}`
|
||||||
= help: `%s` should be written as `{}`
|
= help: `%s` should be written as `{}`
|
||||||
= note: printf formatting not supported; see the documentation for `std::fmt`
|
= note: printf formatting not supported; see the documentation for `std::fmt`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: argument never used
|
error: argument never used
|
||||||
--> $DIR/format-foreign.rs:13:29
|
--> $DIR/format-foreign.rs:13:29
|
||||||
|
|
|
@ -8,7 +8,7 @@ error: multiple unused formatting arguments
|
||||||
| | unused
|
| | unused
|
||||||
| unused
|
| unused
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: multiple unused formatting arguments
|
error: multiple unused formatting arguments
|
||||||
--> $DIR/format-unused-lables.rs:14:5
|
--> $DIR/format-unused-lables.rs:14:5
|
||||||
|
@ -23,7 +23,7 @@ error: multiple unused formatting arguments
|
||||||
18 | | );
|
18 | | );
|
||||||
| |______^
|
| |______^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: named argument never used
|
error: named argument never used
|
||||||
--> $DIR/format-unused-lables.rs:20:35
|
--> $DIR/format-unused-lables.rs:20:35
|
||||||
|
@ -47,7 +47,7 @@ error: multiple unused formatting arguments
|
||||||
|
|
|
|
||||||
= help: `$STUFF` should be written as `{STUFF}`
|
= help: `$STUFF` should be written as `{STUFF}`
|
||||||
= note: shell formatting not supported; see the documentation for `std::fmt`
|
= note: shell formatting not supported; see the documentation for `std::fmt`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 4 previous errors
|
error: aborting due to 4 previous errors
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ note: lint level defined here
|
||||||
|
|
|
|
||||||
13 | #![deny(unreachable_code)]
|
13 | #![deny(unreachable_code)]
|
||||||
| ^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ error: unreachable statement
|
||||||
36 | println!("foo");
|
36 | println!("foo");
|
||||||
| ^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
error: aborting due to 2 previous errors
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ note: lint level defined here
|
||||||
|
|
|
|
||||||
14 | #![deny(unreachable_code)]
|
14 | #![deny(unreachable_code)]
|
||||||
| ^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ note: lint level defined here
|
||||||
|
|
|
|
||||||
14 | #![deny(unreachable_code)]
|
14 | #![deny(unreachable_code)]
|
||||||
| ^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: unreachable statement
|
error: unreachable statement
|
||||||
--> $DIR/expr_loop.rs:31:5
|
--> $DIR/expr_loop.rs:31:5
|
||||||
|
@ -17,7 +17,7 @@ error: unreachable statement
|
||||||
31 | println!("I am dead.");
|
31 | println!("I am dead.");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: unreachable statement
|
error: unreachable statement
|
||||||
--> $DIR/expr_loop.rs:41:5
|
--> $DIR/expr_loop.rs:41:5
|
||||||
|
@ -25,7 +25,7 @@ error: unreachable statement
|
||||||
41 | println!("I am dead.");
|
41 | println!("I am dead.");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 3 previous errors
|
error: aborting due to 3 previous errors
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ error: unreachable statement
|
||||||
25 | println!("I am dead");
|
25 | println!("I am dead");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: unreachable statement
|
error: unreachable statement
|
||||||
--> $DIR/expr_match.rs:35:5
|
--> $DIR/expr_match.rs:35:5
|
||||||
|
@ -24,7 +24,7 @@ error: unreachable statement
|
||||||
35 | println!("I am dead");
|
35 | println!("I am dead");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 3 previous errors
|
error: aborting due to 3 previous errors
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ note: lint level defined here
|
||||||
|
|
|
|
||||||
14 | #![deny(unreachable_code)]
|
14 | #![deny(unreachable_code)]
|
||||||
| ^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: unreachable statement
|
error: unreachable statement
|
||||||
--> $DIR/expr_while.rs:33:9
|
--> $DIR/expr_while.rs:33:9
|
||||||
|
@ -17,7 +17,7 @@ error: unreachable statement
|
||||||
33 | println!("I am dead.");
|
33 | println!("I am dead.");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: unreachable statement
|
error: unreachable statement
|
||||||
--> $DIR/expr_while.rs:35:5
|
--> $DIR/expr_while.rs:35:5
|
||||||
|
@ -25,7 +25,7 @@ error: unreachable statement
|
||||||
35 | println!("I am, too.");
|
35 | println!("I am, too.");
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 3 previous errors
|
error: aborting due to 3 previous errors
|
||||||
|
|
||||||
|
|
|
@ -56,7 +56,7 @@ error[E0308]: mismatched types
|
||||||
= note: expected type `&mut std::string::String`
|
= note: expected type `&mut std::string::String`
|
||||||
found type `std::string::String`
|
found type `std::string::String`
|
||||||
= help: try with `&mut format!("foo")`
|
= help: try with `&mut format!("foo")`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to 6 previous errors
|
error: aborting due to 6 previous errors
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ error[E0308]: mismatched types
|
||||||
|
|
|
|
||||||
= note: expected type `std::fmt::Arguments<'_>`
|
= note: expected type `std::fmt::Arguments<'_>`
|
||||||
found type `std::string::String`
|
found type `std::string::String`
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ error[E0597]: `foo` does not live long enough
|
||||||
| | borrow occurs here
|
| | borrow occurs here
|
||||||
| borrowed value needs to live until here
|
| borrowed value needs to live until here
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ error[E0597]: borrowed value does not live long enough
|
||||||
19 | }
|
19 | }
|
||||||
| - temporary value needs to live until here
|
| - temporary value needs to live until here
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ error[E0282]: type annotations needed
|
||||||
| |
|
| |
|
||||||
| consider giving `x` a type
|
| consider giving `x` a type
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ error[E0282]: type annotations needed
|
||||||
| |
|
| |
|
||||||
| consider giving the pattern a type
|
| consider giving the pattern a type
|
||||||
|
|
|
|
||||||
= note: this error originates in a macro outside of the current crate (run with RUST_MACRO_BACKTRACE=1 for more info)
|
= note: this error originates in a macro outside of the current crate (run with -Z macro-backtrace for more info)
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue