<コンパイル・オプション / ソースオプション>
-misra2012= { all | apply=<ルール番号>[,...] | ignore=<ルール番号>[,...] | required | required_add=<ルール番号>[,...] | required_remove=<ルール番号>[,...] | <ファイル名>} |
misra2012=required_add=<ルール番号>[,<ルール番号>,...]オプション指定時は、サポートしているルールのうち、ルールの分類が“mandatory”および“required”になっているルールと指定されたルール番号をチェック対象とします。 |
misra2012=required_remove=<ルール番号>[,<ルール番号>,...]オプション指定時は、サポートしているルールのうち、ルールの分類が“required”になっているルールから指定されたルール番号を除いたルール番号をチェック対象とします。 |
misra2012 =<ファイル名>オプション指定時は、サポートしているルールのうち、指定されたファイル名に記載されたルール番号をチェック対象とします。ファイル名で指定されたファイル内の記述は、1ルールを1行で記述します。 |
-misra2012=required_add=4.1 -misra2012=apply=4.2
ignore, apply, required_addの3種類の-misra2012が同時に指定されていますが、最後に連続して指定した2つのapplyの指定のみが有効になります。その結果、ルール4.2と5.2がチェック対象になります。
misra2012=<ファイル名>で指定したルールファイルがオープンできない場合、エラーF0523029となります。また、ルールファイルからルール番号が取り出せない場合は、エラーF0523030となり、いずれの場合もそこで処理を中止します。 |
5.1*2 5.2 5.3 5.4 5.5 5.6*2 5.7*2 5.8*2 5.9*2
8.1 8.2 8.3*2 8.4 8.5*3 8.6*3 8.8 8.9 8.11 8.12 8.13 8.14
10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8
11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9
15.1 15.2 15.3 15.4 15.5 15.6 15.7
16.1 16.2 16.3 16.4 16.5 16.6 16.7
17.1 17.3 17.4 17.5 17.6 17.7 17.8
20.1 20.2 20.3 20.4 20.5 20.6 20.7 20.8 20.9 20.10 20.11 20.12 20.13 20.14
21.1 21.2 21.3 21.4 21.5 21.6 21.7 21.8*1 21.9 21.10 21.11 21.12 21.13 21.15 21.16
(*1) MISRA C:2012 Amendment 1に沿ってチェックします(getenvをチェックしません)。
(*2) オプション-misra_intermoduleを指定した場合、複数ファイルにまたがった解析が可能になります。
(*3) オプション-misra_intermoduleを指定した場合だけ有効になります。
次の例では、ignore, apply, required_addの3種類の-misra2012が同時に指定されていますが、最後に連続して指定した2つのapplyの指定のみが有効になります。その結果、ルール4.2と5.2がチェック対象になります。 |