Rule: Ti ® Tj*Fk {
if Tj .type = Fk.type then begin
Ti.type
:= Tj.type
generate(*, Tj .loc,
Fk.loc, Ti .loc)
end
else begin
generate(new.loc, h, , )
if Tj .type = int
then begin
generate(int-to-real,
Tj .loc , , h)
generate(*, h, Fk.loc, Ti .loc)
end
else begin
generate(int-to-real,
Fk.loc , , h)
generate(*, Tj .loc,
h, Ti .loc)
end
Ti.type := real
end
}