we have a big static library written in C (not cpp), that contains functions defined like so:

```
StructThing* __cdecl DoSomething(); // in header
StructThing* __cdecl DoSomething() { ... } // in .C file

```

Everything works ok using it in our C based products, but we've started to move over to this new thing called c++!

But when we try and use DoSomething in a cpp file we get unresolved external symbol errors at link time.

It appears the cpp compiler is looking for decorated versions of the functions.

How can we make the symbols(functions) available to the cpp compiler? preferably without changing the source lib (too much), my first thought was through a .def file but it appears to be ignored by the static library solution (not sure if there're applicable on that sort of vs project)

But this should be easy, I would assume the Windows API is written a bit like this.

anyone ?

VS 2012 update 3

TIA