You copied the Doc URL to your clipboard.

--cpp_compat linker option

Enables the linker to check for name mangling incompatibilities in the input objects.


Newer versions of armcc implement a more up-to-date version of the Itanium C++ ABI. This means that in rare circumstances different versions of the compiler might generate different symbols for the same C++ source code because of the difference in the Itanium C++ ABI. This occurs when:

  • Different versions of C++ are used for different compilation units.
  • Different versions of the compiler, that implement different ABI versions, are used.

When the --cpp_compat option is selected the linker gives an error message if at least two distinct mangled names produce the same unmangled name.

You can also use this option with the partial linking options --partial and --ldpartial.