Comment on UndefinedBehaviorSanitizer's Unexpected BehaviorparentComments−ctz1yI believe AIX C++ name mangling includes function argument type information (with CV qualifiers!) so this is a real-world case where this does actually break. I suspect curl does not compile with the C++ compiler though.−School-Cotton1ySo does the Itanium ABI (which is what most people would think of as the normal/standard/usual C++ ABI): $ c++filt _Z1fPFvPcE f(void (*)(char*)) But I'm struggling to understand how this would cause things to break.−flohofwoe1yI guess only if you directly expose C++ APIs in DLLs, which is a bad idea anyway.
Comments
I believe AIX C++ name mangling includes function argument type information (with CV qualifiers!) so this is a real-world case where this does actually break. I suspect curl does not compile with the C++ compiler though.
So does the Itanium ABI (which is what most people would think of as the normal/standard/usual C++ ABI):
But I'm struggling to understand how this would cause things to break.I guess only if you directly expose C++ APIs in DLLs, which is a bad idea anyway.