Controls the issuing of warning messages for possible unintended logical errors.
#pragma extended_errorcheck on | off | reset
If you enable this pragma, the C++ compiler generates a warning message for the possible unintended logical errors.
It also issues a warning message when it encounters a delete operator for a class or structure that has not been defined yet. The following listing shows an example.
#pragma extended_errorcheck on struct X; int func(X *xp) { delete xp; // Warning: deleting incomplete type X }
int MyInit(void) { int err = GetMyResources(); if (err != -1) { err = GetMoreResources(); } return; /* WARNING: empty return statement */ }
The following listing shows how to prevent this warning message.
int MyInit(void) { int err = GetMyResources(); if (err != -1) { err = GetMoreResources(); } return err; /* OK */ }