Controls language extensions to ISO C++.
#pragma cpp_extensions on | off | reset
If you enable this pragma, you can use the following extensions to the ANSI C++ standard that would otherwise be illegal:
#pragma cpp_extensions on
void foo()
{
union {
long hilo;
struct { short hi, lo; }; // anonymous struct
};
hi=0x1234;
lo=0x5678; // hilo==0x12345678
}
#pragma cpp_extensions on
struct Foo { void f(); }
void Foo::f()
{
void (Foo::*ptmf1)() = &Foo::f; // ALWAYS OKvoid (Foo::*ptmf2)() = f; // OK if you enable cpp_extensions.
}
This pragma does not correspond to any setting . To check this setting, use the __option (cpp_extensions). This pragma is on if generating Win32/x86-compatible object code; off if not.