ANY LENGTH 句を指定すると、連絡節の項目の長さが実行時に変化し、引数の長さによって決まる。
構文規則
- ANY LENGTH 句を指定するのは、関数の連絡節、内包されたプログラム、またはプロパティ メソッドではないメソッドのそれぞれの、基本レベル 1 の項目のみとする。
- ANY LENGTH 句を含むソース要素が、内包されているプログラムまたはメソッドである場合、記述項の左辺は、手続き部見出しで次のいずれかとして参照される必要がある。
- BY REFERENCE を指定した仮パラメーター
- 戻り項目
- ANY LENGTH 句を含むソース要素が関数である場合、記述項の左辺は、手続き部見出しで BY REFERENCE を指定した仮パラメーターとして参照される必要がある。
- 記述項の左辺には PICTURE 句を指定し、PICTURE 句で指定する文字列は、ピクチャ記号「N」または「X」の単一のインスタンスにする必要がある。
一般規則
- ANY LENGTH 句は、記述項の左辺が以下のいずれかであることを指定する。
- 長さがゼロの項目 (活性化する側の実行時要素の対応する引数または戻り項目が、長さがゼロの項目である場合)
- その PICTURE 句の文字列内のピクチャ記号が n 回繰り返されたものとして扱われる。ここで n は、活性化する側の実行時要素の対応する引数または戻り項目の長さを表す。
ANY LENGTH を使用できるのは、COBOL が最も外側のプログラム (サブプログラムも可) で COBOL を呼び出す場合のみである。