Added code to use different integer constants when compiled with
word_size >= 4.
This commit is contained in:
parent
2934d628b5
commit
4f3b82565f
|
@ -34,7 +34,11 @@ const
|
||||||
|
|
||||||
type wavelength = (red,blue,yellow,purple,white,gray,pink,black,fuchia,maple,
|
type wavelength = (red,blue,yellow,purple,white,gray,pink,black,fuchia,maple,
|
||||||
violet,darkred,darkblue,darkyellow,darkwhite,darkpink,darkblack);
|
violet,darkred,darkblue,darkyellow,darkwhite,darkpink,darkblack);
|
||||||
|
#if EM_WSIZE < 4
|
||||||
ww2= 1939..1945;
|
ww2= 1939..1945;
|
||||||
|
#else
|
||||||
|
ww2= 1000939..1000945;
|
||||||
|
#endif
|
||||||
#ifndef NOFLOAT
|
#ifndef NOFLOAT
|
||||||
tp2= record c1:char; i,j:integer; p:boolean; x:real end;
|
tp2= record c1:char; i,j:integer; p:boolean; x:real end;
|
||||||
#else
|
#else
|
||||||
|
@ -52,7 +56,11 @@ var t,pct,ect:integer;
|
||||||
#endif
|
#endif
|
||||||
p,q,r:boolean;
|
p,q,r:boolean;
|
||||||
c1,c2,c3:char;
|
c1,c2,c3:char;
|
||||||
|
#if EM_WSIZE < 4
|
||||||
sr1,sr2,sr3: 1939..1945;
|
sr1,sr2,sr3: 1939..1945;
|
||||||
|
#else
|
||||||
|
sr1,sr2,sr3: 1000939..1000945;
|
||||||
|
#endif
|
||||||
bar: packed array[0..3] of 0..255;
|
bar: packed array[0..3] of 0..255;
|
||||||
color,hue,tint: wavelength;
|
color,hue,tint: wavelength;
|
||||||
grat:spectrum;
|
grat:spectrum;
|
||||||
|
@ -115,7 +123,11 @@ begin t:=1; pct := pct + 1;
|
||||||
if -3 div 2 <> -1 then e(15);
|
if -3 div 2 <> -1 then e(15);
|
||||||
if ((1+2+3) * (2+3+4) * (3+5+5)) div 2 <> ((3 * ((5+3+2)*10)+51)*6) div 6
|
if ((1+2+3) * (2+3+4) * (3+5+5)) div 2 <> ((3 * ((5+3+2)*10)+51)*6) div 6
|
||||||
then e(16);
|
then e(16);
|
||||||
|
#if EM_WSIZE < 4
|
||||||
if (1000*2 + 5*7 + 13) div 8 <> 2*2*2*2*4*4 then e(17);
|
if (1000*2 + 5*7 + 13) div 8 <> 2*2*2*2*4*4 then e(17);
|
||||||
|
#else
|
||||||
|
if (1000*2 + 5*7 + 13) * 128 div 8 <> 2*2*2*2*4*4*128 then e(17);
|
||||||
|
#endif
|
||||||
if (1 * 2 * 3 * 4 * 5 * 6 * 7) div 5040 <>
|
if (1 * 2 * 3 * 4 * 5 * 6 * 7) div 5040 <>
|
||||||
5040 div 7 div 6 div 5 div 4 div 3 div 2 then e(18);
|
5040 div 7 div 6 div 5 div 4 div 3 div 2 then e(18);
|
||||||
if -(-(-(-(-(-(-(-(-(1))))))))) <> -1 then e(19);
|
if -(-(-(-(-(-(-(-(-(1))))))))) <> -1 then e(19);
|
||||||
|
@ -232,7 +244,11 @@ begin t:=5; pct := pct + 1;
|
||||||
if c1 = c2 then e(2);
|
if c1 = c2 then e(2);
|
||||||
if c1 <> c3 then e(3);
|
if c1 <> c3 then e(3);
|
||||||
|
|
||||||
|
#if EM_WSIZE < 4
|
||||||
sr1:=1939; sr2:=1945; sr3:=1939;
|
sr1:=1939; sr2:=1945; sr3:=1939;
|
||||||
|
#else
|
||||||
|
sr1:=1000939; sr2:=1000945; sr3:=1000939;
|
||||||
|
#endif
|
||||||
if sr1=sr2 then e(4);
|
if sr1=sr2 then e(4);
|
||||||
if sr1<>sr3 then e(5);
|
if sr1<>sr3 then e(5);
|
||||||
|
|
||||||
|
@ -251,8 +267,13 @@ begin t:=6; pct := pct + 1;
|
||||||
if (a1[-10]<>100) or (a1[9]<>81) then e(1);
|
if (a1[-10]<>100) or (a1[9]<>81) then e(1);
|
||||||
|
|
||||||
#ifndef NOFLOAT
|
#ifndef NOFLOAT
|
||||||
|
#if EM_WSIZE < 4
|
||||||
for i:=1939 to 1945 do a2[i]:=i-1938.5;
|
for i:=1939 to 1945 do a2[i]:=i-1938.5;
|
||||||
if (abs(a2[1939]-0.5) > eps) or (abs(a2[1945]-6.5) > eps) then e(2);
|
if (abs(a2[1939]-0.5) > eps) or (abs(a2[1945]-6.5) > eps) then e(2);
|
||||||
|
#else
|
||||||
|
for i:=1000939 to 1000945 do a2[i]:=i-1000938.5;
|
||||||
|
if (abs(a2[1000939]-0.5) > eps) or (abs(a2[1000945]-6.5) > eps) then e(2);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
color := yellow;
|
color := yellow;
|
||||||
|
@ -264,10 +285,17 @@ begin t:=6; pct := pct + 1;
|
||||||
a4[mouse]:='m'; a4[house]:='h';
|
a4[mouse]:='m'; a4[house]:='h';
|
||||||
if (a4[mouse] <> 'm') or (a4[house]<>'h' ) then e(5);
|
if (a4[mouse] <> 'm') or (a4[house]<>'h' ) then e(5);
|
||||||
|
|
||||||
|
#if EM_WSIZE < 4
|
||||||
for i:=1939 to 1945 do a5[51,bat,false,i]:=300+i;
|
for i:=1939 to 1945 do a5[51,bat,false,i]:=300+i;
|
||||||
if a5[51,bat,false,1940] <> 2240 then e(6);
|
if a5[51,bat,false,1940] <> 2240 then e(6);
|
||||||
for i:=50 to 52 do a5[i,cat,true,1943]:=200+i;
|
for i:=50 to 52 do a5[i,cat,true,1943]:=200+i;
|
||||||
if (a5[50,cat,true,1943] <> 250) or (a5[52,cat,true,1943] <> 252) then e(7);
|
if (a5[50,cat,true,1943] <> 250) or (a5[52,cat,true,1943] <> 252) then e(7);
|
||||||
|
#else
|
||||||
|
for i:=1000939 to 1000945 do a5[51,bat,false,i]:=300+i;
|
||||||
|
if a5[51,bat,false,1000940] <> 1001240 then e(6);
|
||||||
|
for i:=50 to 52 do a5[i,cat,true,1000943]:=200+i;
|
||||||
|
if (a5[50,cat,true,1000943] <> 250) or (a5[52,cat,true,1000943] <> 252) then e(7);
|
||||||
|
#endif
|
||||||
|
|
||||||
for i:= -10 to 10 do a1[i]:= 0;
|
for i:= -10 to 10 do a1[i]:= 0;
|
||||||
for i:= 0 to 10 do a1[i div 2 + i div 2]:= i+1;
|
for i:= 0 to 10 do a1[i div 2 + i div 2]:= i+1;
|
||||||
|
@ -360,8 +388,13 @@ procedure tst9;
|
||||||
{ Global pointers }
|
{ Global pointers }
|
||||||
begin t:=9; pct := pct + 1;
|
begin t:=9; pct := pct + 1;
|
||||||
new(p1); new(p2); new(p3); new(p4);
|
new(p1); new(p2); new(p3); new(p4);
|
||||||
|
#if EM_WSIZE < 4
|
||||||
p1^ := 1066;
|
p1^ := 1066;
|
||||||
if p1^ <> 1066 then e(1);
|
if p1^ <> 1066 then e(1);
|
||||||
|
#else
|
||||||
|
p1^ := 1000066;
|
||||||
|
if p1^ <> 1000066 then e(1);
|
||||||
|
#endif
|
||||||
p2^.i := 1215;
|
p2^.i := 1215;
|
||||||
if p2^.i <> 1215 then e(2);
|
if p2^.i <> 1215 then e(2);
|
||||||
p3^[0]:= 1566;
|
p3^[0]:= 1566;
|
||||||
|
@ -460,7 +493,11 @@ end;
|
||||||
procedure tst14;
|
procedure tst14;
|
||||||
{ Characters, Subranges, Enumerated types using locals }
|
{ Characters, Subranges, Enumerated types using locals }
|
||||||
var cc1,cc2,cc3:char;
|
var cc1,cc2,cc3:char;
|
||||||
|
#if EM_WSIZE < 4
|
||||||
sr1,sr2,sr3: 1939..1945;
|
sr1,sr2,sr3: 1939..1945;
|
||||||
|
#else
|
||||||
|
sr1,sr2,sr3: 1000939..1000945;
|
||||||
|
#endif
|
||||||
color,hue,tint: (ochre,magenta);
|
color,hue,tint: (ochre,magenta);
|
||||||
begin t:=14; pct := pct + 1;
|
begin t:=14; pct := pct + 1;
|
||||||
if 'q' <> kew then e(1);
|
if 'q' <> kew then e(1);
|
||||||
|
@ -468,7 +505,11 @@ end;
|
||||||
if cc1 = cc2 then e(2);
|
if cc1 = cc2 then e(2);
|
||||||
if cc1 <> cc3 then e(3);
|
if cc1 <> cc3 then e(3);
|
||||||
|
|
||||||
|
#if EM_WSIZE < 4
|
||||||
sr1:=1939; sr2:=1945; sr3:=1939;
|
sr1:=1939; sr2:=1945; sr3:=1939;
|
||||||
|
#else
|
||||||
|
sr1:=1000939; sr2:=1000945; sr3:=1000939;
|
||||||
|
#endif
|
||||||
if sr1=sr2 then e(4);
|
if sr1=sr2 then e(4);
|
||||||
if sr1<>sr3 then e(5);
|
if sr1<>sr3 then e(5);
|
||||||
bar[0]:=200; bar[1]:=255; bar[2]:=255; bar[3]:=203;
|
bar[0]:=200; bar[1]:=255; bar[2]:=255; bar[3]:=203;
|
||||||
|
@ -498,8 +539,13 @@ end;
|
||||||
if (aa1[-10]<>100) or (aa1[9]<>81) then e(1);
|
if (aa1[-10]<>100) or (aa1[9]<>81) then e(1);
|
||||||
|
|
||||||
#ifndef NOFLOAT
|
#ifndef NOFLOAT
|
||||||
|
#if EM_WSIZE < 4
|
||||||
for i:=1939 to 1945 do aa2[i]:=i-1938.5;
|
for i:=1939 to 1945 do aa2[i]:=i-1938.5;
|
||||||
if (abs(aa2[1939]-0.5) > eps) or (abs(aa2[1945]-6.5) > eps) then e(2);
|
if (abs(aa2[1939]-0.5) > eps) or (abs(aa2[1945]-6.5) > eps) then e(2);
|
||||||
|
#else
|
||||||
|
for i:=1000939 to 1000945 do aa2[i]:=i-1000938.5;
|
||||||
|
if (abs(aa2[1000939]-0.5) > eps) or (abs(aa2[1000945]-6.5) > eps) then e(2);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
aa3[magenta] := true; aa3[ochre] := true;
|
aa3[magenta] := true; aa3[ochre] := true;
|
||||||
|
@ -510,10 +556,17 @@ end;
|
||||||
aa4[mouse]:='m'; aa4[house]:='h'; aa4[louse]:='l';
|
aa4[mouse]:='m'; aa4[house]:='h'; aa4[louse]:='l';
|
||||||
if (aa4[mouse] <> 'm') or (aa4[house]<>'h' ) or (aa4[louse]<>'l') then e(5);
|
if (aa4[mouse] <> 'm') or (aa4[house]<>'h' ) or (aa4[louse]<>'l') then e(5);
|
||||||
|
|
||||||
|
#if EM_WSIZE < 4
|
||||||
for i:=1939 to 1945 do aa5[51,bat,false,i]:=300+i;
|
for i:=1939 to 1945 do aa5[51,bat,false,i]:=300+i;
|
||||||
if aa5[51,bat,false,1940] <> 2240 then e(6);
|
if aa5[51,bat,false,1940] <> 2240 then e(6);
|
||||||
for i:=50 to 52 do aa5[i,cat,true,1943]:=200+i;
|
for i:=50 to 52 do aa5[i,cat,true,1943]:=200+i;
|
||||||
if (aa5[50,cat,true,1943] <> 250) or (aa5[52,cat,true,1943] <> 252) then e(7);
|
if (aa5[50,cat,true,1943] <> 250) or (aa5[52,cat,true,1943] <> 252) then e(7);
|
||||||
|
#else
|
||||||
|
for i:=1000939 to 1000945 do aa5[51,bat,false,i]:=300+i;
|
||||||
|
if aa5[51,bat,false,1000940] <> 1001240 then e(6);
|
||||||
|
for i:=50 to 52 do aa5[i,cat,true,1000943]:=200+i;
|
||||||
|
if (aa5[50,cat,true,1000943] <> 250) or (aa5[52,cat,true,1000943] <> 252) then e(7);
|
||||||
|
#endif
|
||||||
|
|
||||||
for i:= -10 to 10 do aa1[i]:= 0;
|
for i:= -10 to 10 do aa1[i]:= 0;
|
||||||
for i:= 0 to 10 do aa1[i div 2 + i div 2]:= i+1;
|
for i:= 0 to 10 do aa1[i div 2 + i div 2]:= i+1;
|
||||||
|
|
Loading…
Reference in a new issue