DPCT1052#

Message#

SYCL does not support the member access for a volatile qualified vector type. The volatile qualifier was removed. You may need to rewrite the code.

Detailed Help#

The SYCL* specification does not provide a volatile qualified version of member access for vector type.

Suggestions to Fix#

Review the code and adjust it.

For example, this original CUDA* code:

1struct Complex : cuFloatComplex {
2  float real() const volatile {
3    return x;
4  }
5};

results in the following migrated SYCL code:

 1struct Complex : sycl::float2 {
 2  float real() const volatile {
 3    /*
 4    DPCT1052:0: SYCL does not support the member access for a volatile qualified
 5    vector type. The volatile qualifier was removed. You may need to rewrite the
 6    code.
 7    */
 8    return const_cast<struct Complex *>(this)->x();
 9  }
10};

which is rewritten to:

1struct Complex : sycl::float2 {
2  float real() const volatile {
3    return const_cast<struct Complex *>(this)->x();
4  }
5};

Visit the Migrating to SYCL forum for additional help.