In gcc I am writting friend class FriendMaker<T>::Type but Visual Studio wants friend FriendMaker<T>::Type. So I think it is time to go compiler specific.
So What I need to ifdef for Visual Studio ? I am using 2010 at the moment but I may switch to 2012 latter.