この規格 プレビューページの目次
※一部、英文及び仏文を自動翻訳した日本語訳を使用しています。
索引
異常な表現、1
中絶 , 19, 33, 35, 36
アクセス オブジェクト、1
アクセスタイプ、2
アクセス値、2
サブプログラムへのアクセス、1
アロケータ、2
AMV — データの型破壊再解釈、25
アスペクト指定、2
アトミック、2, 4, 33, 36
属性、2
'アクセス、22, 23
'住所、22, 23, 37
'位置合わせ、5
'Component_Size, 5
' 指数, 11
'まず、21, 22, 34
'画像、20
'最後、22, 34
'長さ、21, 22
'範囲、22
'サイズ、5
'Unchecked_Access 、7, 23, 31
'有効、30
'アクセス、13, 23
'呼び出し可能、35, 36
'終了、35, 36
'有効、10, 18
'有効、17
ビット順序、2, 3
BJL—名前空間の問題、17
境界誤差、2
BQF — 未指定の動作、32
BRS —あいまいな言語機能、32
ケースの選択、2
ケース式、2
ケースステートメント、2, 11, 20
CCB — 列挙子の問題、11
CGA - 並行性 - アクティベーション、35
CGM - プロトコル ロック エラー、36
CGS — 並行性 — 早期終了、36
CGT — 並行性 — 指示された終了、35
CGX — 同時データアクセス、36
CJM—文字列終端、12
CLL — Switch ステートメントと静的分析、20
編集単位、2
構成プラグマ、2, 6
制御型、2
CSJ — パラメータと戻り値の受け渡し、22
DCM — スタック フレームへのダングリング リファレンス、22
デッドストア、2
デフォルト式、2
ディスクリートタイプ、2
判別式、2, 34
DJS — 言語間通話、29
エンディアン、3
列挙表現節、3
列挙型、3, 4
EOJ—制御フローの境界、21
誤った実行、3
EWD — 非構造化プログラミング、22
EWF — 未定義の動作、33
例外、3, 4, 5, 6, 9, 10, 12, 13, 17, 18, 21, 24, 29, 30, 31, 32, 34, 35, 36, 37
Constraint_Error, 4, 5, 13, 14, 20, 34
Program_Error 、4, 5, 32
ストレージ_エラー、 4, 24
Tasking_Error, 4, 35
例外情報、34
拡張名、3
明示的な変換、5, 9
FAB — 実装定義の動作、34
FIF — 算術ラップアラウンド エラー、14
固定小数点型、3
FLC — 数値変換エラー、11
GDL - 再帰、24
ジェネリック・フォーマル・サブプログラム、3
HCB — バッファ境界違反 (バッファ オーバーフロー)、12
HFC — ポインター型変換、13
隠蔽、3, 4, 37
すべての可視性から隠されている、4
直接見えないように隠し、4
HJW — ライブラリルーチンからの予期しない例外、30
同形異義語、3
冪等の動作、3
識別子、3
識別子の長さ、15
IHN型システム 9
実装定義、3, 5
暗黙の変換、5, 9
国際文字セット、15
JCW — 演算子の優先順位/評価順序、18
ジャンクの初期化、18
KOA - 間違っている可能性が高い表現、19
言語の概念、4, 12, 13, 14, 15, 20, 21, 26, 28, 30, 37
言語の脆弱性
ライブラリ関数への引数の受け渡し [TRJ], 27, 28, 29
算術ラップアラウンド エラー [FIF], 14
ビット表現 [STR], 10
バッファ境界違反 (バッファ オーバーフロー) [HCB], 12
明確な名前の選択[NAI], 15
同時実行性 - アクティベーション [CGA], 35
同時実行性 - 直接終了 [CGT], 35
並行性 — 早期終了 [CGS], 36
同時データ アクセス [CGX], 36
ヒープへのダングリング参照 [XYK], 14
スタック フレームへのダングリング参照 [DCM], 22
デッドおよび非アクティブ化されたコード [XYQ], 20
デッドストア[WXQ], 16
制御フローの境界 [EOJ], 21
非推奨の言語機能 [MEM], 35
動的にリンクされたコードと自己修正コード [NYY], 30
列挙子の問題[CCB], 11
追加の組み込み関数 [LRM], 29
浮動小数点演算 [PLF], 10
識別子名の再利用 [YOW], 16
無視されたエラー ステータスと未処理の例外 [OYB], 24
実装定義の動作[FAB], 34
継承[RIP], 27
変数の初期化[LAV], 17
言語間通話[DJS], 29
ライブラリ署名 [NSQ], 30
間違っている可能性が高い表現 [KOA], 19
ループ制御変数 [TEX], 21
メモリ リーク [XYL], 26
名前空間の問題[BJL], 17
数値変換エラー [FLC], 11
あいまいな言語機能 [BRS], 32
1 エラーでオフ [XZH], 21
演算子の優先順位/評価の順序 [JCW], 18
パラメータと戻り値を渡す[CSJ], 22
ポインタ演算[RVG], 13
ポインター型変換 [HFC], 13
プロトコル ロック エラー [CGM], 36
本質的に危険な操作の提供 [SKL], 31
再帰[GDL], 24
外部フォーマット文字列への依存[SHL], 37
副作用と評価の順序[SAM], 18
文字列終端 [CJM], 12
サブプログラム署名の不一致 [OTR], 23
言語定義のランタイム チェックの抑制 [MXB], 31
Switch ステートメントと静的解析 [CLL], 20
テンプレートとジェネリック [SYM], 26
型システム[HIM], 9
データの型破壊再解釈[AMV], 25
ライブラリ ルーチンからの予期しない例外 [HJW], 30
チェックされていない配列インデックス [XYZ], 12
未定義の動作 [EWF], 33
未指定の動作 [BQF], 32
非構造化プログラミング [EWD], 22
未使用変数 [YZS], 16
乗算と除算のためのシフト操作の使用 [PIK], 15
言語の脆弱性未チェックの配列コピー [XYW], 13
LAV—変数の初期化、17
LRM - エクストラ組み込み関数、29
MEM — 非推奨の言語機能、35
混合ケーシング、15
モジュラータイプ 3
MXB — 言語定義の実行時チェックの抑制、31
NAI — 明確な名前の選択、15
NSQ - ライブラリ署名、30
NYY — 動的にリンクされたコードと自己修正コード、30
廃止された機能、3
操作属性と表現属性、3, 5
OTR — サブプログラム署名の不一致、23
優先指標、3
OYB — 無視されたエラー ステータスと未処理の例外、24
パーティション、3
PIK — 乗算と除算にシフト演算を使用する、15
PLF — 浮動小数点演算、10
ポインター、4, 17
多相変数、5
事後条件、29
プラグマ、4, 31
構成プラグマ、2
プラグマ アトミック、5, 36
pragma Atomic_Components, 5, 36
プラグマ規約、5, 24, 30
pragma Default_Storage_Pool 、7
プラグマ Detect_Blocking, 5
プラグマ Discard_Names, 6
プラグマ エクスポート、6, 24, 30
実用的なインポート、6, 24, 25, 30
プラグマ Normalize_Scalars, 6, 17, 18
プラグマパック、6
プラグマ制限、6, 7, 31, 32, 35, 37
プラグマ抑制、6, 7, 13, 31, 33
プラグマ未チェック共用体、6
プラグマ揮発性、6, 36
pragma Volatile_Components, 6, 36
前提条件、29
プログラム検証、29
範囲チェック、4
レコード表現条項、4
RIP—継承、27
RVG — ポインター演算、13
SAM — 副作用と評価の順序、18
スカラー型、4
別編・6
SHL — 外部フォーマット文字列への依存, 37
単数形・複数形 15
SKL — 本質的に危険な操作の提供、31
静的表現、4
保管場所の属性、4
ストレージ プール、2, 4, 6, 7, 26
ストレージ・サブプール、4, 6, 26
STR — ビット表現、10
サブタイプ宣言、4
SYM — テンプレートとジェネリック、26
記号と規則、1
タスク、4, 36
用語と定義、1
TEX — ループ制御変数、21
TRJ — ライブラリ関数への引数の受け渡し、27, 28, 29
型変換、4, 5, 13
型不変量、29
未確認の変換、5, 9
Unchecked_Conversion 、5, 7, 10, 25, 31, 33
アンダースコアとピリオド、15
安全でないプログラミング、7, 11, 12, 13, 14, 15, 20, 21, 26, 28, 30, 31, 37
未使用の変数、4
ユーザー定義の浮動小数点型、7
ユーザー定義のスカラー型、7
揮発性、4, 16, 36
WXQ - デッド ストア、16
XYK — ヒープへのダングリング参照、14
XYL — メモリ リーク、26
XYQ — デッドおよび非アクティブ化されたコード、20
XYW - チェックされていない配列のコピー、13
XYZ - チェックされていない配列インデックス、12
XZH — オフ バイ ワン エラー、21
YOW — 識別子名の再利用、16
YZS — 未使用の変数、16
Index
Abnormal representation, 1
abort , 19, 33, 35, 36
Access object, 1
Access type, 2
Access value, 2
Access-to-subprogram, 1
Allocator, 2
AMV — Type-breaking Reinterpretation of Data, 25
Aspect specification, 2
Atomic, 2, 4, 33, 36
Attribute, 2
'Access, 22, 23
'Address, 22, 23, 37
'Alignment, 5
'Component_Size, 5
'Exponent, 11
'First, 21, 22, 34
'Image, 20
'Last, 22, 34
'Length, 21, 22
'Range, 22
'Size, 5
'Unchecked_Access , 7, 23, 31
‘Valid, 30
‘Access, 13, 23
‘Callable, 35, 36
‘Terminated, 35, 36
‘Valid, 10, 18
‘Valid, 17
Bit ordering, 2, 3
BJL — Namespace Issues, 17
Bounded Error, 2
BQF — Unspecified Behaviour, 32
BRS — Obscure Language Features, 32
Case choices, 2
Case expression, 2
Case statement, 2, 11, 20
CCB — Enumerator Issues, 11
CGA — Concurrency — Activation, 35
CGM — Protocol Lock Errors, 36
CGS — Concurrency — Premature Termination, 36
CGT — Concurrency — Directed termination, 35
CGX — Concurrent Data Access, 36
CJM — String Termination, 12
CLL — Switch Statements and Static Analysis, 20
Compilation unit, 2
Configuration pragma, 2, 6
Controlled type, 2
CSJ — Passing Parameters and Return Values, 22
DCM — Dangling References to Stack Frames, 22
Dead store, 2
Default expression, 2
Discrete type, 2
Discriminant, 2, 34
DJS — Inter-language Calling, 29
Endianness, 3
Enumeration Representation Clause, 3
Enumeration type, 3, 4
EOJ — Demarcation of Control Flow, 21
Erroneous execution, 3
EWD — Unstructured Programming, 22
EWF — Undefined Behaviour, 33
Exception, 3, 4, 5, 6, 9, 10, 12, 13, 17, 18, 21, 24, 29, 30, 31, 32, 34, 35, 36, 37
Constraint_Error, 4, 5, 13, 14, 20, 34
Program_Error, 4, 5, 32
Storage_Error, 4, 24
Tasking_Error, 4, 35
Exception Information, 34
Expanded name, 3
Explicit conversions, 5, 9
FAB — Implementation-Defined Behaviour, 34
FIF — Arithmetic Wrap-around Error, 14
Fixed-point types, 3
FLC — Numeric Conversion Errors, 11
GDL — Recursion, 24
Generic formal subprogram, 3
HCB — Buffer Boundary Violation (Buffer Overflow), 12
HFC — Pointer Type Conversions, 13
Hiding, 3, 4, 37
hidden from all visibility, 4
hidden from direct visibility, 4
HJW — Unanticipated Exceptions from Library Routines, 30
Homograph, 3
Idempotent behaviour, 3
Identifier, 3
Identifier length, 15
IHN–Type System, 9
Implementation defined, 3, 5
Implicit conversions, 5, 9
International character sets, 15
JCW — Operator Precedence/Order of Evaluation, 18
Junk initialization, 18
KOA — Likely Incorrect Expression, 19
Language concepts, 4, 12, 13, 14, 15, 20, 21, 26, 28, 30, 37
Language Vulnerabilities
Argument Passing to Library Functions [TRJ], 27, 28, 29
Arithmetic Wrap-around Error [FIF], 14
Bit Representation [STR], 10
Buffer Boundary Violation (Buffer Overflow) [HCB], 12
Choice of Clear Names [NAI], 15
Concurrency — Activation [CGA], 35
Concurrency — Directed termination [CGT], 35
Concurrency — Premature Termination [CGS], 36
Concurrent Data Access [CGX], 36
Dangling Reference to Heap [XYK], 14
Dangling References to Stack Frames [DCM], 22
Dead and Deactivated Code [XYQ], 20
Dead store [WXQ], 16
Demarcation of Control Flow [EOJ], 21
Deprecated Language Features [MEM], 35
Dynamically-linked Code and Self-modifying Code [NYY], 30
Enumerator Issues [CCB], 11
Extra Intrinsics [LRM], 29
Floating-point Arithmetic [PLF], 10
Identifier Name Reuse [YOW], 16
Ignored Error Status and Unhandled Exceptions [OYB], 24
Implementation-Defined Behaviour [FAB], 34
Inheritance [RIP], 27
Initialization of Variables [LAV], 17
Inter-language Calling [DJS], 29
Library Signature [NSQ], 30
Likely Incorrect Expression [KOA], 19
Loop Control Variables [TEX], 21
Memory Leak [XYL], 26
Namespace Issues [BJL], 17
Numeric Conversion Errors [FLC], 11
Obscure Language Features [BRS], 32
Off-by-one Error [XZH], 21
Operator Precedence/Order of Evaluation [JCW], 18
Passing Parameters and Return Values [CSJ], 22
Pointer Arithmetic [RVG], 13
Pointer Type Conversions [HFC], 13
Protocol Lock Errors [CGM], 36
Provision of Inherently Unsafe Operations [SKL], 31
Recursion [GDL], 24
Reliance on external format strings [SHL], 37
Side-effects and Order of Evaluation [SAM], 18
String Termination [CJM], 12
Subprogram Signature Mismatch [OTR], 23
Suppression of Language-defined Run-time Checking [MXB], 31
Switch Statements and Static Analysis [CLL], 20
Templates and Generics [SYM], 26
Type System [IHN], 9
Type-breaking Reinterpretation of Data [AMV], 25
Unanticipated Exceptions from Library Routines [HJW], 30
Unchecked Array Indexing [XYZ], 12
Undefined Behaviour [EWF], 33
Unspecified Behaviour [BQF], 32
Unstructured Programming [EWD], 22
Unused Variable [YZS], 16
Using Shift Operations for Multiplication and Division [PIK], 15
Language Vulnerability Unchecked Array Copying [XYW], 13
LAV — Initialization of Variables, 17
LRM — Extra Intrinsics, 29
MEM — Deprecated Language Features, 35
Mixed casing, 15
Modular type, 3
MXB — Suppression of Language-defined Run-time Checking, 31
NAI — Choice of Clear Names, 15
NSQ — Library Signature, 30
NYY — Dynamically-linked Code and Self-modifying Code, 30
Obsolescent features, 3
Operational and Representation Attributes, 3, 5
OTR — Subprogram Signature Mismatch, 23
Overriding indicators, 3
OYB — Ignored Error Status and Unhandled Exceptions, 24
Partition, 3
PIK — Using Shift Operations for Multiplication and Division, 15
PLF — Floating-point Arithmetic, 10
Pointer, 4, 17
Polymorphic Variable, 5
Postconditions, 29
Pragma, 4, 31
Configuration pragma, 2
pragma Atomic, 5, 36
pragma Atomic_Components, 5, 36
pragma Convention, 5, 24, 30
pragma Default_Storage_Pool , 7
pragma Detect_Blocking, 5
pragma Discard_Names, 6
pragma Export, 6, 24, 30
pragma Import, 6, 24, 25, 30
pragma Normalize_Scalars, 6, 17, 18
pragma Pack , 6
pragma Restrictions, 6, 7, 31, 32, 35, 37
pragma Suppress, 6, 7, 13, 31, 33
pragma Unchecked Union, 6
pragma Volatile, 6, 36
pragma Volatile_Components, 6, 36
Preconditions, 29
Program verification, 29
Range check, 4
Record Representation Clauses, 4
RIP — Inheritance, 27
RVG — Pointer Arithmetic, 13
SAM — Side-effects and Order of Evaluation, 18
Scalar type, 4
Separate Compilation, 6
SHL — Reliance on external format strings, 37
Singular/plural forms, 15
SKL — Provision of Inherently Unsafe Operations, 31
Static expressions, 4
Storage Place Attributes, 4
Storage pool, 2, 4, 6, 7, 26
Storage subpool, 4, 6, 26
STR — Bit Representation, 10
Subtype declaration, 4
SYM — Templates and Generics, 26
Symbols and conventions, 1
Task, 4, 36
Terms and definitions, 1
TEX — Loop Control Variables, 21
TRJ — Argument Passing to Library Functions, 27, 28, 29
Type conversion, 4, 5, 13
Type invariants, 29
Unchecked conversions, 5, 9
Unchecked_Conversion, 5, 7, 10, 25, 31, 33
Underscores and periods, 15
Unsafe Programming, 7, 11, 12, 13, 14, 15, 20, 21, 26, 28, 30, 31, 37
Unused variable, 4
User-defined floating-point types, 7
User-defined scalar types, 7
Volatile, 4, 16, 36
WXQ — Dead store, 16
XYK — Dangling Reference to Heap, 14
XYL — Memory Leak, 26
XYQ — Dead and Deactivated Code, 20
XYW — Unchecked Array Copying, 13
XYZ — Unchecked Array Indexing, 12
XZH — Off-by-one Error, 21
YOW — Identifier Name Reuse, 16
YZS — Unused Variable, 16