about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
authorNiko Matsakis <niko@alum.mit.edu>2012-08-23 14:46:59 -0700
committerNiko Matsakis <niko@alum.mit.edu>2012-08-23 18:54:08 -0700
commita08f3a7d4d937c2b26c8a29edabe7fb089d0b5f7 (patch)
tree778e2d94eca68fd3e579b2ad8ac2725602afe340 /src/libsyntax/parse
parent83e7c869bdfadf0ed8aca92e76fc5073b63402e2 (diff)
downloadrust-a08f3a7d4d937c2b26c8a29edabe7fb089d0b5f7.tar.gz
rust-a08f3a7d4d937c2b26c8a29edabe7fb089d0b5f7.zip
More complete fix to #3162 (borrowck bug related to access to rec fields)
Diffstat (limited to 'src/libsyntax/parse')
-rw-r--r--src/libsyntax/parse/common.rs15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/libsyntax/parse/common.rs b/src/libsyntax/parse/common.rs
index afb9c91fc8d..e68a8120992 100644
--- a/src/libsyntax/parse/common.rs
+++ b/src/libsyntax/parse/common.rs
@@ -146,19 +146,12 @@ impl parser: parser_common {
 
     fn eat_keyword(word: ~str) -> bool {
         self.require_keyword(word);
-
-        let mut bump = false;
-        let val = match self.token {
-          token::IDENT(sid, false) => {
-            if word == *self.id_to_str(sid) {
-                bump = true;
-                true
-            } else { false }
-          }
+        let is_kw = match self.token {
+          token::IDENT(sid, false) => (word == *self.id_to_str(sid)),
           _ => false
         };
-        if bump { self.bump() }
-        val
+        if is_kw { self.bump() }
+        is_kw
     }
 
     fn expect_keyword(word: ~str) {