From 29f6a3f50ec007390fea21b6f4cf36ab1d7f6dff Mon Sep 17 00:00:00 2001 From: Jonas Maebe Date: Wed, 4 Jun 2003 06:43:36 +0000 Subject: [PATCH] * fixed double secondpassing of procvar loads --- compiler/ncgcal.pas | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/compiler/ncgcal.pas b/compiler/ncgcal.pas index fbfe5dcdd3..3b88b14a62 100644 --- a/compiler/ncgcal.pas +++ b/compiler/ncgcal.pas @@ -708,6 +708,7 @@ implementation oldaktcallnode:=aktcallnode; aktcallnode:=self; +{$ifndef newra} { process procvar. Done here already, because otherwise it may } { destroy registers containing a parameter for the actual } { function call (e.g. if it's a function, its result will } @@ -715,7 +716,6 @@ implementation if assigned(right) then secondpass(right); -{$ifndef newra} if (po_virtualmethod in procdefinition.procoptions) and assigned(methodpointer) then begin @@ -837,9 +837,9 @@ implementation else { now procedure variable case } begin +{$ifdef newra} secondpass(right); -{$ifdef newra} if right.location.loc in [LOC_REFERENCE,LOC_CREFERENCE] then begin helpref:=right.location.reference; @@ -1380,7 +1380,10 @@ begin end. { $Log$ - Revision 1.84 2003-06-03 21:11:09 peter + Revision 1.85 2003-06-04 06:43:36 jonas + * fixed double secondpassing of procvar loads + + Revision 1.84 2003/06/03 21:11:09 peter * cg.a_load_* get a from and to size specifier * makeregsize only accepts newregister * i386 uses generic tcgnotnode,tcgunaryminus