DPCT1058#

メッセージ#

<API Name> はコード内で呼び出されていないため、移行されません。

詳細な説明#

この警告は、マクロ定義で API 呼び出しが使用され、そのマクロがコードで呼び出されない場合に出力されます。

修正方法の提案#

このマクロをインテル® DPC++ 互換性ツールで移行するには、移行が必要なマクロをコードで使用し、そのコードを再度ツールに渡してください。それ以外は、コードを手動で更新するか、警告を無視してください。

例えば、以下のオリジナル CUDA* コードについて考えてみます。

1  #define ATOMIC_ADD(x, v) atomicAdd(&x, v); 
2 
3  void foo() { 
4   // There is no using of ATOMIC_ADD macro 
5  }

このコードは、以下の SYCL* コードに移行されます。

1  /* 
2  DPCT1058:0: "atomicAdd" is not migrated because it is not called in the code. 
3  */ 
4  #define ATOMIC_ADD(x, v) atomicAdd(&x, v); 
5 
6  void foo() { 
7 // There is no using of ATOMIC_ADD macro 
8  }

このコードは次のように書き換えられます。

1  void foo() { 
2   // There is no using of ATOMIC_ADD macro 
3  }