Index: run/JvInterpreter.pas
===================================================================
RCS file: /cvsroot/jvcl/dev/JVCL3/run/JvInterpreter.pas,v
retrieving revision 1.72
diff -u -r1.72 JvInterpreter.pas
--- run/JvInterpreter.pas	20 Mar 2006 11:59:57 -0000	1.72
+++ run/JvInterpreter.pas	22 Mar 2006 16:28:42 -0000
@@ -5202,10 +5202,12 @@
   function Expression(const OpTyp: TTokenKind): Variant;
   var
     Tmp: Variant;
+    aPrevTTyp:integer;
   begin
     Result := Unassigned;
     if OpTyp <> ttUnknown then
       NextToken;
+    aPrevTTyp:=TTyp;
     while True do
     begin
       case TTyp of
@@ -5381,7 +5383,7 @@
             NextToken;
           end;
         ttRB:
-          if TVarData(Result).VType = varEmpty then
+          if (TVarData(Result).VType = varEmpty) and (aPrevTTyp<>ttIdentifier) then
             ErrorExpected(LoadStr2(irExpression))
           else
             Exit;
@@ -5394,12 +5396,12 @@
             NextToken;
           end;
         ttRS:
-          if TVarData(Result).VType = varEmpty then
+          if (TVarData(Result).VType = varEmpty) and (aPrevTTyp<>ttIdentifier) then
             ErrorExpected(LoadStr2(irExpression))
           else
             Exit;
       else
-        if TVarData(Result).VType = varEmpty then
+        if (TVarData(Result).VType = varEmpty) and (aPrevTTyp<>ttIdentifier) then
           ErrorExpected(LoadStr2(irExpression))
         else
           Exit;
