From 2a18c29d67943e284d89b14a7a26202a7dd37f9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Br=C3=BCschweiler?= Date: Fri, 26 Jul 2013 16:02:34 +0200 Subject: [PATCH] syntax: fix span for obsolete extern visibility error --- src/libsyntax/parse/parser.rs | 2 +- src/test/compile-fail/obsolete-syntax.rs | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index bb3c185c2a95b..dc42b4bdb80b2 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -4196,7 +4196,7 @@ impl Parser { // Do not allow visibility to be specified. if visibility != ast::inherited { - self.obsolete(*self.span, ObsoleteExternVisibility); + self.obsolete(*self.last_span, ObsoleteExternVisibility); } let abis = opt_abis.get_or_default(AbiSet::C()); diff --git a/src/test/compile-fail/obsolete-syntax.rs b/src/test/compile-fail/obsolete-syntax.rs index 65ba4ed6e0006..706a64a99ac37 100644 --- a/src/test/compile-fail/obsolete-syntax.rs +++ b/src/test/compile-fail/obsolete-syntax.rs @@ -63,4 +63,14 @@ fn obsolete_moves() { //~^ ERROR obsolete syntax: binary move } +extern mod obsolete_name { + //~^ ERROR obsolete syntax: named external module + fn bar(); +} + +pub extern { + //~^ ERROR obsolete syntax: `pub extern` + pub fn bar(); +} + fn main() { }