C and C++


BADFUNC.FLOAT.GAMMA : gammaの使用

要旨

関数gamma()やgamma()に類似する関数は、システムによって振舞いが異なるため、標準規格から削除されました。 これらの関数の代わりにtgamma()もしくはlgamma() を使用して下さい。

プロパティ

クラス名 Use of gamma
日本語クラス名 gammaの使用
クラス分類 信頼性 (reliability)
ニーモニック BADFUNC.FLOAT.GAMMA
カテゴリー
CWE CWE:242 Use of Inherently Dangerous Function
  CWE:474 Use of Function with Inconsistent Implementations
  CWE:477 Use of Obsolete Function
CERT-C CERT-C:MSC24-C Do not use deprecated or obsolescent functions
対応言語 C および C++ で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで有効になっています。チェックを無効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += discard class="Use of gamma"

#include <math.h>

double mygamma(double d){
  return gamma(d);  /* "Use of gamma" warning issued here
}

関連のある設定ファイルパラメータ

このクラスは一般テンプレート設定ファイルで BAD_FUNCTION_* ルールセットによって実装されています。

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。