Commit 5c989519 authored by Dick Hollenbeck's avatar Dick Hollenbeck

add support for exponents in dsnlexer.cpp's DSN_NUMBER token

parent d8f87cca
......@@ -407,7 +407,7 @@ static bool isSpace( int cc )
*/
static bool isNumber( const char* cp, const char* limit, const char** next )
{
#if 1 // no exponents supported
#if 0 // no exponents supported
if( strchr( "+-.0123456789", *cp ) )
{
......@@ -440,16 +440,19 @@ static bool isNumber( const char* cp, const char* limit, const char** next )
sawNumber = true;
}
if( cp < limit && *cp == '.' )
{
if( cp < limit && *cp == '.' )
++cp;
++cp;
while( cp < limit && strchr( "0123456789", *cp ) )
{
sawNumber = true;
++cp;
sawNumber = true;
}
}
if( sawNumber )
{
if( cp < limit && strchr( "Ee", *cp ) )
{
++cp;
......@@ -469,6 +472,7 @@ static bool isNumber( const char* cp, const char* limit, const char** next )
if( sawNumber )
{
// token can only be a number if not adjoined with other non-number token text
if( cp==limit || isSpace( *cp ) || *cp==')' || *cp=='(' )
{
*next = cp;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment