It seems to work for me. Can you please try with the following code snippets?
class SCEObject
{
int a;
};
void ffffffff()
{
#define SCENewTmpInstance2(x, y) auto __tmpobj_##x##_##y = x(); auto y = &__tmpobj_##x##_##y;
SCENewTmpInstance2(SCEObject, tmp1);
tmp1.
}
Does this simplified example works for you?