DPCT1073

メッセージ

パラメーター {0} のフィールド値を推測できなかったため、呼び出しは移行されませんでした。手動でこのコードを更新する必要があります。

説明

インテル® DPC++ 互換性ツールは、移行したコードで使用されている呼び出しパラメーターのフィールド値を推測できませんでした。

修正方法の提案

移行されていない呼び出しを、パラメーターの実際のフィールド値を使用した DPC++ 表現に手動で置き換えます。

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

1
2
3
4
5
6
7
8
// original code:

CUDA_ARRAY_DESCRIPTOR *desc_ptr;
CUDA_ARRAY_DESCRIPTOR desc;
desc_ptr = &desc;

Cuarray arr;
cuArrayCreate(&arr, desc_ptr)

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// migrated DPC++ code:

CUDA_ARRAY_DESCRIPTOR *desc_ptr; // line was not migrated and can be removed
size_t desc_x_ct1, desc_y_ct1;
unsigned desc_channel_num_ct1;
sycl::image_channel_type desc_channel_type_ct1;
desc_ptr = &desc; // line can be removed

dpct::image_matrix_p arr;
/* DPCT1073 warning */
cuArrayCreate(&arr, desc_ptr) // line was not migrated and needs to be replaced

このコードを以下のように手動で調整します。

1
2
3
4
5
6
7
8
// adjusted DPC++ code:

size_t desc_x_ct1, desc_y_ct1;
unsigned desc_channel_num_ct1;
sycl::image_channel_type desc_channel_type_ct1;

dpct::image_matrix_p arr;
arr = new dpct::image_matrix(desc_channel_typ_ct1, desc_channel_num_ct1, desc_x_ct1, desc_y_ct1);