以下の例は、呼び込み側ブロックの内部および外部にある関数の呼び出しを示しています。
以下の例では、代入ステートメントに Sprod 関数への 参照が含まれています。
Mainp: procedure;
get list (A, B, C, Y);
1 X = Y**3+Sprod(A,B,C);
2 Sprod: procedure (U,V,W)
returns (bin float(21));
dcl (U,V,W) bin float(53);
if U > V + W then
3 return (0);
else
3 return (U*V*W);
end Sprod;
Mainp: procedure;
dcl Tprod entry (bin float(53),
bin float(53),
bin float(53),
label) external
returns (bin float(21));
get list (A,B,C,Y);
1 X = Y**3+Tprod(A,B,C,Lab1);
Lab1: call Errt;
end Mainp;
1 Tprod: procedure (U,V,W,Z) returns (bin float(21)); dcl (U,V,W) bin float(53); declare Z label; 2 if U > V + W then go to Z; 3 else return (U*V*W); end Tprod;
Tprod は外部プロシージャーであることに注意してください。 RETURNS が含まれている Mainp には明示的な入り口宣言があります。