We use a fairly typical templated singleton pattern which is used as in the following example:
class CNetworkManager: public iicore::TSingleton<CNetworkManager>
For code brevity (and the sanity of old-school developers ;) ) we have convenience macros for many of these singletons eg:
#define g_rNetworkManager iinetwork::CNetworkManager::GetInstance()
We use this quite extensively and we keep running into the problem that VAX's code suggestions don't work with it at all. For example, if I entered g_rNetworkManager.
no suggestions are offered, and even hitting ctrl+space doesn't bring them up.
A little testing indicates that VAX apparently cant handle a macro which returns an object from a member (or static) function and offer suggestions based on that.
The following basic example illustrates the problem:
class CMemberObj
{
public:
int m_iValue;
};
class COwner
{
public:
CMemberObj& GetMember();
};
COwner cOwner;
#define MACROTEST cOwner.GetMember()
Now entering MACROTEST.
does not result in any suggestions (I would expect m_iValue to be suggested). Is there a way to change this behavior, or is this a bug?