Browse Source

fcl-pas: parser: asm: add first empty line to Tokens

git-svn-id: trunk@36668 -
Mattias Gaertner 8 years ago
parent
commit
1f5fc91144
1 changed files with 10 additions and 13 deletions
  1. 10 13
      packages/fcl-passrc/src/pscanner.pp

+ 10 - 13
packages/fcl-passrc/src/pscanner.pp

@@ -2278,23 +2278,19 @@ var
     OldLen: Integer;
     OldLen: Integer;
   begin
   begin
     AddLen:=TokenStr-StartPos;
     AddLen:=TokenStr-StartPos;
-    if AddLen=0 then exit;
-    OldLen:=length(FCurTokenString);
-    SetLength(FCurTokenString,OldLen+AddLen);
-    Move(StartPos^,PChar(PChar(FCurTokenString)+OldLen)^,AddLen);
-    StartPos:=TokenStr;
+    if AddLen=0 then
+      FCurTokenString:=''
+    else
+      begin
+      OldLen:=length(FCurTokenString);
+      SetLength(FCurTokenString,OldLen+AddLen);
+      Move(StartPos^,PChar(PChar(FCurTokenString)+OldLen)^,AddLen);
+      StartPos:=TokenStr;
+      end;
   end;
   end;
 
 
 begin
 begin
   FCurTokenString := '';
   FCurTokenString := '';
-  if (TokenStr = nil) or (TokenStr^ = #0) then
-    if not FetchLine then
-    begin
-      Result := tkEOF;
-      FCurToken := Result;
-      exit;
-    end;
-
   StartPos:=TokenStr;
   StartPos:=TokenStr;
   repeat
   repeat
     case TokenStr[0] of
     case TokenStr[0] of
@@ -2305,6 +2301,7 @@ begin
             begin
             begin
             Result := tkLineEnding;
             Result := tkLineEnding;
             FCurToken := Result;
             FCurToken := Result;
+            FetchLine;
             exit;
             exit;
             end;
             end;
           if not FetchLine then
           if not FetchLine then