template<int* T> class B
{};

B<0> b1;
B<reinterpret_cast<int*>(-1)> b2; // error C2964

としたらエラーになりました。謎が深まりました。