Compiler Error C2907

explicit specialization; 'declaration' is not a member of a class template

This error is caused by an attempt at explicit specialization of a static data member of a non-template class. For example:

class X {
   static int data;
};

template<> int X::data=0;

The above code will generate this error.