pastojs: fixed parsing multi line comment

This commit is contained in:
mattias 2024-01-07 12:53:48 +01:00
parent 03d7518b9b
commit 20ac72e7aa
2 changed files with 8 additions and 7 deletions

View File

@ -1389,7 +1389,7 @@ begin
p^.TokenPos:=Scanner.CurTokenPos;
P^.IsEscaped:=Scanner.CurTokenEscaped;
end;
//writeln('TPasParser.NextToken END Start=',FTokenRingStart,' Cur=',FTokenRingCur,' End=',FTokenRingEnd,' Cur=',CurTokenString);
//writeln('TPasParser.NextToken END Start=',FTokenRingStart,' Cur=',FTokenRingCur,' End=',FTokenRingEnd,' Cur="',CurTokenString,'"');
end;
procedure TPasParser.ChangeToken(tk: TToken);

View File

@ -5481,6 +5481,9 @@ begin
{$ifdef UsePChar}
LE:=LineEnding;
OldLength := 0;
{$else}
s:=FCurLine;
l:=length(FCurLine);
{$endif}
NestingLevel := 0;
repeat
@ -5536,7 +5539,7 @@ begin
{$endif}
Inc(FTokenPos);
Result := tkComment;
if (Copy(CurTokenString,1,1)='$') then
if (length(CurTokenString)>0) and (CurTokenString[1]='$') then
Result:=HandleDirective(CurTokenString)
else
DoHandleComment(Self, CurTokenString)
@ -5547,7 +5550,7 @@ function TPascalScanner.DoFetchToken: TToken;
var
TokenStart: {$ifdef UsePChar}PAnsiChar{$else}integer{$endif};
i: TToken;
QuoteLen,SectionLength, Index: Integer;
QuoteLen, SectionLength, Index: Integer;
{$ifdef UsePChar}
//
{$else}
@ -5580,7 +5583,6 @@ var
Function IsDelphiMultiLine (out QuoteLen : integer): Boolean;
var
P : PAnsiChar;
begin
P:=FTokenPos;
QuoteLen:=0;
@ -5595,10 +5597,8 @@ var
end;
{$ELSE}
Function IsDelphiMultiLine(out Quotelen : integer) : Boolean;
var
P : Integer;
begin
P:=FTokenPos;
QuoteLen:=0;
@ -5623,6 +5623,7 @@ begin
begin
Result := tkEOF;
FCurToken := Result;
FCurTokenString := '';
exit;
end;
FCurTokenString := '';
@ -5676,7 +5677,7 @@ begin
end;
'#':
Result:=DoFetchTextToken;
#39:
'''':
if (msDelphiMultiLineStrings in CurrentModeSwitches) and IsDelphiMultiLine(Quotelen) then
Result:=DoFetchDelphiMultiLineTextToken(Quotelen)
else