mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-04 14:53:18 +02:00
* DoneCompiler called later to prevent accessing invalid data
This commit is contained in:
parent
d0f5a827cd
commit
52455aa342
@ -128,6 +128,12 @@ begin
|
|||||||
if not CompilerInited then
|
if not CompilerInited then
|
||||||
exit;
|
exit;
|
||||||
{ Free compiler if args are read }
|
{ Free compiler if args are read }
|
||||||
|
{$ifdef BrowserLog}
|
||||||
|
DoneBrowserLog;
|
||||||
|
{$endif BrowserLog}
|
||||||
|
{$ifdef BrowserCol}
|
||||||
|
DoneBrowserCol;
|
||||||
|
{$endif BrowserCol}
|
||||||
if CompilerInitedAfterArgs then
|
if CompilerInitedAfterArgs then
|
||||||
begin
|
begin
|
||||||
CompilerInitedAfterArgs:=false;
|
CompilerInitedAfterArgs:=false;
|
||||||
@ -140,12 +146,6 @@ begin
|
|||||||
DoneSymtable;
|
DoneSymtable;
|
||||||
DoneGlobals;
|
DoneGlobals;
|
||||||
linker.done;
|
linker.done;
|
||||||
{$ifdef BrowserLog}
|
|
||||||
DoneBrowserLog;
|
|
||||||
{$endif BrowserLog}
|
|
||||||
{$ifdef BrowserCol}
|
|
||||||
DoneBrowserCol;
|
|
||||||
{$endif BrowserCol}
|
|
||||||
{$ifdef USEEXCEPT}
|
{$ifdef USEEXCEPT}
|
||||||
recoverpospointer:=nil;
|
recoverpospointer:=nil;
|
||||||
longjump_used:=false;
|
longjump_used:=false;
|
||||||
@ -239,12 +239,8 @@ begin
|
|||||||
Message2(general_i_abslines_compiled,tostr(status.compiledlines),tostr(trunc(starttime))+
|
Message2(general_i_abslines_compiled,tostr(status.compiledlines),tostr(trunc(starttime))+
|
||||||
'.'+tostr(trunc(frac(starttime)*10)));
|
'.'+tostr(trunc(frac(starttime)*10)));
|
||||||
end;
|
end;
|
||||||
{ Stop the compiler, frees also memory }
|
|
||||||
DoneCompiler;
|
|
||||||
{$ifdef USEEXCEPT}
|
{$ifdef USEEXCEPT}
|
||||||
end
|
end;
|
||||||
else
|
|
||||||
DoneCompiler;
|
|
||||||
{ Stop is always called, so we come here when a program is compiled or not }
|
{ Stop is always called, so we come here when a program is compiled or not }
|
||||||
do_stop:=olddo_stop;
|
do_stop:=olddo_stop;
|
||||||
{$endif USEEXCEPT}
|
{$endif USEEXCEPT}
|
||||||
@ -255,13 +251,15 @@ begin
|
|||||||
Comment(V_Info,'Repetitive firstpass = '+tostr(firstpass_several)+'/'+tostr(total_of_firstpass));
|
Comment(V_Info,'Repetitive firstpass = '+tostr(firstpass_several)+'/'+tostr(total_of_firstpass));
|
||||||
{$endif EXTDEBUG}
|
{$endif EXTDEBUG}
|
||||||
|
|
||||||
|
{ Stop the compiler, frees also memory }
|
||||||
|
{ no message possible after this !! }
|
||||||
|
DoneCompiler;
|
||||||
{ Set the return value if an error has occurred }
|
{ Set the return value if an error has occurred }
|
||||||
if status.errorcount=0 then
|
if status.errorcount=0 then
|
||||||
Compile:=0
|
Compile:=0
|
||||||
else
|
else
|
||||||
Compile:=1;
|
Compile:=1;
|
||||||
|
|
||||||
{ no message possible after this !! }
|
|
||||||
DoneVerbose;
|
DoneVerbose;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -269,7 +267,10 @@ end;
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.21 1999-05-04 21:44:39 florian
|
Revision 1.22 1999-05-17 14:24:32 pierre
|
||||||
|
* DoneCompiler called later to prevent accessing invalid data
|
||||||
|
|
||||||
|
Revision 1.21 1999/05/04 21:44:39 florian
|
||||||
* changes to compile it with Delphi 4.0
|
* changes to compile it with Delphi 4.0
|
||||||
|
|
||||||
Revision 1.20 1999/04/21 09:43:33 peter
|
Revision 1.20 1999/04/21 09:43:33 peter
|
||||||
|
Loading…
Reference in New Issue
Block a user