diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-05-21 22:35:39 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-05-25 05:52:13 +0000 |
| commit | b13392f77151c8fe83c8ac9e4d29a24702df5f4e (patch) | |
| tree | fa9aa02e7e02995ed7f09ed5f2e44ee7b8e2d6f5 /src | |
| parent | 754fdad4a878340bb90a10f0072e6d4891d63c70 (diff) | |
| download | rust-b13392f77151c8fe83c8ac9e4d29a24702df5f4e.tar.gz rust-b13392f77151c8fe83c8ac9e4d29a24702df5f4e.zip | |
Improve `Self`.
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_resolve/lib.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/librustc_resolve/lib.rs b/src/librustc_resolve/lib.rs index 552023d022f..f1be821d526 100644 --- a/src/librustc_resolve/lib.rs +++ b/src/librustc_resolve/lib.rs @@ -1519,7 +1519,11 @@ impl<'a> Resolver<'a> { path_span: Span) -> Option<LexicalScopeBinding<'a>> { if ns == TypeNS { - ident.ctxt = ident.ctxt.modern(); + ident.ctxt = if ident.name == keywords::SelfType.name() { + SyntaxContext::empty() // FIXME(jseyfried) improve `Self` hygiene + } else { + ident.ctxt.modern() + } } // Walk backwards up the ribs in scope. |
