Lets take this code sample
//header struct A { }; struct B { }; struct C { }; extern C c; //code A myfunc(B&b){ A a; return a; } void myfunc(B&b, C&
http://en.wikipedia.org/wiki/Name_mangling