diff --git a/libwccl/parser/Parser.cpp b/libwccl/parser/Parser.cpp
index b713ae67c32644d43116adc4161e2baeffd28930..86389a32f0ec313a00b416f233ff695bd3a21767 100644
--- a/libwccl/parser/Parser.cpp
+++ b/libwccl/parser/Parser.cpp
@@ -4,6 +4,7 @@
 
 #include <antlr/NoViableAltException.hpp>
 #include <antlr/MismatchedTokenException.hpp>
+#include <antlr/TokenStreamRecognitionException.hpp>
 
 namespace Wccl {
 
@@ -190,6 +191,11 @@ boost::shared_ptr<ANTLRParserResultBase> Parser::parseAnyOperator(
 					<< "(as tset    ) "
 					<< e.getFileLineColumnString()
 					<< " " << e.getMessage();
+		} catch(antlr::TokenStreamRecognitionException &e) {
+			errors << std::endl
+					<< "(as tset    ) "
+					<< e.getLine() << ":" << e.getColumn()
+					<< " " << e.getMessage();
 		} catch (antlr::ANTLRException& e) {
 			errors << std::endl
 					<< "(as tset    ) " << e.getMessage();
@@ -213,6 +219,11 @@ boost::shared_ptr<ANTLRParserResultBase> Parser::parseAnyOperator(
 					<< "(as strset  ) "
 					<< e.getFileLineColumnString()
 					<< " " << e.getMessage();
+		} catch(antlr::TokenStreamRecognitionException &e) {
+			errors << std::endl
+					<< "(as strset  ) "
+					<< e.getLine() << ":" << e.getColumn()
+					<< " " << e.getMessage();
 		} catch (antlr::ANTLRException& e) {
 			errors << std::endl
 					<< "(as strset  ) " << e.getMessage();
@@ -236,6 +247,11 @@ boost::shared_ptr<ANTLRParserResultBase> Parser::parseAnyOperator(
 					<< "(as bool    ) "
 					<< e.getFileLineColumnString()
 					<< " " << e.getMessage();
+		} catch(antlr::TokenStreamRecognitionException &e) {
+			errors << std::endl
+					<< "(as bool    ) "
+					<< e.getLine() << ":" << e.getColumn()
+					<< " " << e.getMessage();
 		} catch (antlr::ANTLRException& e) {
 			errors << std::endl
 					<< "(as bool    ) " << e.getMessage();
@@ -254,6 +270,11 @@ boost::shared_ptr<ANTLRParserResultBase> Parser::parseAnyOperator(
 					<< "(as position) "
 					<< e.getFileLineColumnString()
 					<< " " << e.getMessage() << std::endl;
+		} catch(antlr::TokenStreamRecognitionException &e) {
+			errors << std::endl
+					<< "(as position) "
+					<< e.getLine() << ":" << e.getColumn()
+					<< " " << e.getMessage();
 		} catch(antlr::NoViableAltException &e) {
 			errors << std::endl
 					<< "(as position) "
diff --git a/wcclparser/bool_main.cpp b/wcclparser/bool_main.cpp
index c1570b0192c50eeb7b63dc657797a782d51b54a4..05c842797d63463530c98d4bcd7bbd73253ea714 100644
--- a/wcclparser/bool_main.cpp
+++ b/wcclparser/bool_main.cpp
@@ -2,8 +2,10 @@
 #include <libwccl/values/bool.h>
 #include <libwccl/parser/Parser.h>
 #include <libwccl/parser/ANTLRParserResult.h>
+
 #include <antlr/NoViableAltException.hpp>
 #include <antlr/MismatchedTokenException.hpp>
+#include <antlr/TokenStreamRecognitionException.hpp>
 
 // ----------------------------------------------------------------------------
 
@@ -68,11 +70,15 @@ int main()
 			} catch(antlr::NoViableAltException &e) {
 				std::cerr << e.getFileLineColumnString()
 						<< " " << e.getMessage() << std::endl;
+			} catch(antlr::TokenStreamRecognitionException &e) {
+				std::cerr << e.getLine() << ":" << e.getColumn()
+						<< " " << e.getMessage() << std::endl;
 			} catch (Wccl::InvalidVariableName &e) {
 				std::cerr << "Wccl::InvalidVariableName" << std::endl;
 			} catch (Wccl::VariableTypeMismatch &e) {
 				std::cerr << "Wccl::VariableTypeMismatch" << std::endl;
-			} catch (...) {
+			}
+			 catch (...) {
 				std::cerr << "[N] Syntax error!" << std::endl;
 			}
 		}
diff --git a/wcclparser/strop_main.cpp b/wcclparser/strop_main.cpp
index 13be60bd501fb89d186cdf3eb22b8f514ad2467f..aaf4c97f401a4113af38a9892c7285f1dbb54f59 100644
--- a/wcclparser/strop_main.cpp
+++ b/wcclparser/strop_main.cpp
@@ -4,6 +4,7 @@
 #include <libwccl/parser/ANTLRParserResult.h>
 #include <antlr/NoViableAltException.hpp>
 #include <antlr/MismatchedTokenException.hpp>
+#include <antlr/TokenStreamRecognitionException.hpp>
 
 // ----------------------------------------------------------------------------
 
@@ -67,6 +68,9 @@ int main()
 			} catch(antlr::NoViableAltException &e) {
 				std::cerr << e.getFileLineColumnString()
 						<< " " << e.getMessage() << std::endl;
+			} catch(antlr::TokenStreamRecognitionException &e) {
+				std::cerr << e.getLine() << ":" << e.getColumn()
+						<< " " << e.getMessage() << std::endl;
 			} catch (Wccl::InvalidVariableName &e) {
 				std::cerr << "Wccl::InvalidVariableName" << std::endl;
 			} catch (Wccl::VariableTypeMismatch &e) {
diff --git a/wcclparser/tagset_main.cpp b/wcclparser/tagset_main.cpp
index ddfaaa49af18a7f0eb313866e500b4f4f2ca5fc9..94f84f9bef84294f45e86595f28fb3a80ec1f614 100644
--- a/wcclparser/tagset_main.cpp
+++ b/wcclparser/tagset_main.cpp
@@ -4,6 +4,7 @@
 #include <libwccl/parser/ANTLRParserResult.h>
 #include <antlr/NoViableAltException.hpp>
 #include <antlr/MismatchedTokenException.hpp>
+#include <antlr/TokenStreamRecognitionException.hpp>
 
 #include <libcorpus2/tagsetmanager.h>
 
@@ -69,6 +70,9 @@ int main()
 			} catch(antlr::NoViableAltException &e) {
 				std::cerr << e.getFileLineColumnString()
 						<< " " << e.getMessage() << std::endl;
+			} catch(antlr::TokenStreamRecognitionException &e) {
+				std::cerr << e.getLine() << ":" << e.getColumn()
+						<< " " << e.getMessage() << std::endl;
 			} catch (Wccl::InvalidVariableName &e) {
 				std::cerr << "Wccl::InvalidVariableName" << std::endl;
 			} catch (Wccl::VariableTypeMismatch &e) {