¿Por qué no se pueden compartir las variables miembro?

Me gustaría crear una instancia de una clase en código CUDA, que comparte algunos de sus miembros con otros subprocesos en el mismo bloque.

Sin embargo, al intentar compilar el siguiente código, aparece el error: "el atributo" compartido "no se aplica aquí" (nvcc versión 4.2).

class SharedSomething {

public:
    __shared__ int i; // this is not allowed
};

__global__ void run() {

    SharedSomething something;
}

¿Cuál es la razón detrás de eso? ¿Existe una solución alternativa para lograr el comportamiento deseado (miembros compartidos de una clase en un bloque)?