Hacker News new | ask | show | jobs
by steerablesafe 1588 days ago
MSVC might not alter layout, but public and private member functions have different name mangling:

https://godbolt.org/z/ddqd3vr5x

Notice the call to `?foo@A@@AEAAXXZ` in one compilation and `?foo@A@@QEAAXXZ` in the other, supposedly to the same function. You might get fun linker errors this way, possibly nothing nastier though.

1 comments

Yeah, I'm aware of that. I've had to edit mangled names a few times too many - transferring between idbs and changing const char * to char * (PBD to PAD I think? thankfully I'm already not sure anymore), for example. Or changing __int64 to int ...

Luckily I don't need to link anything, so I don't care about that for now.