pem did not generate a register message for var-parameters of
authorbal <none@none>
Wed, 12 Sep 1984 13:21:43 +0000 (13:21 +0000)
committerbal <none@none>
Wed, 12 Sep 1984 13:21:43 +0000 (13:21 +0000)
array- or record type. The routine "treewalk" is modified.
It generates a register message for every var-parameter, even
if it has its noreg-flag set.

lang/pc/pem/pem.p

index 14f98c9..9c4472f 100644 (file)
@@ -1236,7 +1236,8 @@ begin
        begin if not (used in fip^.iflag) then errid(-(+019),fip^.name);
          if not (assigned in fip^.iflag) then errid(-(+020),fip^.name);
          lsp:=fip^.idtype;
-         if level<>1 then if not (noreg in fip^.iflag) then
+         if level<>1 then 
+          if (refer in fip^.iflag) or not (noreg in fip^.iflag) then
            if (refer in fip^.iflag) or formof(lsp,[pointer]) then
              genreg(sz_addr,fip^.vpos.ad,reg_pointer)
            else