Compiler Error C3531

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

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

symbol': a symbol whose type contains 'auto' must have an initializer

The specified variable does not have an initializer expression.

To correct this error

  1. Specify an initializer expression, such as a simple assignment that uses equal-sign syntax, when you declare the variable.

The following example yields C3531 because variables x1, y1, y2, y3, and z2 are not initialized.

// C3531.cpp  
// Compile with /Zc:auto  
int main()  
{  
   auto x1;                  // C3531  
   auto y1, y2, y3;          // C3531  
   auto z1 = 1, z2, z3 = -1; // C3531  
   return 0;  
}  

auto Keyword

Show: