From ec9627573527b776cefe0078718c5f50270385de Mon Sep 17 00:00:00 2001
From: Jens Bendisposto <jens@bendisposto.de>
Date: Tue, 6 May 2014 11:38:22 +0200
Subject: [PATCH] Part of the fix for PROB-295

---
 build.gradle                                     |  2 +-
 src/main/resources/org/sablecc/sablecc/lexer.txt | 10 ++++++++--
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/build.gradle b/build.gradle
index b59e781..4a35495 100644
--- a/build.gradle
+++ b/build.gradle
@@ -3,7 +3,7 @@ apply plugin: 'eclipse'
 apply plugin: 'maven'
 
 
-project.version = '3.2.7-SNAPSHOT'
+project.version = '3.2.8'
 project.group = 'de.stups'
 
 repositories {
diff --git a/src/main/resources/org/sablecc/sablecc/lexer.txt b/src/main/resources/org/sablecc/sablecc/lexer.txt
index 4073827..e0908c0 100644
--- a/src/main/resources/org/sablecc/sablecc/lexer.txt
+++ b/src/main/resources/org/sablecc/sablecc/lexer.txt
@@ -46,9 +46,14 @@ public class Lexer implements ITokenListContainer
     private final StringBuffer text = new StringBuffer();
     
 	private List<IToken> tokenList;
+    private final Queue<IToken> nextList = new LinkedBlockingQueue<IToken>();
 
 	private IToken tok;
 
+    public Queue<IToken> getNextList() {
+        return nextList;
+    }
+
 	public List<IToken> getTokenList() {
 		return tokenList;
 	}
@@ -74,6 +79,7 @@ public class Lexer implements ITokenListContainer
        filter();
        if (token != null) {
 	          getTokenList().add(token); 
+              nextList.add(token);
 	   }
     }
 
@@ -92,7 +98,7 @@ public class Lexer implements ITokenListContainer
             filterWrap();
         }
 
-        return this.token;
+        return (Token) nextList.peek();
     }
 
     public Token next() throws LexerException, IOException
@@ -103,7 +109,7 @@ public class Lexer implements ITokenListContainer
             filterWrap();
         }
 
-        Token result = this.token;
+        Token result = (Token) nextList.poll();
         this.setToken(null);
         return result;
     }
-- 
GitLab