I was using this code:
Code:
function nameRec()
{
	if (nameNum == 0 && myName == "Jim") {//do something;}
}



which returns this error:
machine code generator.can not translate EQ:POINTER:ARRAY:LONG.

I thought, "strange..."

I tried:
Code:
function nameRec(STRING* myName)
{
	if (nameNum == 0 && myName == "Jim") {//do something;}
}



No error, but using watch to debug, I notice that myName doesn't return a value.

Again I thought this was strange, but I wasn't about to let this slow me down, so I decided to change the string to a variable, and use numbers to represent letters.
Like myName = 100913;

It worked! I thought to myself, "I don't got brains for nothing."

So now I test this code:
Code:
randomize();
	setName = integer(random(3));
	if (setName <= 1) {myName = 100913;} //Jim
	else if (setName = 2) {myName = 190113;} //Sam
	else if (setName = 3) {myName = 020514;} //Ben



It Worked! "Cool", I thought.
So now I put in about 30 names, and set the random to 30.
Run... myName returns 0.000 every time, even though setName changes.
I reduced the number of names. Same result.

Is there a bug in this program?
Is lite-c extremely sensitive and particular?
Can someone fill me in on what is wrong with my codes please?