From 9b9cce2316119a2ffdc9556d410e464b7542d64d Mon Sep 17 00:00:00 2001 From: Jakub Wieczorek Date: Tue, 1 Jul 2014 18:39:41 +0200 Subject: Add scaffolding for assigning alpha-numeric codes to rustc diagnostics --- src/libsyntax/ext/build.rs | 6 ++++++ src/libsyntax/ext/expand.rs | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src/libsyntax/ext') diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 4d79ff3257a..4d3913da365 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -148,6 +148,8 @@ pub trait AstBuilder { fn expr_some(&self, sp: Span, expr: Gc) -> Gc; fn expr_none(&self, sp: Span) -> Gc; + fn expr_tuple(&self, sp: Span, exprs: Vec>) -> Gc; + fn expr_fail(&self, span: Span, msg: InternedString) -> Gc; fn expr_unreachable(&self, span: Span) -> Gc; @@ -674,6 +676,10 @@ impl<'a> AstBuilder for ExtCtxt<'a> { self.expr_path(none) } + fn expr_tuple(&self, sp: Span, exprs: Vec>) -> Gc { + self.expr(sp, ast::ExprTup(exprs)) + } + fn expr_fail(&self, span: Span, msg: InternedString) -> Gc { let loc = self.codemap().lookup_char_pos(span.lo); self.expr_call_global( diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs index b7d72ae4deb..b5f7005c2a3 100644 --- a/src/libsyntax/ext/expand.rs +++ b/src/libsyntax/ext/expand.rs @@ -58,7 +58,7 @@ pub fn expand_expr(e: Gc, fld: &mut MacroExpander) -> Gc { None => { fld.cx.span_err( pth.span, - format!("macro undefined: '{}'", + format!("macro undefined: '{}!'", extnamestr.get()).as_slice()); // let compilation continue @@ -567,7 +567,7 @@ fn expand_stmt(s: &Stmt, fld: &mut MacroExpander) -> SmallVector> { let marked_after = match fld.extsbox.find(&extname.name) { None => { fld.cx.span_err(pth.span, - format!("macro undefined: '{}'", + format!("macro undefined: '{}!'", extnamestr).as_slice()); return SmallVector::zero(); } -- cgit 1.4.1-3-g733a5