mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 22:14:25 +02:00
* DOS version uses DPMIEXCP unit now
This commit is contained in:
parent
85916705f2
commit
7124cecdd4
@ -1,5 +1,10 @@
|
|||||||
Program ansitest;
|
Program ansitest;
|
||||||
|
|
||||||
|
{$ifdef GO32V2}
|
||||||
|
uses
|
||||||
|
dpmiexcp;
|
||||||
|
{$endif GO32V2}
|
||||||
|
|
||||||
{$ifndef fpc}
|
{$ifndef fpc}
|
||||||
Function Memavail : Longint;
|
Function Memavail : Longint;
|
||||||
|
|
||||||
@ -240,10 +245,8 @@ begin
|
|||||||
Write ('Added tail to S ! : ',S);DoRef(Pointer(S));
|
Write ('Added tail to S ! : ',S);DoRef(Pointer(S));
|
||||||
S4:=' This is a shortstring';
|
S4:=' This is a shortstring';
|
||||||
//!! This crashes the program...
|
//!! This crashes the program...
|
||||||
{
|
|
||||||
S:=S1+S4;
|
S:=S1+S4;
|
||||||
Write ('Adding S1+S4 : ',S,' '); DoRef(Pointer(S));
|
Write ('Adding S1+S4 : ',S,' '); DoRef(Pointer(S));
|
||||||
}
|
|
||||||
S:=S1+'@';
|
S:=S1+'@';
|
||||||
Write ('Adding S1+''@'' : ',S,' '); DoRef(Pointer(S));
|
Write ('Adding S1+''@'' : ',S,' '); DoRef(Pointer(S));
|
||||||
end;
|
end;
|
||||||
@ -326,10 +329,8 @@ begin
|
|||||||
S3 := 'ABCDEF';
|
S3 := 'ABCDEF';
|
||||||
Write ('S1+S2=S3 :');
|
Write ('S1+S2=S3 :');
|
||||||
If S1+S2=S3 then writeln (ok) else writeln (nok);
|
If S1+S2=S3 then writeln (ok) else writeln (nok);
|
||||||
domem(mem);
|
|
||||||
Write ('S1+S2=ABCDEF');
|
Write ('S1+S2=ABCDEF');
|
||||||
If S1+S2='ABCDEF' then writeln (ok) else writeln (nok);
|
If S1+S2='ABCDEF' then writeln (ok) else writeln (nok);
|
||||||
domem(mem);
|
|
||||||
Write ('Testing repeat');
|
Write ('Testing repeat');
|
||||||
I:=0;
|
I:=0;
|
||||||
S3:='';
|
S3:='';
|
||||||
@ -338,7 +339,6 @@ begin
|
|||||||
If I=10 then s3:='ABCDEF';
|
If I=10 then s3:='ABCDEF';
|
||||||
until S1+S2=S3;
|
until S1+S2=S3;
|
||||||
Writeln (' Done.');
|
Writeln (' Done.');
|
||||||
domem(mem);
|
|
||||||
I:=2;
|
I:=2;
|
||||||
S3:='';
|
S3:='';
|
||||||
Write ('Testing While');
|
Write ('Testing While');
|
||||||
@ -348,7 +348,6 @@ begin
|
|||||||
If I=10 then s3:='ABCDEF';
|
If I=10 then s3:='ABCDEF';
|
||||||
end;
|
end;
|
||||||
Writeln (' Done');
|
Writeln (' Done');
|
||||||
domem(mem);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TestStdFunc;
|
Procedure TestStdFunc;
|
||||||
@ -411,7 +410,6 @@ begin
|
|||||||
Write ('S = "',S,'"');Doref(Pointer(S));
|
Write ('S = "',S,'"');Doref(Pointer(S));
|
||||||
Writeln ('Pos ''D'' in S is : ',Pos('D',S));
|
Writeln ('Pos ''D'' in S is : ',Pos('D',S));
|
||||||
Write ('S = "',S,'"');Doref(Pointer(S));
|
Write ('S = "',S,'"');Doref(Pointer(S));
|
||||||
domem(tempmem);
|
|
||||||
Write ('str(Ca,S)= ');
|
Write ('str(Ca,S)= ');
|
||||||
ca:=1;
|
ca:=1;
|
||||||
str(Ca,S);
|
str(Ca,S);
|
||||||
@ -448,7 +446,6 @@ begin
|
|||||||
Si:=5.0;
|
Si:=5.0;
|
||||||
str(Si,S);
|
str(Si,S);
|
||||||
Writeln (S);
|
Writeln (S);
|
||||||
Domem(tempmem);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Var GlobalStartMem,StartMem : Longint;
|
Var GlobalStartMem,StartMem : Longint;
|
||||||
@ -459,27 +456,35 @@ begin
|
|||||||
Writeln ('Testing Initialize/Finalize.');
|
Writeln ('Testing Initialize/Finalize.');
|
||||||
TestInitFinal;
|
TestInitFinal;
|
||||||
Write ('End of Initialize/finalize test : ');DoMem(StartMem);
|
Write ('End of Initialize/finalize test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing parameter passing.');
|
Writeln;Writeln ('Testing parameter passing.');
|
||||||
TestParams;
|
TestParams;
|
||||||
Write ('End of Parameter passing test : ');DoMem(StartMem);
|
Write ('End of Parameter passing test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing comparision operators');
|
Writeln;Writeln ('Testing comparision operators');
|
||||||
TestCompare;
|
TestCompare;
|
||||||
Write ('End of compare test : ');DoMem(StartMem);
|
Write ('End of compare test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing setlength of AnsiStrings');
|
Writeln;Writeln ('Testing setlength of AnsiStrings');
|
||||||
TestSetLength;
|
TestSetLength;
|
||||||
Write ('End of setlength test : ');DoMem(StartMem);
|
Write ('End of setlength test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing Adding of AnsiStrings');
|
Writeln;Writeln ('Testing Adding of AnsiStrings');
|
||||||
TestAdd;
|
TestAdd;
|
||||||
Write ('End of adding test : ');DoMem(StartMem);
|
Write ('End of adding test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing Adding of AnsiStrings in expressions');
|
Writeln;Writeln ('Testing Adding of AnsiStrings in expressions');
|
||||||
TestAddExpr;
|
TestAddExpr;
|
||||||
Write ('End of adding in expressions test : ');DoMem(StartMem);
|
Write ('End of adding in expressions test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing type conversion.');
|
Writeln;Writeln ('Testing type conversion.');
|
||||||
TestConversion;
|
TestConversion;
|
||||||
Write ('End of typeconversion test : ');DoMem(StartMem);
|
Write ('End of typeconversion test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing indexed access.');
|
Writeln;Writeln ('Testing indexed access.');
|
||||||
TestIndex;
|
TestIndex;
|
||||||
Write ('End of index access test : ');DoMem(StartMem);
|
Write ('End of index access test : ');DoMem(StartMem);
|
||||||
|
|
||||||
Writeln;Writeln ('Testing standard functions.');
|
Writeln;Writeln ('Testing standard functions.');
|
||||||
TestStdfunc;
|
TestStdfunc;
|
||||||
Write ('End of standard functions: ');DoMem(StartMem);
|
Write ('End of standard functions: ');DoMem(StartMem);
|
||||||
|
Loading…
Reference in New Issue
Block a user