diff --git a/compiler/i386/n386add.pas b/compiler/i386/n386add.pas index e90e0d10fd..d1fe302d8d 100644 --- a/compiler/i386/n386add.pas +++ b/compiler/i386/n386add.pas @@ -335,7 +335,7 @@ interface if (nodetype = addn) and is_shortstring(resulttype.def) then begin - expectloc:=LOC_CREFERENCE; + expectloc:=LOC_REFERENCE; calcregisters(self,0,0,0); result := nil; exit; @@ -389,7 +389,7 @@ interface { location is released by copyshortstring } location_freetemp(exprasmlist,left.location); - location_reset(left.location,LOC_CREFERENCE,def_cgsize(resulttype.def)); + location_reset(left.location,LOC_REFERENCE,def_cgsize(resulttype.def)); left.location.reference:=href; end; @@ -1664,7 +1664,10 @@ begin end. { $Log$ - Revision 1.65 2003-04-23 20:16:04 peter + Revision 1.66 2003-04-26 09:12:55 peter + * add string returns in LOC_REFERENCE + + Revision 1.65 2003/04/23 20:16:04 peter + added currency support based on int64 + is_64bit for use in cg units instead of is_64bitint * removed cgmessage from n386add, replace with internalerrors diff --git a/compiler/nadd.pas b/compiler/nadd.pas index 06b12304fe..14af1db236 100644 --- a/compiler/nadd.pas +++ b/compiler/nadd.pas @@ -1782,7 +1782,7 @@ implementation else if is_longstring(ld) then begin { this is only for add, the comparisaion is handled later } - expectloc:=LOC_CREFERENCE; + expectloc:=LOC_REFERENCE; end else begin @@ -1957,7 +1957,10 @@ begin end. { $Log$ - Revision 1.85 2003-04-24 22:29:57 florian + Revision 1.86 2003-04-26 09:12:55 peter + * add string returns in LOC_REFERENCE + + Revision 1.85 2003/04/24 22:29:57 florian * fixed a lot of PowerPC related stuff Revision 1.84 2003/04/23 20:16:04 peter diff --git a/compiler/ncgopt.pas b/compiler/ncgopt.pas index 3a9a17290d..23fcf26dc3 100644 --- a/compiler/ncgopt.pas +++ b/compiler/ncgopt.pas @@ -77,7 +77,7 @@ begin firstpass(right); if codegenerror then exit; - expectloc:=LOC_CREFERENCE; + expectloc:=LOC_REFERENCE; if not is_constcharnode(right) then { it's not sure we need the register, but we can't know it here yet } calcregisters(self,2,0,0) @@ -106,7 +106,7 @@ begin { location is released by copyshortstring } location_freetemp(exprasmlist,left.location); { return temp reference } - location_reset(left.location,LOC_CREFERENCE,def_cgsize(resulttype.def)); + location_reset(left.location,LOC_REFERENCE,def_cgsize(resulttype.def)); left.location.reference:=href; end; secondpass(right); @@ -218,7 +218,7 @@ begin { release the registers } location_freetemp(exprasmlist,left.location); { return temp reference } - location_reset(left.location,LOC_CREFERENCE,def_cgsize(resulttype.def)); + location_reset(left.location,LOC_REFERENCE,def_cgsize(resulttype.def)); left.location.reference:=href; end; secondpass(right); @@ -252,6 +252,9 @@ end. { $Log$ - Revision 1.1 2003-04-24 11:20:06 florian + Revision 1.2 2003-04-26 09:12:55 peter + * add string returns in LOC_REFERENCE + + Revision 1.1 2003/04/24 11:20:06 florian + created from n386opt -} \ No newline at end of file +} diff --git a/compiler/nopt.pas b/compiler/nopt.pas index 5de3a87334..1cb17e80cd 100644 --- a/compiler/nopt.pas +++ b/compiler/nopt.pas @@ -137,7 +137,7 @@ end; function taddsstringoptnode.pass_1: tnode; begin pass_1 := nil; - expectloc:= LOC_CREFERENCE; + expectloc:= LOC_REFERENCE; calcregisters(self,0,0,0); { here we call STRCONCAT or STRCMP or STRCOPY } procinfo.flags:=procinfo.flags or pi_do_call; @@ -278,7 +278,10 @@ end. { $Log$ - Revision 1.13 2003-04-22 23:50:23 peter + Revision 1.14 2003-04-26 09:12:55 peter + * add string returns in LOC_REFERENCE + + Revision 1.13 2003/04/22 23:50:23 peter * firstpass uses expectloc * checks if there are differences between the expectloc and location.loc from secondpass in EXTDEBUG