メインコンテンツにスキップ

control_flow_in_finally

finally句で「{0}」を使用しています。

説明

#

returnbreak、またはcontinueステートメントがfinally句に含まれている場合、アナライザはこの診断を生成します。

#

以下のコードは、finallyブロック内にreturnステートメントがあるため、この診断を生成します。

dart
int f() {
  try {
    return 1;
  } catch (e) {
    print(e);
  } finally {
    return 0;
  }
}

一般的な修正

#

ステートメントが不要な場合は、ステートメントを削除し、ブロックが空の場合はfinally句を削除してください。

dart
int f() {
  try {
    return 1;
  } catch (e) {
    print(e);
  }
}

ステートメントが必要な場合は、ステートメントをfinallyブロックの外に移動してください。

dart
int f() {
  try {
    return 1;
  } catch (e) {
    print(e);
  }
  return 0;
}