Error: Unaligned memory accesses not supported

Hi,
i have a compiling error i do not understand. Can somebody explain it to me?

set_bit is a large number.

Compiling this code gives me this error in line 6
Error: Unaligned memory accesses not supported

1 long long set = (long long)(1) << (set_bit % 64) ;
2 unsigned int ll = int(set_bit >> 6 );
3
4 if (!(sb[ll] & set )) {
5 set_child = true;
6 sb[ll] |= set ;
7 }

Compiling this works:
1 long long set = (long long)(1) << (set_bit % 64) ;
2 unsigned int ll = int(set_bit >> 6 );
3
4 if (!(sb[ll] & set )) {
5 set_child = true;
6 }
7 sb[ll] |= set ;

please help me,

Damian

Hi,
since no one could help me, here is what i found out so far.
The sb array’s type is long long to make it 64 bit integers. When i changed it to uint2 (which also is 64 bit) i can make random access
to the array, and everything works fine. I only have to cast it when i need a 64 bit integer out of it.
So access is like this: *(long long *) &sb[i]

Greetings,

Damian