1.1 Implementation compliance

1.1.1 Ensure that code complies with the 2011 ISO C++ Language Standard

The current version of the C++ language is as defined by the ISO International Standard ISO/IEC 14882:2011(E) “Information technology — Programming languages — C++”.

Compilers often provide features beyond those defined in the Standard, and unrestricted  sage of such features will likely hamper code portability. To this end, source code should be routinely parsed with a separate compiler or code analysis tool apart from the compiler used for production purposes.

#include <cstdint>
void foo (int32_t i)
{
int32_t * a;

__try // @@- Non-Compliant -@@
{
a = new int32_t [i];

// ...
}
__finally // @@- Non-Compliant -@@
{
delete [] a;
}
}

References

  • HIC++ v3.3 – 1.3.1
  • HIC++ v3.3 – 6.4
  • HIC++ v3.3 – 13.3
  • Meyers Notes – Reference Binding Rules

Click here for references