about summary refs log tree commit diff
path: root/src/libsyntax_ext
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2015-12-30 12:27:10 +0000
committerbors <bors@rust-lang.org>2015-12-30 12:27:10 +0000
commit176ee349a704a1aee9dfb79c27c5da20db7942a5 (patch)
tree99e1ead256ccd196b4135455ef037b14ab3094fa /src/libsyntax_ext
parenta06bb977d86dcfe786d4265f4807a11c39b51141 (diff)
parent04d972906d05e6c27452e1ae35970c30e7cf6e6b (diff)
downloadrust-176ee349a704a1aee9dfb79c27c5da20db7942a5.tar.gz
rust-176ee349a704a1aee9dfb79c27c5da20db7942a5.zip
Auto merge of #30542 - nrc:errs-base, r=nagisa
As discussed [here](https://internals.rust-lang.org/t/more-structured-errors/3005)

r? @nikomatsakis or anyone else on the @rust-lang/compiler team
Diffstat (limited to 'src/libsyntax_ext')
-rw-r--r--src/libsyntax_ext/format.rs9
-rw-r--r--src/libsyntax_ext/lib.rs15
2 files changed, 6 insertions, 18 deletions
diff --git a/src/libsyntax_ext/format.rs b/src/libsyntax_ext/format.rs
index 24094f797e6..78e7f7462f3 100644
--- a/src/libsyntax_ext/format.rs
+++ b/src/libsyntax_ext/format.rs
@@ -130,10 +130,11 @@ fn parse_args(ecx: &mut ExtCtxt, sp: Span, tts: &[ast::TokenTree])
             match names.get(name) {
                 None => {}
                 Some(prev) => {
-                    ecx.span_err(e.span,
-                                 &format!("duplicate argument named `{}`",
-                                         name));
-                    ecx.parse_sess.span_diagnostic.span_note(prev.span, "previously here");
+                    ecx.struct_span_err(e.span,
+                                        &format!("duplicate argument named `{}`",
+                                                 name))
+                       .span_note(prev.span, "previously here")
+                       .emit();
                     continue
                 }
             }
diff --git a/src/libsyntax_ext/lib.rs b/src/libsyntax_ext/lib.rs
index a032666595e..0f049fa9792 100644
--- a/src/libsyntax_ext/lib.rs
+++ b/src/libsyntax_ext/lib.rs
@@ -24,26 +24,13 @@
 #![feature(str_char)]
 
 extern crate fmt_macros;
+#[macro_use]
 extern crate syntax;
 
 use syntax::ext::base::{MacroExpanderFn, NormalTT};
 use syntax::ext::base::{SyntaxEnv, SyntaxExtension};
 use syntax::parse::token::intern;
 
-// A variant of 'try!' that panics on Err(FatalError). This is used as a
-// crutch on the way towards a non-panic!-prone parser. It should be used
-// for fatal parsing errors; eventually we plan to convert all code using
-// panictry to just use normal try
-macro_rules! panictry {
-    ($e:expr) => ({
-        use std::result::Result::{Ok, Err};
-        use syntax::errors::FatalError;
-        match $e {
-            Ok(e) => e,
-            Err(FatalError) => panic!(FatalError)
-        }
-    })
-}
 
 mod asm;
 mod cfg;