Is it valid C++ for a static class member to be instantiated with a value in more than one module? template <class Z> int Y<Z>::m = 1; Thanks, David