It failed for me just a couple of days ago... Thinks what I was doing... It was LPMEASUREITEMSTRUCT, which is a typedef for a pointer. It still offered me the correct suggestions after dot, but didn't change the dot to an arrow.
Experimentation shows that the following fails:typedef struct foo
{
int n;
} *LPFOO;
LPFOO lpMyFoo;
lpMyFoo.
Separating out the definition of the struct and the typedef doesn't help:struct bar
{
int n;
};
typedef struct bar *LPBAR; // still wrong
But if the last line is changed totypedef bar *LPBAR; // OK now
then it works. I would always write it the last way anyway, but some built-in classes don't, which is how I found the LPMEASUREITEMSTRUCT example in the first place.