Controls language extensions to ISO/IEC 14882:2003 C++.
#pragma cpp_extensions on | off | reset
If you enable this pragma, you can use the following extensions to the ISO/IEC 14882:2003 C++ standard that would otherwise be invalid:
#pragma cpp_extensions on
void func()
{
union {
long hilo;
struct { short hi, lo; }; // anonymous struct
};
hi=0x1234;
lo=0x5678; // hilo==0x12345678
}
#pragma cpp_extensions on
struct RecA { void f(); }
void RecA::f()
{
void (RecA::*ptmf1)() = &RecA::f; // ALWAYS OK
void (RecA::*ptmf2)() = f; // OK if you enable cpp_extensions.
}
By default, this pragma is disabled.