diff options
| author | Yuki OKUSHI <huyuumi.dev@gmail.com> | 2019-03-31 06:30:45 +0900 |
|---|---|---|
| committer | Yuki OKUSHI <huyuumi.dev@gmail.com> | 2019-03-31 07:51:31 +0900 |
| commit | 45c82abf13385f22d10dccecd1e54b28cfbeb5cc (patch) | |
| tree | a6b7d5e0b8f4153ab1e46222f27d4e1edf6f3dec /src/librustc_errors | |
| parent | 70a497a43794f0da5610c6da835ed3e02cd9af4d (diff) | |
| download | rust-45c82abf13385f22d10dccecd1e54b28cfbeb5cc.tar.gz rust-45c82abf13385f22d10dccecd1e54b28cfbeb5cc.zip | |
Distinguish depending on error level
Remove unnecessary comment
Diffstat (limited to 'src/librustc_errors')
| -rw-r--r-- | src/librustc_errors/emitter.rs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/librustc_errors/emitter.rs b/src/librustc_errors/emitter.rs index e9f269b6e24..1c5d0c5bab1 100644 --- a/src/librustc_errors/emitter.rs +++ b/src/librustc_errors/emitter.rs @@ -6,6 +6,7 @@ use crate::{ Level, CodeSuggestion, DiagnosticBuilder, SubDiagnostic, SuggestionStyle, SourceMapperDyn, DiagnosticId, }; +use crate::Level::Error; use crate::snippet::{Annotation, AnnotationType, Line, MultilineAnnotation, StyledString, Style}; use crate::styled_buffer::StyledBuffer; @@ -72,6 +73,7 @@ impl Emitter for EmitterWriter { self.fix_multispans_in_std_macros(&mut primary_span, &mut children, + &db.level, db.handler.flags.external_macro_backtrace); self.emit_messages_default(&db.level, @@ -856,18 +858,27 @@ impl EmitterWriter { fn fix_multispans_in_std_macros(&mut self, span: &mut MultiSpan, children: &mut Vec<SubDiagnostic>, + level: &Level, backtrace: bool) { let mut spans_updated = self.fix_multispan_in_std_macros(span, backtrace); for child in children.iter_mut() { spans_updated |= self.fix_multispan_in_std_macros(&mut child.span, backtrace); } + let msg = if level == &Error { + "this error originates in a macro outside of the current crate \ + (in Nightly builds, run with -Z external-macro-backtrace \ + for more info)".to_string() + } else { + "this warning originates in a macro outside of the current crate \ + (in Nightly builds, run with -Z external-macro-backtrace \ + for more info)".to_string() + }; + if spans_updated { children.push(SubDiagnostic { level: Level::Note, message: vec![ - ("this error originates in a macro outside of the current crate \ - (in Nightly builds, run with -Z external-macro-backtrace \ - for more info)".to_string(), + (msg, Style::NoStyle), ], span: MultiSpan::new(), |
