Compiler Error C2480


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

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

identifier' : 'thread' is only valid for data items of static extent

You cannot use the thread attribute with an automatic variable, nonstatic data member, function parameter, or on function declarations or definitions.

Use the thread attribute for global variables, static data members, and local static variables only.

The following sample generates C2480:

// C2480.cpp  
// compile with: /c  
__declspec( thread ) void func();   // C2480  
__declspec( thread ) static int i;   // OK