We recommend using Visual Studio 2017

Compiler Error C2870


The latest version of this topic can be found at Compiler Error C2870.

name' : a namespace definition must appear either at file scope or immediately within another namespace definition

You defined namespace name incorrectly. Namespaces must be defined at file scope (outside all blocks and classes) or immediately within another namespace.

The following sample generates C2870:

// C2870.cpp  
// compile with: /c  
int main() {  
   namespace A { int i; };   // C2870