この規格ページの目次
432
附属書 D
X 3001-1 : 2009 (ISO/IEC 1539-1 : 2004)
or ( KIND = 型パラメタ値 ] )
= スカラ整数初期値式 [ , LEN
R425 文字長パラメタ選択子 is ( [ LEN= ] 型パラメタ値 )
or * 文字長 [ , ]
R426 文字長 is ( 型パラメタ値 )
or スカラ整定数表現
C414 (R424) スカラ整数初期値式の値は,非負とし,処理系のもつ表現方法を指定しなければならない。
C415 (R426) スカラ整定数表現は,種別の指定を含んではならない。
C416 (R424 R425 R426) 型パラメタ値 “*” は,次の用途の場合にだけ用いてよい。
(1) 仮引数を宣言する場合
(2) 名前付き定数を宣言する場合
(3) ALLOCATE 文の型指定子中であって,それぞれの割付け実体が引継ぎ文字長をもつ文字型の仮
引数である場合
(3.5) 型保持文 (8.1.5) の型指定子 又は 派生型指定子中にある場合
(4) 外部関数において,関数結果の文字長パラメタを宣言する場合
C417 関数名は,その型が文字型であって,外部関数の結果の名前であるか 又は 仮引数の関数名である場合以外は,型パラメタ値 “*” で宣
言してはならない。
C418 関数名は,その関数が配列関数,ポインタ関数,再帰的関数 又は 純粋関数であるとき,型パラメタ値 “*” で宣言してはならない。
C419 (R425) 文字長パラメタ選択子中の省略可能なコンマは,その宣言型指定子が型宣言文中にある場合にだけ指定してよい。
C420 (R425) 文字長パラメタ選択子中の省略可能なコンマは,型宣言文中に区切りの 2 連コロンがない場合にだけ指定してよい。
C421 (R424) 文字値文関数 又は 文字型の文関数仮引数に対して指定する長さは,初期値式でなければならない。
R427 文字定数表現 is [ 種別 _ ] ’[ 表現可能文字 ] ... ’
or [ 種別 _ ] "[ 表現可能文字 ] ... "
C422 (R427) 種別の値は,処理系に存在する表現方法を指定しなければならない。
R428 論理定数表現 is .TRUE. [ _ 種別 ]
or .FALSE. [ _ 種別 ]
C423 (R428) 種別の値は,処理系に存在する表現方法を指定しなければならない。
R429 派生型定義 is TYPE 文
[ 型パラメタ定義文 ] ...
[ 型定義属性宣言文 ] ...
[ 成分定義部 ]
[ 型束縛手続部 ]
END TYPE 文
R430 TYPE 文 is TYPE [ [ , 型属性指定子並び ] :: ] 型名 [ ( 型パラメタ名並び )
R431 型属性指定子 is 参照許可指定子
or EXTENDS ( 親型名 )
or ABSTRACT
or BIND ( C )
C424 (R430) 派生型の型名は,DOUBLEPRECISION とも,この規格が規定するどの組込み型の名前とも同じで
あってはならない。
――――― [JIS X 3001-1 pdf 446] ―――――
433
附属書 D
X 3001-1 : 2009 (ISO/IEC 1539-1 : 2004)
C425 (R430) 同じ型属性指定子は,一つの TYPE 文中に 2 回以上書いてはならない。
C426 (R431) 親型名は,それ以前に定義されている拡張可能型 (4.5.6) の名前でなければならない。
C427 (R429) 型定義が遅延束縛 (4.5.4) を含むか 又は 継承 (4.5.6.1) する場合は,ABSTRACT を指定しなけれ
ばならない。
C428 (R429) BSTRACT を指定する場合は,その型は拡張可能でなければならない。
C429 (R429) XTENDS を指定する場合は,SEQUENCE を指定してはならない。
R432 型定義属性宣言文 is 成分 PRIVATE 文
or SEQUENCE 文
C430 (R429) 同じ型定義属性宣言文は,一つの派生型定義中に 2 回以上書いてはならない。
R433 END TYPE 文 is END TYPE [ 型名 ]
C431 (R433) ND TYPE に続いて型名の指定を書く場合,その型名は対応する TYPE 文の型名と同じでなけ
ればならない。
R434 SEQUENCE 文 is SEQUENCE
C432 (R438) EQUENCE を指定する場合は,それぞれのデータ成分は,組込み型であるか 又は 連続した派生
型でなければならない。
C433 (R429) EQUENCE を指定する場合は,型束縛手続部を記述してはならない。
R435 型パラメタ定義文 is INTEGER [ 種別型パラメタ選択子 ] , 型パラメタ属性指定子 ::
型パラメタ宣言並び
R436 型パラメタ宣言 is 型パラメタ名 [ = スカラ整数初期値式 ]
C434 (R435) 派生型定義の型パラメタ定義文における型パラメタ名は,その派生型定義の TYPE 文中の型パ
ラメタ名の一つでなければならない。
C435 (R435) 派生型定義の TYPE 文内のそれぞれの型パラメタ名は,その派生型定義の型パラメタ定義文中
の型パラメタ名として現れなければならない。
R437 型パラメタ属性指定子 is KIND
or LEN
R438 成分定義部 is [ 成分定義文 ] ...
R439 成分定義文 is データ成分定義文
or 手続成分定義文
R440 データ成分定義文 is 宣言型指定子 [ [ , 成分属性指定子並び ] :: ] 成分宣言並び
R441 成分属性指定子 is POINTER
or DIMENSION ( 成分配列形状指定 )
or ALLOCATABLE
or 参照許可指定子
R442 成分宣言 is 成分名 [ ( 成分配列形状指定 ) [ * 文字長 ] [ 成分初期値指定 ]
R443 成分配列形状指定 is 明示上下限並び
or 無指定上下限並び
R444 成分初期値指定 is = 初期値式
――――― [JIS X 3001-1 pdf 447] ―――――
434
附属書 D
X 3001-1 : 2009 (ISO/IEC 1539-1 : 2004)
or => 空初期化
C436 (R440) 同じ成分属性指定子は,一つの成分定義文中に 2 回以上書いてはならない。
C437 (R440) キーワード CLASS (5.1.1.2) で宣言する成分は,ALLOCATABLE 属性 又は POINTER 属性を
もっていなければならない。
C438 (R440) 成分に POINTER 属性の指定がない場合,その成分定義文の宣言型指定子は,CLASS(*) であ
るか,又は 組込み型 若しくは それ以前に定義された派生型を指定しなければならない。
C439 (R440) 成分に POINTER 属性の指定がある場合,その成分定義文の宣言型指定子は,CLASS(*) である
か,又は 組込み型 若しくは 任意の参照可能な派生型(その型自体を含む。)を指定しなければならない。
C440 (R440) OINTER 属性 又は ALLOCATABLE 属性を指定する場合,成分配列形状指定は,無指定上下
限並びでなければならない。
C441 (R440) OINTER 属性の指定も ALLOCATABLE 属性の指定もない場合,成分配列形状指定は,明示
上下限並びでなければならない。
C442 (R443) 明示上下限の上下限は,初期値式であるか,又は 宣言関数の引用 及び 名前付き定数(その部分
実体も含む。)以外のいかなる実体特定子の引用も含まない宣言式でなければならない。
C443 (R440) 成分に ALLOCATABLE 属性と POINTER 属性の両方を指定してはならない。
C444 (R442) “* 文字長” は,型指定が文字型である場合にだけ指定してよい。
C445 (R439) 成分定義文の型パラメタ値は,コロンであるか,初期値式であるか,又は,宣言関数の引用も,
名前付き定数 及び その部分実体を除くいかなる実体特定子も含まない宣言式であるかのいずれかでなけ
ればならない。
C446 (R440) 成分初期値指定を書いたとき,その成分宣言並びの前の区切りの 2 連コロンを省略してはなら
ない
C447 (R440) 成分初期値指定に “=>” を書いたとき,実体は,POINTER 属性をもたなければならない。初期
値指定に “=” を書いたとき,実体は,POINTER 属性 又は ALLOCATABLE 属性をもってはならない。
C447a (R440) 成分初期値指定を書いたとき,成分のそれぞれの型パラメタ 及び 配列上下限は,初期値式で
なければならない。
R445 手続成分定義文 is PROCEDURE ( [ 手続引用仕様 ] ),
手続成分属性指定子並び :: 手続宣言並び
R446 手続成分属性指定子 is POINTER
or PASS [ ( 引数名 )
or NOPASS
or 参照許可宣言
C448 (R445) 同じ手続成分属性指定子は,一つの手続成分定義文中に 2 回以上書いてはならない。
C449 (R445) 手続成分属性指定子並びには,POINTER 属性を書かなければならない。
C450 (R445) 手続ポインタ成分が,暗黙の引用仕様をもつか 又は 引数をもたない場合は,NOPASS を指定し
なければならない。
C451 (R445) ASS(引数名) を指定する場合は,引用仕様はその引数名を名前とする仮引数をもたなければな
らない。
C452 (R445) 同じ手続成分属性指定子並びに PASS 及び NOPASS を同時に指定してはならない。
C453 当該実体仮引数は,ポインタでもなく割付け実体でもないスカラ仮データ実体でなければならず,その宣
言時の型は確定する型と同じでなければならない。すべての長さ型パラメタは,引き継がれる。確定する
――――― [JIS X 3001-1 pdf 448] ―――――
435
附属書 D
X 3001-1 : 2009 (ISO/IEC 1539-1 : 2004)
型が拡張可能型(4.5.6 参照)であるときに限り,多相的(5.1.1.2 参照)でなければならない。VALUE
属性をもってはならない。
R447 成分 PRIVATE 文 is PRIVATE
C454 (R447) 成分 PRIVATE 文は,その型定義がモジュールの宣言部にある場合にだけ書くことができる。
R448 型束縛手続部 is CONTAINS 文
[ 束縛 PRIVATE 文 ]
手続束縛文 [ 手続束縛文 ] ...
R449 束縛 PRIVATE 文 is PRIVATE
C455 (R448) 束縛 PRIVATE 文は,型定義がモジュールの宣言部にあるときだけ書くことができる。
R450 手続束縛文 is 個別束縛
or 総称束縛
or 後始末束縛
R451 個別束縛 is PROCEDURE [ ( 引用仕様名 ) [ [ , 束縛属性並び ] :: ]
束縛名 [ => 手続名 ]
C456 (R451) “=> 手続名” を書いたとき,区切りの 2 連コロンを省略してはならない。
C457 (R451) “=> 手続名” を書いたとき,引用仕様名を書いてはならない。
C458 (R451) 手続名は,参照可能なモジュール手続名か 又は 明示的引用仕様をもった外部手続名でなければ
ならない。
R452 総称束縛 is GENERIC [ , 参照許可属性 ] :: 総称指定 => 束縛名並び
C459 (R452) モジュールの宣言部内で,それぞれの総称束縛は,その派生型において同じ総称指定をもつ他の
すべての総称束縛と同じ参照許可属性を,明示的 又は 暗黙的に指定しなければならない。
C460 (R452) 束縛名並びの束縛名は,その型の個別束縛の名前でなければならない。
C461 (R452) 総称指定が総称名でないとき,それぞれの個別束縛は,当該実体仮引数 (4.5.3.3) をもたなけれ
ばならない。
C462 (R452) 総称指定が OPERATOR(利用者定義演算子) であるとき,それぞれの束縛の引用仕様は 12.3.2.1.1
で示す指定方法に従っていなければならない。
C463 (R452) 総称指定が ASSIGNMENT(=) であるとき,それぞれの束縛の引用仕様は 12.3.2.1.2 で示す指定方
法に従っていなければならない。
C464 (R452) 総称指定が派生型入出力総称指定であるとき,それぞれ束縛の引用仕様は 9.5.3.7 で示す指定方
法に従っていなければならない。引数 dtv(9.5.3.7.2 参照)の型は,その派生型定義の型名でなければ
ならない。
R453 束縛属性 is PASS [ ( 引数名 )
or NOPASS
or NON OVERRIDABLE
or DEFERRED
or 参照許可指定子
C465 (R453) 同じ束縛属性は,一つの束縛属性並び中に 2 回以上書いてはならない。
C466 (R451) 束縛の引用仕様が定義している型の仮引数をもたないとき,NOPASS を書かなければならない。
――――― [JIS X 3001-1 pdf 449] ―――――
436
附属書 D
X 3001-1 : 2009 (ISO/IEC 1539-1 : 2004)
C467 (R451) ASS(引数名) を書いたとき,束縛の引用仕様には,引数名をもった仮引数を書かなければなら
ない。
C468 (R453) 一つの束縛属性並びに PASS と NOPASS を同時に書いてはならない。
C469 (R453) 一つの束縛属性並びに NON OVERRIDABLE と DEFERRED を同時に書いてはならない。
C470 (R453) 引用仕様名を書いたときに限り DEFERRED を書かなければならない。DEFERRED を書いたときに
限り,引用仕様名を書かなければならない。
C471 (R451) 上書き束縛 (4.5.6.2) は,上書きするものの束縛が遅延するときだけ,DEFERRED 属性を指定
しなければならない。
C472 (R451) ON OVERRIDABLE 属性をもった継承束縛 (4.5.6.1) を上書きしてはならない。
R454 後始末束縛 is FINAL [ :: ] 後始末サブルーチン名並び
C473 (R454) 後始末サブルーチン名は,ちょうど一つの仮引数をもつモジュール手続の名前でなければなら
ない。その引数は,省略不可であり,定義しようとする派生型の,ポインタでもなく,割付け変数でもな
く,多相的でもない変数でなければならない。仮引数は,INTENT(OUT) であってはならない。
C474 (R454) 同じ型に対して,後始末サブルーチン名を 2 回以上指定してはならない。
C475 (R454) 同じ型に対して,同じ種別型パラメタ 及び 同じ次元数をもった仮引数をもつ後始末サブルーチ
ン名を 2 回以上指定してはならない。
R455 派生型指定子 is 型名 [ ( 型パラメタ指定並び )
R456 型パラメタ指定 is [ キーワード = ] 型パラメタ値
C476 (R455) 型名は,参照可能な派生型の名前でなければならない。
C477 (R455) 型パラメタ指定並びは,型がパラメタをもつときだけ書かなければならない。
C478 (R455) その型の各パラメタに対応して,高々一つの型パラメタ指定が存在しなければならない。型パラ
メタが暗黙の値をもっていないとき,その型パラメタに対応する型パラメタ指定が存在しなければなら
ない。
C479 (R456) 型パラメタ指定並びの型パラメタ指定に先行する “キーワード=” を省略するときだけ,型パラメ
タ指定から “キーワード=” を省略できる。
C480 (R456) キーワードは,その型のパラメタ名でなければならない。
C481 (R456) 仮引数 若しくは 結合名の宣言 又は 仮引数の割付けのいずれかのときだけ,型パラメタ指定の
型パラメタ値として “*” を使うことができる。
R457 構造体構成子 is 派生型指定子 ( [ 成分指定並び ] )
R458 成分指定 is [ キーワード = ] 成分データ源
R459 成分データ源 is 式
or データ指示先
or 手続指示先
C482 (R457) 派生型指定子には,抽象型 (4.5.6) を指定してはならない。
C483 (R457) 成分には,高々一つの成分指定を書くことができる。
C484 (R457) 成分が成分指定をもつとき,継承結合されたいかなる成分に対しても,成分指定を与えてはなら
ない。
C485 (R457) 成分は,暗黙の初期値設定をもたず,成分指定をもっているか暗黙の初期値設定をもっている他
の成分と継承結合していないとき,成分指定をもたなければならない。
――――― [JIS X 3001-1 pdf 450] ―――――
次のページ PDF 451
JIS X 3001-1:2009の引用国際規格 ISO 一覧
- ISO/IEC 1539-1:2004(IDT)
JIS X 3001-1:2009の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.060 : 情報技術に使用される言語
JIS X 3001-1:2009の関連規格と引用規格一覧
- 規格番号
- 規格名称