+@@ -18,7 +18,24 @@
+ #define TERMINATE_BUFFER() {_longstr.push_back(_SC('\0'));}\r
+ #define ADD_KEYWORD(key,id) _keywords->NewSlot( SQString::Create(ss, _SC(#key)) ,SQInteger(id))\r
+ \r
+-SQLexer::SQLexer(){}\r
++SQLexer::SQLexer() :\r
++ _curtoken(0),\r
++ _keywords(NULL),\r
++ _reached_eof(false),\r
++ _prevtoken(0),\r
++ _currentline(0),\r
++ _lasttokenline(0),\r
++ _currentcolumn(0),\r
++ _svalue(NULL),\r
++ _nvalue(0),\r
++ _fvalue(0.0),\r
++ _readf(NULL),\r
++ _up(NULL),\r
++ _currdata('\0'),\r
++ _sharedstate(NULL),\r
++ _errfunc(NULL),\r
++ _errtarget(NULL)\r
++{}\r
+ SQLexer::~SQLexer()\r
+ {\r
+ _keywords->Release();\r
+@@ -192,6 +209,7 @@ SQInteger SQLexer::Lex()