about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorVadim Petrochenkov <vadim.petrochenkov@gmail.com>2018-07-12 13:24:59 +0300
committerVadim Petrochenkov <vadim.petrochenkov@gmail.com>2018-07-14 20:10:07 +0300
commit431aefb2d4d579b152f7f26f3e70d2fdc3db4bfb (patch)
treec30139184897e67a9138bc21109ddb0be9064f7f /src/libsyntax
parent1731f0af22af16c461b2b7abe58988b8549b2de6 (diff)
downloadrust-431aefb2d4d579b152f7f26f3e70d2fdc3db4bfb.tar.gz
rust-431aefb2d4d579b152f7f26f3e70d2fdc3db4bfb.zip
Functions introducing procedural macros reserve a slot in the macro namespace as well
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ext/base.rs3
-rw-r--r--src/libsyntax/ext/expand.rs2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/libsyntax/ext/base.rs b/src/libsyntax/ext/base.rs
index e49a521040f..b585f887269 100644
--- a/src/libsyntax/ext/base.rs
+++ b/src/libsyntax/ext/base.rs
@@ -571,6 +571,8 @@ pub enum MacroKind {
     Attr,
     /// A derive attribute macro - #[derive(Foo)]
     Derive,
+    /// A view of a procedural macro from the same crate that defines it.
+    ProcMacroStub,
 }
 
 impl MacroKind {
@@ -579,6 +581,7 @@ impl MacroKind {
             MacroKind::Bang => "macro",
             MacroKind::Attr => "attribute macro",
             MacroKind::Derive => "derive macro",
+            MacroKind::ProcMacroStub => "crate-local procedural macro",
         }
     }
 }
diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs
index 865cb3d0d45..281ebaff272 100644
--- a/src/libsyntax/ext/expand.rs
+++ b/src/libsyntax/ext/expand.rs
@@ -232,7 +232,7 @@ pub enum InvocationKind {
 }
 
 impl Invocation {
-    fn span(&self) -> Span {
+    pub fn span(&self) -> Span {
         match self.kind {
             InvocationKind::Bang { span, .. } => span,
             InvocationKind::Attr { attr: Some(ref attr), .. } => attr.span,