mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 14:09:20 +02:00
+ known bug flag
+ norun flag + recompile flag
This commit is contained in:
parent
843366e01d
commit
d6beb890cd
@ -18,7 +18,10 @@ type
|
|||||||
NeedCPU,
|
NeedCPU,
|
||||||
NeedVersion : string;
|
NeedVersion : string;
|
||||||
ResultCode : longint;
|
ResultCode : longint;
|
||||||
|
NeedRecompile : boolean;
|
||||||
IsInteractive : boolean;
|
IsInteractive : boolean;
|
||||||
|
IsKnown : boolean;
|
||||||
|
NoRun : boolean;
|
||||||
UsesGraph : boolean;
|
UsesGraph : boolean;
|
||||||
ShouldFail : boolean;
|
ShouldFail : boolean;
|
||||||
Category : string;
|
Category : string;
|
||||||
@ -40,6 +43,7 @@ const
|
|||||||
DoGraph : boolean = false;
|
DoGraph : boolean = false;
|
||||||
DoInteractive : boolean = false;
|
DoInteractive : boolean = false;
|
||||||
DoExecute : boolean = false;
|
DoExecute : boolean = false;
|
||||||
|
DoKnown : boolean = false;
|
||||||
|
|
||||||
procedure Verbose(lvl:TVerboseLevel;const s:string);
|
procedure Verbose(lvl:TVerboseLevel;const s:string);
|
||||||
begin
|
begin
|
||||||
@ -250,6 +254,7 @@ var
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
|
FillChar(r,sizeof(r),0);
|
||||||
GetConfig:=false;
|
GetConfig:=false;
|
||||||
Verbose(V_Debug,'Reading '+fn);
|
Verbose(V_Debug,'Reading '+fn);
|
||||||
assign(t,fn);
|
assign(t,fn);
|
||||||
@ -290,6 +295,15 @@ begin
|
|||||||
else
|
else
|
||||||
if GetEntry('FAIL') then
|
if GetEntry('FAIL') then
|
||||||
r.ShouldFail:=true
|
r.ShouldFail:=true
|
||||||
|
else
|
||||||
|
if GetEntry('RECOMPILE') then
|
||||||
|
r.NeedRecompile:=true
|
||||||
|
else
|
||||||
|
if GetEntry('NORUN') then
|
||||||
|
r.NoRun:=true
|
||||||
|
else
|
||||||
|
if GetEntry('KNOWN') then
|
||||||
|
r.IsKnown:=true
|
||||||
else
|
else
|
||||||
if GetEntry('INTERACTIVE') then
|
if GetEntry('INTERACTIVE') then
|
||||||
r.IsInteractive:=true
|
r.IsInteractive:=true
|
||||||
@ -443,7 +457,9 @@ var
|
|||||||
writeln(' -C<compiler> set compiler to use');
|
writeln(' -C<compiler> set compiler to use');
|
||||||
writeln(' -V verbose');
|
writeln(' -V verbose');
|
||||||
writeln(' -E execute test also');
|
writeln(' -E execute test also');
|
||||||
|
writeln(' -A include ALL tests');
|
||||||
writeln(' -G include graph tests');
|
writeln(' -G include graph tests');
|
||||||
|
writeln(' -G include known bug tests');
|
||||||
writeln(' -I include interactive tests');
|
writeln(' -I include interactive tests');
|
||||||
halt(1);
|
halt(1);
|
||||||
end;
|
end;
|
||||||
@ -462,11 +478,18 @@ begin
|
|||||||
ch:=Upcase(para[2]);
|
ch:=Upcase(para[2]);
|
||||||
delete(para,1,2);
|
delete(para,1,2);
|
||||||
case ch of
|
case ch of
|
||||||
|
'A' :
|
||||||
|
begin
|
||||||
|
DoGraph:=true;
|
||||||
|
DoInteractive:=true;
|
||||||
|
DoKnown:=true;
|
||||||
|
end;
|
||||||
'C' : CompilerBin:=Para;
|
'C' : CompilerBin:=Para;
|
||||||
'E' : DoExecute:=true;
|
'E' : DoExecute:=true;
|
||||||
'G' : DoGraph:=true;
|
'G' : DoGraph:=true;
|
||||||
'I' : DoInteractive:=true;
|
'I' : DoInteractive:=true;
|
||||||
'V' : DoVerbose:=true;
|
'V' : DoVerbose:=true;
|
||||||
|
'K' : DoKnown:=true;
|
||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
@ -505,6 +528,15 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if Res then
|
||||||
|
begin
|
||||||
|
if Config.IsKnown and (not DoKnown) then
|
||||||
|
begin
|
||||||
|
Verbose(V_Abort,'Skipping test because it is a known bug');
|
||||||
|
Res:=false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
if Res then
|
if Res then
|
||||||
begin
|
begin
|
||||||
if Config.NeedVersion<>'' then
|
if Config.NeedVersion<>'' then
|
||||||
@ -534,9 +566,19 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
if Res then
|
if Res then
|
||||||
|
begin
|
||||||
Res:=RunCompiler;
|
Res:=RunCompiler;
|
||||||
|
if Res and Config.NeedRecompile then
|
||||||
|
Res:=RunCompiler;
|
||||||
|
end;
|
||||||
|
|
||||||
if Res then
|
if Res then
|
||||||
|
begin
|
||||||
|
if (Config.NoRun) then
|
||||||
|
begin
|
||||||
|
Verbose(V_Debug,'Skipping run test');
|
||||||
|
end
|
||||||
|
else
|
||||||
begin
|
begin
|
||||||
if (not Config.ShouldFail) and DoExecute then
|
if (not Config.ShouldFail) and DoExecute then
|
||||||
begin
|
begin
|
||||||
@ -548,6 +590,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
@ -556,7 +599,12 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.6 2000-12-04 22:06:25 peter
|
Revision 1.7 2000-12-09 16:01:10 peter
|
||||||
|
+ known bug flag
|
||||||
|
+ norun flag
|
||||||
|
+ recompile flag
|
||||||
|
|
||||||
|
Revision 1.6 2000/12/04 22:06:25 peter
|
||||||
* fixed stupid c&p bug for CPU check
|
* fixed stupid c&p bug for CPU check
|
||||||
|
|
||||||
Revision 1.5 2000/12/03 22:59:10 florian
|
Revision 1.5 2000/12/03 22:59:10 florian
|
||||||
|
Loading…
Reference in New Issue
Block a user