DPCT1064#

メッセージ#

移行した <function name> の呼び出しは、マクロ定義で使用されていますが、すべてのマクロの使用に対して有効ではありません。コードを調整します。

説明#

この警告は、関数呼び出しがマクロ定義で使用され、マクロ呼び出しの方法に応じて異なる方法で移行する必要がある場合に生成されます。インテル® DPC++ 互換性ツールは、マクロ呼び出しの 1 つに対して有効なコードを生成できますが、コード内でそのマクロのすべての呼び出しでは有効でない可能性があります。

以下に例を示します。pow 関数は、マクロ引数で渡されるパラメーターのタイプに応じて、sycl::pow<double> または sycl::pown に移行できます。

1 #define POW(B, E) pow(B, E) 
2 POW(2.5, 3.1); // sycl::pow<double>(2.5, 3.1) へ移行します 
3 POW(2.5, 3); // sycl::pown((float)2.5, 3) へ移行します

修正方法の提案#

移行されたコード内のマクロ呼び出しの使用例に対応する新しいマクロを宣言します。