エラー
--strict_warnings
が有効になっており、関連する ISO 標準規格の違反が発生した場合は、通常、コンパイラによって警告メッセージが生成されます。
診断メッセージの重大度は、--diag_error
、--diag_remark
、および --diag_warning
の各オプションを使用することで、制御できます。
注
場合によっては、厳密には不正な違反が検出され、コンパイルが終了したとき、警告の代わりにエラーが生成される場合もあります。以下に例を示します。
#ifdef $Super$
extern void $Super$$__aeabi_idiv0(void); /* intercept __aeabi_idiv0 */
#endif
--strict_warnings
を使用してこのコードをコンパイルすると、--dollar
オプションを使用しなかった場合に、エラーが生成されます。
例
void foo(void)
{
long long i; /* okay in nonstrict C90 */
}
--strict_warnings
を使用してこのコードをコンパイルすると、警告メッセージが生成されます。
式
long long
が厳密には不正な場合でも、コンパイルは継続します。