about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorAgustin Chiappe Berrini <jnieve@gmail.com>2017-12-06 04:28:01 -0500
committerAgustin Chiappe Berrini <jnieve@gmail.com>2017-12-06 04:28:01 -0500
commit65ccf24ce8e51b199d60d06ad41ea35f4cdee15c (patch)
tree733ff2b5a3998cc91517bb2aa1fae3ea5f42ad7c /src/libsyntax
parenta2899408dd162bfe349e7ff8bceaee60b34e77cc (diff)
downloadrust-65ccf24ce8e51b199d60d06ad41ea35f4cdee15c.tar.gz
rust-65ccf24ce8e51b199d60d06ad41ea35f4cdee15c.zip
and refactor to just move the checking
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/parse/lexer/mod.rs14
-rw-r--r--src/libsyntax/parse/token.rs10
2 files changed, 3 insertions, 21 deletions
diff --git a/src/libsyntax/parse/lexer/mod.rs b/src/libsyntax/parse/lexer/mod.rs
index 6f20104dda5..5de5e1fd5de 100644
--- a/src/libsyntax/parse/lexer/mod.rs
+++ b/src/libsyntax/parse/lexer/mod.rs
@@ -14,7 +14,7 @@ use codemap::{CodeMap, FilePathMapping};
 use errors::{FatalError, DiagnosticBuilder};
 use parse::{token, ParseSess};
 use str::char_at;
-use symbol::{Symbol, keywords};
+use symbol::{Symbol};
 use std_unicode::property::Pattern_White_Space;
 
 use std::borrow::Cow;
@@ -1296,18 +1296,6 @@ impl<'a> StringReader<'a> {
                         self.mk_ident(&format!("'{}", lifetime_name))
                     });
 
-                    // Conjure up a "keyword checking ident" to make sure that
-                    // the lifetime name is not a keyword.
-                    let keyword_checking_ident = self.with_str_from(start, |lifetime_name| {
-                        self.mk_ident(lifetime_name)
-                    });
-                    let keyword_checking_token = &token::Ident(keyword_checking_ident);
-                    let last_bpos = self.pos;
-                    if keyword_checking_token.is_reserved_ident() &&
-                       !keyword_checking_token.is_keyword(keywords::Static) {
-                        self.err_span_(start, last_bpos, "lifetimes cannot use keyword names");
-                    }
-
                     return Ok(token::Lifetime(ident));
                 }
 
diff --git a/src/libsyntax/parse/token.rs b/src/libsyntax/parse/token.rs
index ff87f146c0a..94b279d2bdc 100644
--- a/src/libsyntax/parse/token.rs
+++ b/src/libsyntax/parse/token.rs
@@ -364,18 +364,12 @@ impl Token {
 
     /// Returns `true` if the token is a keyword used in the language.
     pub fn is_used_keyword(&self) -> bool {
-        match self.ident() {
-            Some(id) => id.name >= keywords::As.name() && id.name <= keywords::While.name(),
-            _ => false,
-        }
+        self.ident().map(|id| id.name.is_used_keyword()).unwrap_or(false)
     }
 
     /// Returns `true` if the token is a keyword reserved for possible future use.
     pub fn is_unused_keyword(&self) -> bool {
-        match self.ident() {
-            Some(id) => id.name >= keywords::Abstract.name() && id.name <= keywords::Yield.name(),
-            _ => false,
-        }
+        self.ident().map(|id| id.name.is_unused_keyword()).unwrap_or(false)
     }
 
     pub fn glue(self, joint: Token) -> Option<Token> {