Compiler Error C3540


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 C3540.

type': sizeof cannot be applied to a type that contains 'auto'

The sizeof operator cannot be applied to the indicated type because it contains the auto specifier.

The following example yields C3540.

// C3540.cpp  
// Compile with /Zc:auto  
int main() {  
    auto x = 123;  
    sizeof(x);    // OK  
    sizeof(auto); // C3540  
    return 0;  

auto Keyword
/Zc:auto (Deduce Variable Type)
sizeof Operator