EN JP CN

CWARN.PASSBYVALUE.ARG

CWARN.PASSBYVALUE.ARG

値によって渡された関数の引数が大きすぎます

CWARN.PASSBYVALUE.ARG チェッカーは、値によって渡された関数の引数が大きすぎるインスタンスを検出します。

脆弱性とリスク

値によって渡すことは必ずしもエラーではありませんが、コピーされるデータ量のためパフォーマンスが低下する可能性があります。

脆弱コード例

1  struct strcture{
2    int x[20];
3    char y[100];
4    int z[20];
5  };
6  
7  void foo(strcture arg) 
8  {}

Klocwork 引数 arg が大きすぎる 7 行目にフラグを立てます。

関連チェッカー