Addresses issues raised on #947. Refs #800.

* Uses errGenerated instead of deprecated extending of enums.
* Reduces bloat and usefulness of end user error messages.
* Limits checks to C, Cpp and Objc targets.