The correct way you would return the mangle for C, Pascal, stdcall (if needed) would be to leave it to the backend to do.  This is the point of the Target structure afterall... to get *information* from the back-end whilst the front-end is still running it's analysis/semantic pass, and not to use it to carry out target-specific tasks in the front-end.

eg:
```
extern (Pascal) void foo();
pragma (msg, foo.mangleof);
```
Finds its way to a hook like:
```
char *Target::mangle (const char *name, char link);
```
Where there is a backend function that returns a mangled symbol for NAME depending on its linkage for C, Pascal or Stdcall.