AUTOSAR C++14 Rule M5-0-5
There shall be no implicit floating-integral conversions.
説明
ルール定義
There shall be no implicit floating-integral conversions.
根拠
浮動小数点型を整数型に変換すると、情報が失われます。浮動小数点型から整数型に明示的にキャストしている場合を除き、情報の喪失が意図的かどうかが明確ではありません。また、浮動小数点値が整数型で表現できない場合、その動作は未定義になります。
整数型から浮動小数点型への変換により、値の不正確な表現が発生する可能性があります。変換の誤差が以降の演算で累積し、予期しない結果につながる可能性があります。
Polyspace 実装
チェッカーは、浮動小数点型 (float および double) と整数型 (short、int など) の間の暗黙的な変換にフラグを設定します。
M5-0-4 および M5-0-6 が同時に適用される場合、このルールが優先されます。
トラブルシューティング
ルール違反が想定されるものの、Polyspace® から報告されない場合は、コーディング規約違反が想定どおりに表示されない理由の診断を参照してください。
例
チェック情報
| グループ: 式 |
| カテゴリ: Required、Automated |
バージョン履歴
R2019a で導入