mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 22:19:17 +02:00
PascalScript: sync with original
git-svn-id: trunk@39502 -
This commit is contained in:
parent
7cc850d667
commit
bc13aee2de
@ -567,6 +567,7 @@ var
|
|||||||
current, i: Longint;
|
current, i: Longint;
|
||||||
ds: TPSDefineState;
|
ds: TPSDefineState;
|
||||||
AppContinue: Boolean;
|
AppContinue: Boolean;
|
||||||
|
ADoWrite: Boolean;
|
||||||
begin
|
begin
|
||||||
if Level > MaxLevel then raise EPSPreProcessor.CreateFmt(RPS_TooManyNestedInclude, [FileName, OrgFileName]);
|
if Level > MaxLevel then raise EPSPreProcessor.CreateFmt(RPS_TooManyNestedInclude, [FileName, OrgFileName]);
|
||||||
Parser := TPSPascalPreProcessorParser.Create;
|
Parser := TPSPascalPreProcessorParser.Create;
|
||||||
@ -646,14 +647,14 @@ begin
|
|||||||
begin
|
begin
|
||||||
if pos(' ', s) <> 0 then raise EPSPreProcessor.CreateFmt(RPS_DefineTooManyParameters, [Parser.Row, Parser.Col]);
|
if pos(' ', s) <> 0 then raise EPSPreProcessor.CreateFmt(RPS_DefineTooManyParameters, [Parser.Row, Parser.Col]);
|
||||||
//JeromeWelsh - nesting fix
|
//JeromeWelsh - nesting fix
|
||||||
FDefineState.Add.DoWrite := (FCurrentDefines.IndexOf(Uppercase(s)) <> -1)
|
ADoWrite := (FCurrentDefines.IndexOf(Uppercase(s)) >= 0) and FDefineState.DoWrite;
|
||||||
and FDefineState.DoWrite;
|
FDefineState.Add.DoWrite := ADoWrite;
|
||||||
end else if (Name = 'IFNDEF') then
|
end else if (Name = 'IFNDEF') then
|
||||||
begin
|
begin
|
||||||
if pos(' ', s) <> 0 then raise EPSPreProcessor.CreateFmt(RPS_DefineTooManyParameters, [Parser.Row, Parser.Col]);
|
if pos(' ', s) <> 0 then raise EPSPreProcessor.CreateFmt(RPS_DefineTooManyParameters, [Parser.Row, Parser.Col]);
|
||||||
//JeromeWelsh - nesting fix
|
//JeromeWelsh - nesting fix
|
||||||
FDefineState.Add.DoWrite := (FCurrentDefines.IndexOf(Uppercase(s)) = -1)
|
ADoWrite := (FCurrentDefines.IndexOf(Uppercase(s)) < 0) and FDefineState.DoWrite;
|
||||||
and FDefineState.DoWrite;
|
FDefineState.Add.DoWrite := ADoWrite;
|
||||||
end else if (Name = 'ENDIF') then
|
end else if (Name = 'ENDIF') then
|
||||||
begin
|
begin
|
||||||
//- jgv remove - borland use it (sysutils.pas)
|
//- jgv remove - borland use it (sysutils.pas)
|
||||||
@ -716,7 +717,11 @@ var
|
|||||||
Stream: TMemoryStream;
|
Stream: TMemoryStream;
|
||||||
begin
|
begin
|
||||||
FAddedPosition := 0;
|
FAddedPosition := 0;
|
||||||
|
{$IFDEF FPC}
|
||||||
|
FCurrentDefines.AddStrings(FDefines);
|
||||||
|
{$ELSE}
|
||||||
FCurrentDefines.Assign(FDefines);
|
FCurrentDefines.Assign(FDefines);
|
||||||
|
{$ENDIF}
|
||||||
Stream := TMemoryStream.Create;
|
Stream := TMemoryStream.Create;
|
||||||
try
|
try
|
||||||
IntPreProcess(0, '', FileName, Stream);
|
IntPreProcess(0, '', FileName, Stream);
|
||||||
|
@ -149,7 +149,7 @@ asm
|
|||||||
push qword ptr [rcx]
|
push qword ptr [rcx]
|
||||||
{$ELSE}
|
{$ELSE}
|
||||||
push [rcx]
|
push [rcx]
|
||||||
{$IFEND}
|
{$ENDIF}
|
||||||
dec r8
|
dec r8
|
||||||
sub rcx,8
|
sub rcx,8
|
||||||
@compareitems:
|
@compareitems:
|
||||||
|
Loading…
Reference in New Issue
Block a user