lcStr1 = "John" lcStr2 = "John " SET EXACT ON ? lcStr1 = lcStr2 && Returns .T. SET EXACT OFF ? lcStr1 == lcStr2 && Returns .F.This is because == compares the left to the right one char at a time and when the right is exhausted it checks the legnth of the two strings for a match. SET EXACT ON first pads the shorter string with spaces and then compares each char one by one, so if the only difference between the two strings is trailing spaces then SET EXACT ON does NOT guarantee an exact comparison.