mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 15:09:20 +02:00
* write extended to ppu file
* new version 0.99.7
This commit is contained in:
parent
ea8a7d2a4f
commit
befed16714
@ -55,6 +55,7 @@ Fixed bugs:
|
||||
bug0039.pp shows the else-else problem OK 0.9.9 (FK)
|
||||
bug0040.pp shows the if b1 xor b2 problem where b1,b2 :boolean OK 0.9.9 (FK)
|
||||
bug0041.pp shows the if then end. problem OK 0.9.9 (FK)
|
||||
bug0043.pp shows assembler nasm output fpu opcodes problem OK 0.99.6 (PFV)
|
||||
bug0044.pp shows $ifdef and comment nesting/directive problem OK 0.99.1 (PFV)
|
||||
bug0045.pp shows problem with virtual private methods OK 0.9.9 (FK)
|
||||
(might not be a true bug but more of an incompatiblity?)
|
||||
@ -157,6 +158,7 @@ Fixed bugs:
|
||||
bug0139.pp Cannot access protected method of ancestor class from other unit. OK 0.99.6
|
||||
bug0140.pp Shows that interdependent units still are not OK. OK 0.99.6 (PFV)
|
||||
bug0141.pp Wrong Class sizes when using forwardly defined classes. OK 0.99.6
|
||||
bug0146.pp no sizeof() for var arrays and the size is pushed incorrect OK 0.99.7 (PFV)
|
||||
bug0147.pp function b; is not allowed in implementation OK 0.99.7 (PFV)
|
||||
|
||||
Unproducable bugs:
|
||||
@ -177,8 +179,7 @@ bug0133.pp object type declaration not 100% compatibile with TP7
|
||||
Unfixed bugs:
|
||||
-------------
|
||||
bug0042.pp shows assembler double operator expression problem
|
||||
bug0043.pp shows assembler nasm output with fpu opcodes problem
|
||||
bug0049.pp shows an error while defining subrange types
|
||||
bug0049.pp shows an error while defining subrange types
|
||||
bug0050.pp can't set a function result in a nested procedure of a function
|
||||
bug0051.pp shows a problem with putpixel
|
||||
bug0052.pp collects missing graph unit routines
|
||||
@ -195,7 +196,6 @@ bug0142.pp sizeof(object) is not tp7 compatible when no constructor is used
|
||||
bug0143.pp cannot concat string and array of char in $X+ mode
|
||||
bug0144.pp problem with 'with object do'
|
||||
bug0145.pp typed files with huges records (needs filerec.size:longint)
|
||||
bug0146.pp no sizeof() for var arrays and the size is pushed incorrect
|
||||
bug0148.pp crash when setting function result of a declared but not yet
|
||||
implemented function in another function
|
||||
bug0149.pp (a, b) compile bug0149b twice and you'll get a crash
|
||||
|
@ -38,7 +38,7 @@ unit aasm;
|
||||
{$ifdef m68k}
|
||||
bestreal = real;
|
||||
{$endif}
|
||||
|
||||
pbestreal=^bestreal;
|
||||
|
||||
tait = (
|
||||
ait_string,
|
||||
@ -836,7 +836,11 @@ uses
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.14 1998-08-10 23:56:03 peter
|
||||
Revision 1.15 1998-08-11 15:31:36 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.14 1998/08/10 23:56:03 peter
|
||||
* fixed extended writing
|
||||
|
||||
Revision 1.13 1998/08/10 14:49:33 peter
|
||||
|
@ -81,7 +81,7 @@ unit pdecl;
|
||||
def : pdef;
|
||||
sym : psym;
|
||||
ps : pconstset;
|
||||
pd : pdouble;
|
||||
pd : pbestreal;
|
||||
sp : pstring;
|
||||
|
||||
begin
|
||||
@ -1881,7 +1881,11 @@ unit pdecl;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.36 1998-08-10 14:50:09 peter
|
||||
Revision 1.37 1998-08-11 15:31:38 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.36 1998/08/10 14:50:09 peter
|
||||
+ localswitches, moduleswitches, globalswitches splitting
|
||||
|
||||
Revision 1.35 1998/07/26 21:59:00 florian
|
||||
|
@ -1179,7 +1179,7 @@ unit pexpr;
|
||||
constchar:
|
||||
p1:=genordinalconstnode(pconstsym(srsym)^.value,cchardef);
|
||||
constreal:
|
||||
p1:=genrealconstnode(pdouble(pconstsym(srsym)^.value)^);
|
||||
p1:=genrealconstnode(pbestreal(pconstsym(srsym)^.value)^);
|
||||
constbool:
|
||||
p1:=genordinalconstnode(pconstsym(srsym)^.value,booldef);
|
||||
constseta:
|
||||
@ -1786,7 +1786,11 @@ unit pexpr;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.32 1998-08-11 14:05:32 peter
|
||||
Revision 1.33 1998-08-11 15:31:39 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.32 1998/08/11 14:05:32 peter
|
||||
* fixed sizeof(array of char)
|
||||
|
||||
Revision 1.31 1998/08/10 14:50:11 peter
|
||||
|
@ -97,6 +97,12 @@ const
|
||||
uf_smartlink = $40;
|
||||
uf_finalize = $80;
|
||||
|
||||
type
|
||||
{$ifdef m68k}
|
||||
ppureal=single;
|
||||
{$else}
|
||||
ppureal=extended;
|
||||
{$endif}
|
||||
|
||||
type
|
||||
tppuerror=(ppuentrytoobig,ppuentryerror);
|
||||
@ -161,7 +167,7 @@ type
|
||||
function getbyte:byte;
|
||||
function getword:word;
|
||||
function getlongint:longint;
|
||||
function getdouble:double;
|
||||
function getreal:ppureal;
|
||||
function getstring:string;
|
||||
function skipuntilentry(untilb:byte):boolean;
|
||||
{write}
|
||||
@ -174,7 +180,7 @@ type
|
||||
procedure putbyte(b:byte);
|
||||
procedure putword(w:word);
|
||||
procedure putlongint(l:longint);
|
||||
procedure putdouble(d:double);
|
||||
procedure putreal(d:ppureal);
|
||||
procedure putstring(s:string);
|
||||
end;
|
||||
|
||||
@ -488,6 +494,7 @@ begin
|
||||
if entryidx+1>entry.size then
|
||||
begin
|
||||
error:=true;
|
||||
getbyte:=0;
|
||||
exit;
|
||||
end;
|
||||
readdata(b,1);
|
||||
@ -505,6 +512,7 @@ begin
|
||||
if entryidx+2>entry.size then
|
||||
begin
|
||||
error:=true;
|
||||
getword:=0;
|
||||
exit;
|
||||
end;
|
||||
readdata(w,2);
|
||||
@ -522,6 +530,7 @@ begin
|
||||
if entryidx+4>entry.size then
|
||||
begin
|
||||
error:=true;
|
||||
getlongint:=0;
|
||||
exit;
|
||||
end;
|
||||
readdata(l,4);
|
||||
@ -530,20 +539,21 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
function tppufile.getdouble:double;
|
||||
function tppufile.getreal:ppureal;
|
||||
type
|
||||
pdouble = ^double;
|
||||
pppureal = ^ppureal;
|
||||
var
|
||||
d : double;
|
||||
d : ppureal;
|
||||
begin
|
||||
if entryidx+sizeof(double)>entry.size then
|
||||
if entryidx+sizeof(ppureal)>entry.size then
|
||||
begin
|
||||
error:=true;
|
||||
getreal:=0;
|
||||
exit;
|
||||
end;
|
||||
readdata(d,sizeof(double));
|
||||
getdouble:=d;
|
||||
inc(entryidx,sizeof(double));
|
||||
readdata(d,sizeof(ppureal));
|
||||
getreal:=d;
|
||||
inc(entryidx,sizeof(ppureal));
|
||||
end;
|
||||
|
||||
|
||||
@ -735,9 +745,9 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure tppufile.putdouble(d:double);
|
||||
procedure tppufile.putreal(d:ppureal);
|
||||
begin
|
||||
putdata(d,sizeof(double));
|
||||
putdata(d,sizeof(ppureal));
|
||||
end;
|
||||
|
||||
|
||||
@ -750,7 +760,11 @@ end;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.7 1998-06-25 10:51:01 pierre
|
||||
Revision 1.8 1998-08-11 15:31:40 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.7 1998/06/25 10:51:01 pierre
|
||||
* removed a remaining ifndef NEWPPU
|
||||
replaced by ifdef OLDPPU
|
||||
* added uf_finalize to ppu unit
|
||||
|
@ -56,9 +56,9 @@
|
||||
end;
|
||||
|
||||
|
||||
procedure writedouble(d:double);
|
||||
procedure writereal(d:bestreal);
|
||||
begin
|
||||
current_ppu^.putdata(d,sizeof(double));
|
||||
current_ppu^.putreal(d);
|
||||
end;
|
||||
|
||||
|
||||
@ -248,14 +248,11 @@
|
||||
end;
|
||||
|
||||
|
||||
function readdouble : double;
|
||||
var
|
||||
d : double;
|
||||
function readreal : bestreal;
|
||||
begin
|
||||
current_ppu^.getdata(d,sizeof(double));
|
||||
readreal:=current_ppu^.getreal;
|
||||
if current_ppu^.error then
|
||||
Message(unit_f_ppu_read_error);
|
||||
readdouble:=d;
|
||||
end;
|
||||
|
||||
|
||||
@ -697,7 +694,11 @@
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.8 1998-08-10 14:50:29 peter
|
||||
Revision 1.9 1998-08-11 15:31:41 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.8 1998/08/10 14:50:29 peter
|
||||
+ localswitches, moduleswitches, globalswitches splitting
|
||||
|
||||
Revision 1.7 1998/07/14 14:47:07 peter
|
||||
|
@ -1337,7 +1337,7 @@
|
||||
constructor tconstsym.load;
|
||||
|
||||
var
|
||||
pd : pdouble;
|
||||
pd : pbestreal;
|
||||
ps : pointer; {***SETCONST}
|
||||
|
||||
begin
|
||||
@ -1355,7 +1355,7 @@
|
||||
conststring : value:=longint(stringdup(readstring));
|
||||
constreal : begin
|
||||
new(pd);
|
||||
pd^:=readdouble;
|
||||
pd^:=readreal;
|
||||
value:=longint(pd);
|
||||
end;
|
||||
{***SETCONST}
|
||||
@ -1405,7 +1405,7 @@
|
||||
writelong(value);
|
||||
end;
|
||||
conststring : writestring(pstring(value)^);
|
||||
constreal : writedouble(pdouble(value)^);
|
||||
constreal : writereal(pbestreal(value)^);
|
||||
{***SETCONST}
|
||||
constseta: writeset(pointer(value)^);
|
||||
{***}
|
||||
@ -1430,7 +1430,7 @@
|
||||
end;
|
||||
constbool, constint, constord, constchar : st := 'i'+tostr(value);
|
||||
constreal : begin
|
||||
system.str(pdouble(value)^,st);
|
||||
system.str(pbestreal(value)^,st);
|
||||
st := 'r'+st;
|
||||
end;
|
||||
{ if we don't know just put zero !! }
|
||||
@ -1671,7 +1671,11 @@
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.28 1998-08-11 14:07:27 peter
|
||||
Revision 1.29 1998-08-11 15:31:42 peter
|
||||
* write extended to ppu file
|
||||
* new version 0.99.7
|
||||
|
||||
Revision 1.28 1998/08/11 14:07:27 peter
|
||||
* fixed pushing of high value for openarray
|
||||
|
||||
Revision 1.27 1998/08/10 14:50:31 peter
|
||||
|
Loading…
Reference in New Issue
Block a user