decltype
as a nested-name-specifier was added into C++11 at a relatively late stage; n3049 as the resolution to DR 743 (and DR 950). n3049 was published in March 2010, which is probably why it hasn't found its way into VC++ yet.
The workaround is to use the identity typefunction:
template<typename T> using id = T;
id<decltype(expression)>::member;