libmangle: Libmangle

# Libmangle

###

Revision
  2283

Author:
  The mingw-w64 Dev Team

Version:
  1.0

## Introduction

Libmangle is library for translating C++ symbols produced by Microsoft Visual Studio C++ suite of tools into human readable names.

### Name Mangling

Name mangling is a technique used by modern compilers to add addition information about a function, a structure or a datatype to a symbol name. Information can include call parameter type and return type, symbol namespace and etc. Often, the way the information is encoded in specific to a compiler vendor.

### C++ and Name Mangling

Languages such as the C++ language do not define a standard name decoration scheme, most often code produced by one compiler is also incompatible with another C++ compiler ABI wise. Name mangling prevents accidentally linking to code meant for another compiler.

### Deciphering Mangled Names

Libmangle allows symbol names on objects created by Microsoft Visual C++ tools to be decoded into human readable names. In addition to easing debugging, it also allows the possibility of non-MSVC tools to examine the objects.

### External Links

For more information, see: http://en.wikipedia.org/wiki/Name_mangling

## Installation

Use the shell script "configure" and pass "--help" for library build and install options.