Browse Source

Fixed bug in C# expression finder that caused CC to fail for "int a = 0; ((NewType)expr).MethodCall(a);".

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@425 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 20 years ago
parent
commit
34fe86a22b
  1. 8
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/ExpressionFinder.cs

8
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/ExpressionFinder.cs

@ -649,7 +649,7 @@ namespace CSharpBinding.Parser @@ -649,7 +649,7 @@ namespace CSharpBinding.Parser
}
break;
default:
if (IsDigit()) {
if (IsNumber(ch)) {
ReadDigit(ch);
curTokenType = Digit;
} else if (IsIdentifierPart(ch)) {
@ -677,11 +677,13 @@ namespace CSharpBinding.Parser @@ -677,11 +677,13 @@ namespace CSharpBinding.Parser
break;
}
}
bool IsDigit()
bool IsNumber(char ch)
{
if (!Char.IsDigit(ch))
return false;
int n = 0;
while (true) {
char ch = Peek(n);
ch = Peek(n);
if (Char.IsDigit(ch)) {
n++;
continue;

Loading…
Cancel
Save