mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-03 18:10:17 +02:00
* merged
This commit is contained in:
parent
8b4062e37e
commit
45bf051885
@ -124,11 +124,15 @@ implementation
|
||||
(not is_boolean(def_to))) then
|
||||
b:=0;
|
||||
end;
|
||||
{ enumdef :
|
||||
enumdef :
|
||||
begin
|
||||
doconv:=tc_int_2_int;
|
||||
b:=1;
|
||||
end;}
|
||||
{ needed for char(enum) }
|
||||
if explicit then
|
||||
begin
|
||||
doconv:=tc_int_2_int;
|
||||
b:=1;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -662,9 +666,15 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.30 1999-06-28 16:02:30 peter
|
||||
Revision 1.31 1999-07-16 10:04:32 peter
|
||||
* merged
|
||||
|
||||
Revision 1.30 1999/06/28 16:02:30 peter
|
||||
* merged
|
||||
|
||||
Revision 1.27.2.4 1999/07/16 09:52:18 peter
|
||||
* allow char(enum)
|
||||
|
||||
Revision 1.27.2.3 1999/06/28 15:51:27 peter
|
||||
* tp7 fix
|
||||
|
||||
|
@ -2124,7 +2124,10 @@ unit pdecl;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.132 1999-07-11 21:24:31 michael
|
||||
Revision 1.133 1999-07-16 10:04:34 peter
|
||||
* merged
|
||||
|
||||
Revision 1.132 1999/07/11 21:24:31 michael
|
||||
+ Fixed integer message table
|
||||
|
||||
Revision 1.131 1999/07/06 21:48:23 florian
|
||||
@ -2146,6 +2149,12 @@ end.
|
||||
* use of is_ordinal checked: often a qword/int64 isn't allowed (case/for ...)
|
||||
* small qword problems fixed
|
||||
|
||||
Revision 1.127.2.4 1999/07/11 21:48:01 michael
|
||||
+ merged dispatch fix
|
||||
|
||||
Revision 1.127.2.3 1999/07/07 07:53:22 michael
|
||||
+ Merged patches from florian
|
||||
|
||||
Revision 1.127.2.2 1999/07/05 20:03:27 peter
|
||||
* removed warning/notes
|
||||
|
||||
|
@ -60,7 +60,9 @@ unit pexpr;
|
||||
{$endif}
|
||||
;
|
||||
|
||||
const allow_type : boolean = true;
|
||||
const
|
||||
allow_type : boolean = true;
|
||||
got_addrn : boolean = false;
|
||||
|
||||
function parse_paras(_colon,in_prop_paras : boolean) : ptree;
|
||||
|
||||
@ -116,9 +118,9 @@ unit pexpr;
|
||||
|
||||
begin
|
||||
if (m_tp_procvar in aktmodeswitches) and
|
||||
{ (not afterassignment) and }
|
||||
(not got_addrn) and
|
||||
(not in_args) and
|
||||
(p^.treetype in [loadn]) then
|
||||
(p^.treetype=loadn) then
|
||||
begin
|
||||
{ support if procvar then for tp7 and many other expression like this }
|
||||
Store_valid:=Must_be_valid;
|
||||
@ -1741,7 +1743,9 @@ unit pexpr;
|
||||
end;
|
||||
KLAMMERAFFE : begin
|
||||
consume(KLAMMERAFFE);
|
||||
got_addrn:=true;
|
||||
p1:=factor(true);
|
||||
got_addrn:=false;
|
||||
p1:=gensinglenode(addrn,p1);
|
||||
end;
|
||||
LKLAMMER : begin
|
||||
@ -2042,7 +2046,10 @@ unit pexpr;
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.120 1999-07-06 22:38:11 florian
|
||||
Revision 1.121 1999-07-16 10:04:35 peter
|
||||
* merged
|
||||
|
||||
Revision 1.120 1999/07/06 22:38:11 florian
|
||||
* another fix for TP/Delphi styled procedure variables
|
||||
|
||||
Revision 1.119 1999/07/05 20:13:16 peter
|
||||
@ -2061,6 +2068,12 @@ end.
|
||||
Revision 1.116 1999/06/26 00:24:53 pierre
|
||||
* mereg from fixes-0_99_12 branch
|
||||
|
||||
Revision 1.112.2.8 1999/07/16 09:54:57 peter
|
||||
* @procvar support in tp7 mode works again
|
||||
|
||||
Revision 1.112.2.7 1999/07/07 07:53:10 michael
|
||||
+ Merged patches from florian
|
||||
|
||||
Revision 1.112.2.6 1999/07/01 21:31:59 peter
|
||||
* procvar fixes again
|
||||
|
||||
|
@ -918,11 +918,9 @@ const
|
||||
current_scanner^.readchar;
|
||||
current_scanner^.skipspace;
|
||||
l:=current_scanner^.readval;
|
||||
if l>1024 then
|
||||
maxheapsize:=l;
|
||||
{ Ignore this value, because the limit is set by the OS
|
||||
info and shouldn't be changed by the user (PFV) }
|
||||
end;
|
||||
if heapsize>maxheapsize then
|
||||
message(scan_w_illegal_switch);
|
||||
end;
|
||||
|
||||
|
||||
@ -1087,10 +1085,16 @@ const
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.54 1999-07-03 00:29:58 peter
|
||||
Revision 1.55 1999-07-16 10:04:36 peter
|
||||
* merged
|
||||
|
||||
Revision 1.54 1999/07/03 00:29:58 peter
|
||||
* new link writing to the ppu, one .ppu is needed for all link types,
|
||||
static (.o) is now always created also when smartlinking is used
|
||||
|
||||
Revision 1.53.2.1 1999/07/16 09:53:06 peter
|
||||
* ignore maxheapsize
|
||||
|
||||
Revision 1.53 1999/06/02 22:44:18 pierre
|
||||
* previous wrong log corrected
|
||||
|
||||
|
@ -926,6 +926,21 @@ implementation
|
||||
end
|
||||
else
|
||||
|
||||
{ support procvar=nil,procvar<>nil }
|
||||
if ((ld^.deftype=procvardef) and (rt=niln)) or
|
||||
((rd^.deftype=procvardef) and (lt=niln)) then
|
||||
begin
|
||||
calcregisters(p,1,0,0);
|
||||
p^.location.loc:=LOC_REGISTER;
|
||||
case p^.treetype of
|
||||
equaln,unequaln : ;
|
||||
else
|
||||
CGMessage(type_e_mismatch);
|
||||
end;
|
||||
convdone:=true;
|
||||
end
|
||||
else
|
||||
|
||||
if (rd^.deftype=pointerdef) or
|
||||
is_zero_based_array(rd) then
|
||||
begin
|
||||
@ -1102,9 +1117,15 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.36 1999-06-17 15:32:48 pierre
|
||||
Revision 1.37 1999-07-16 10:04:37 peter
|
||||
* merged
|
||||
|
||||
Revision 1.36 1999/06/17 15:32:48 pierre
|
||||
* merged from 0-99-12 branch
|
||||
|
||||
Revision 1.34.2.3 1999/07/16 09:54:58 peter
|
||||
* @procvar support in tp7 mode works again
|
||||
|
||||
Revision 1.34.2.2 1999/06/17 15:25:07 pierre
|
||||
* for arrays of char operators can not be overloaded
|
||||
|
||||
|
@ -179,9 +179,18 @@ implementation
|
||||
{ proc/procvar 2 procvar ? }
|
||||
if p^.left^.treetype=calln then
|
||||
begin
|
||||
{ it could also be a procvar, not only pprocsym ! }
|
||||
if p^.left^.symtableprocentry^.typ=varsym then
|
||||
hp:=genloadnode(pvarsym(p^.left^.symtableentry),p^.left^.symtableproc)
|
||||
{ is it a procvar, this is needed for @procvar in tp mode ! }
|
||||
if assigned(p^.left^.right) then
|
||||
begin
|
||||
{ just return the load of the procvar, remove the
|
||||
addrn and calln nodes }
|
||||
hp:=p^.left^.right;
|
||||
putnode(p^.left);
|
||||
putnode(p);
|
||||
firstpass(hp);
|
||||
p:=hp;
|
||||
exit;
|
||||
end
|
||||
else
|
||||
begin
|
||||
{ generate a methodcallnode or proccallnode }
|
||||
@ -268,7 +277,7 @@ implementation
|
||||
if is_constnode(p^.left) then
|
||||
begin
|
||||
aktfilepos:=p^.left^.fileinfo;
|
||||
CGMessage(type_e_no_addr_of_constant);
|
||||
CGMessage(type_e_no_addr_of_constant);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@ -582,12 +591,18 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.20 1999-07-05 20:25:41 peter
|
||||
Revision 1.21 1999-07-16 10:04:39 peter
|
||||
* merged
|
||||
|
||||
Revision 1.20 1999/07/05 20:25:41 peter
|
||||
* merged
|
||||
|
||||
Revision 1.19 1999/07/05 16:24:17 peter
|
||||
* merged
|
||||
|
||||
Revision 1.18.2.4 1999/07/16 09:54:59 peter
|
||||
* @procvar support in tp7 mode works again
|
||||
|
||||
Revision 1.18.2.3 1999/07/05 20:06:47 peter
|
||||
* give error instead of warning for ln(0) and sqrt(0)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user