Problem compiling in emulation mode

For the university, I’m developing a small CUDA program under Windows using Visual C++ express.

At the university, where we have access to NVidia hardware, I can properly compile my project and run it.

However, at home I just have a laptop with an integrated intel graphic card or a 9 years old desktop which of course has a completely outdated graphic card.

Therefore, to be able to continue programming and testing I’m trying to use the emulation mode. And most of the time I get stuck by this compilation error (which is non blocking when not using emulation):

domainModel.h(38) : error C2622: member ‘__cuda_emu::SuperChar::cuda’ of union ‘__cuda_emu::SuperChar’ has assignment operator

Here are the lines around line 38:

29  // Definition of the "category" data type just to simplify manipulation

30  typedef uchar4 CudaSuperString[CATEGORY_STR_SIZE]; // CATEGORY_STR_SIZE (a macro) is a 64 elements table


32  // As I want to use standard strn* C functions, I'm creating a similar structure but with normal 'char'

33  typedef char   PosixSuperString[CATEGORY_STR_SIZE * sizeof(uchar4)];


35  // Now I make a union of those 2 types so that I can easily use either ones.

36  union SuperChar

37  {

38	  CudaSuperString  cuda;

39	  PosixSuperString posix;

40  };

So this code is working in release mode, but not in emulation mode. And I do not make sens of the error message.

Side note: once it did compile in emulation mode. I just wanting to get some help of a friend, I just compile the code and to my surprised it worked!! Now my friend is gone, and the code is again not compiling :-(