Skip to main content

IAR Embedded Workbench for Arm 10.10.x

switch 文における未処理のケースの検出

このセクションの内容:
説明

デフォルトのラベルを持たない switch 文に、足りない case ラベルがないかチェックします。

チェックを実行する理由

このチェックは、たとえば enum 型にまだ switch 文で処理されていない新しい値が追加されている場合などに便利です。

使用方法

コンパイラオプション :‑‑runtime_checking switch

IDE で、 [プロジェクト]>[オプション]>[ランタイム解析]>[Switch]

1 つまたは複数のモジュールにチェックを適用できます。

このチェックは、default ラベルを追加すると回避できます。

仕組み

コンパイラは、default ラベルを持たない各 switch 文について、チェックを実行する暗黙的な default ラベルを挿入します。

C-RUNランタイムエラー解析を使用するにあたってに記載された手順に従ってください。[Switch] オプションを使用します。

これは、実行時に識別されるソースコードの一例です。

CRUN_UnhandledCaseInSwitch_src_Qt_01.png

C-RUN は switch 文における未処理のケースを報告します。これは、リストされるメッセージの一例です。

CRUN_UnhandledCaseInSwitch_msg_Qt_01.png