COBCH1708 メソッド '<メソッド名>' がパラメータの切り捨てが必要な '<クラス名>' に複数存在する

メソッド呼び出しにより、複数のターゲット メソッド候補が見つかりました。これらのターゲットにより、パラメータの切り捨てが発生する可能性があります。

メソッド呼び出しが、2 つのターゲット メソッドによって応じられ、どちらのメソッドでもパラメータの切り捨てが発生し得るため、予期せぬ結果が生じる可能性があります。最適なメソッドの通常検索は、パラメータの切り捨てが必要でない場合にのみ適用されます。

次の例では、binary-double 型のn1 フィールドは、いずれかのメソッドに渡されて、binary-char または binary-short に変換されると、切り捨てられる可能性があります。このような場合、型の互換性が保持されて、切り捨てが発生しないようにする必要があります。

class-id a.
method-id main static.
declare n1 as binary-double
invoke self::m(n1)
end method.

method-id m static.
procedure division using by value n as binary-char.
 display n
end method.

method-id m static.
procedure division using by value n as binary-short.
 display n
end method.
end class.