The problem appears even without the define:
enum a
{ a, b, c };
someword.|
The problem is that the member listbox is shown in this case and VAX will accept this listbox's active item if you press dot or any character not valid in the symbol. This is why this "funny" thing is happening: .a.a.a.a
case=19289
I am just curious: is there any real-world scenario where someone need to type 3 dots after a word in c++?
One dot is clear: you are using an object before you define it.