例
using System; public interface I5777 { string GetEnumerator(); }
000001 IDENTIFICATION DIVISION. 000002 PROGRAM-ID. P5777. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 CLASS SYSCON AS "System.Console" 000007 CLASS SYSCHR AS "System.Char" 000008 INTERFACE I5777. 000009 DATA DIVISION. 000010 WORKING-STORAGE SECTION. 000011 01 WCHR OBJECT REFERENCE SYSCHR. 000012 01 WCOL OBJECT REFERENCE I5777. 000013 PROCEDURE DIVISION. 000014 PERFORM VARYING WCHR THRU WCOL 000015 INVOKE SYSCON "WriteLine" USING BY VALUE WCHR 000016 END-PERFORM 000017 END PROGRAM P5777.
P5777.cob (14) : JMN5777I-S PERFORM文のVARYING-THRU指定のTHRUに指定したオブジェクト参照一意名の参照する型のGetEnumeratorメソッドの返す型が不適切です.
詳細な説明
THRUに指定した一意名の参照する型が持つGetEnumeratorメソッドの戻り値の型が不適切な場合に,この診断メッセージが出力されます.
これは,GetEnumeratorメソッドの戻り値の型が次の条件に合わない場合に該当します.
この型の情報を復元するに十分なメタデータがない.
この型がMoveNextメソッドかCurrentプロパティのどちらかを含まない.
この型が含むMoveNextメソッドが次の条件を満たさない.
MoveNextメソッドはアクセス可能である.
MoveNextメソッドはオブジェクトメソッドまたはインタフェースメソッドである.
MoveNextメソッドは型パラメタを持たない.
MoveNextメソッドはメソッドパラメタを1つも持たない.
MoveNextメソッドの戻り値の型はboolean型である.
この型が含むCurrentプロパティが次の条件を満たさない.
Currentプロパティはアクセス可能である.
Currentプロパティはインスタンスプロパティまたはインタフェースプロパティである.
CurrentプロパティはGETプロパティメソッドを含む.