OpenCL and pointer arithmetics for buffers

Hello,

when using CUDA, cudaMalloc just returned a void* that I could modify to point to other areas of device memory.

OpenCL now returns a cl_mem object, which doesn’t seem to like modifications. If cl_mem is changed, functions fail with CL_INVALID_MEM_OBJECT.

Is there anything I’ve missed, or was this feature dropped in OpenCL?

Thanks,

Nils