プログラム名の有効範囲を規制する規則

次の規則は別のプログラム内に含まれたプログラムのプログラム名を参照する際に適用されます。 ここでは、プログラム-B およびプログラム-C を直接含むプログラム-A、プログラム-D およびプログラム-F を直接含むプログラム-C、さらにプログラム-E を直接含むプログラム-D について取り上げます。

図 1. プログラム名の有効範囲を規制する規則
プログラム名の有効範囲を規制する規則

プログラム-D が COMMON 属性を持っていない場合には、プログラム-D は、プログラム-D を直接含んでいるプログラム (つまりプログラム-C) によってのみ参照されます。

プログラム-D が COMMON 属性を持っている場合、プログラム-C はプログラム-D を含んでいるのでそれを参照できます。 さらにプログラム-D およびプログラム-D に含まれるプログラム以外は、プログラム-C に含まれるどのプログラムでもプログラム-D を参照できます。 言い換えると、プログラム-D が COMMON 属性を持っている場合、プログラム-D はプログラム-C およびプログラム-F で参照できますが、 プログラム-E、プログラム-A、プログラム-B、またはプログラム-D のステートメントでは参照できません。