Pointer to __global stored in a __local variable

I have pointers to data that resides in the global memory space and I would like to store them in a local variable. Something like:

__local __global uint *ptr;

does not work. Is there any way to do this?

Maybe using casts?

__local uint actuallyAPointer;

__global uint *ptr = <a pointer to global memory>;

actuallyAPointer = (uint)ptr;

Not sure about sizes for these types and portability, and haven’t tested it either so it may not even compile.

Maybe using casts?

__local uint actuallyAPointer;

__global uint *ptr = <a pointer to global memory>;

actuallyAPointer = (uint)ptr;

Not sure about sizes for these types and portability, and haven’t tested it either so it may not even compile.